라이센스 리밋 확인
A2에서는 사용자의 라이센스 등급에 따라 api limit등의 여러 제한사항을 적용합니다. Admin page에서 관리자 계정으로 로그인 한 뒤 우측 메뉴바 하단의 Settings 메뉴를 클릭하면 다음과 같이 적용된 제한 사항과 현재 사용량을 확인하실 수 있습니다. 
광고 서빙 호출시 No Content 응답 해결 가이드
Decision API에서 지면에 광고 요청을 보낼 때 No Content 응답이 오는 경우, 이는 지면의 배정 또는 설정에 문제가 있을 가능성이 있습니다. 지면에는 게재상태인 배정이 하나 이상 있어야 콘텐츠가 정상적으로 노출될 수 있습니다. 아래 단계에 따라 지면이 올바르게 설정되었는지 확인하여 No Content 응답을 방지 하세요.- Placement 메뉴에서 확인할 지면으로 이동합니다.
- 선택한 지면 페이지에서 Published 상태로 표시된 배정이 있는지 확인합니다.
온프레미스 환경에서의 트러블슈팅
온프레미스 환경에서는 직접 서버에 접근하여 문제를 진단하고 해결할 수 있습니다. 이 섹션에서는 서버에 물리적으로 접근하여 수행할 수 있는 문제 해결 방법을 중점적으로 다룹니다. 로컬 로그 분석 등을 통해 보다 빠르고 세밀한 대처가 가능합니다.Supervisord
A2에서는 프로세스를 관리하기 위해 supervisord를 사용합니다. Docker 컨테이너의 상태가Unhealthy
로 표시되는 경우 supervisord가 관리하는 프로세스에 문제가 발생했음을 의미합니다. 이 때, /opt/supervisord.log
에 기록된 로그를 통해 supervisord의 문제를 진단할 수 있습니다. 예를 들어, 특정 프로세스의 상태가 FATAL로 표시되는 경우, 이는 해당 프로세스가 종료되어 재시작에도 실패했다는 것을 의미하며, 로그를 통해 구체적인 원인을 파악할 수 있습니다.
일반적인 프로세스 관리를 위해서는 다음과 같이 supervisorctl에 접근할 수 있습니다:
- status: 모든 프로세스의 상태를 확인합니다.
- start <program_name>: 특정 프로그램을 시작합니다.
- stop <program_name>: 특정 프로그램을 중지합니다.
- restart <program_name>: 특정 프로그램을 재시작합니다.
- tail <program_name>: 특정 프로그램의 로그를 실시간으로 확인합니다.
help
를 입력하거나 supervisord 공식 문서에서 확인할 수 있습니다.
프로세스 로그
A2는 크게 다음과 같은 컴포넌트로 이루어져있고 각각의 로그는 다음 경로에서 찾을 수 있습니다.- ADM (Advertising Manager)
- /var/log/nginx.log: ADM 프론트엔드 관련 로그
- /var/log/a2-adm-backend.log: ADM 백엔드 관련 로그
- DMP (Data Management Platform)
- /var/log/a2-sinker.log: 데이터 수집 관련 로그
- /var/log/event_stream.log: 이벤트 스트리밍 관련 로그
- /var/log/redis.log: 이벤트 스트리밍 관련 로그
- /var/log/vector.log: 로그 및 메트릭 수집기 관련 로그
- SSP/DSP (Supply-Side Platform / Demand-Side Platform)
- /var/log/a2-ssp.log: SSP 관련 로그
- /var/log/a2-dsp.log: DSP 관련 로그
- Modeling
- /var/log/a2-train.log: 머신러닝 모델 학습 관련 로그