Python 에이전트 를 사용하면 Google App Engine(GAE) 가변형 환경 에 있는 애플리케이션을 모니터링할 수 있습니다. GAE flex 앱에 에이전트 데이터를 추가하면 앱의 상태와 성능에 대한 통찰력을 얻을 수 있고 New Relic UI에서 볼 수 있는 메트릭으로 GAE를 확장할 수 있습니다.
이 문서에서는 다음 방법 중 하나를 사용하여 에이전트 데이터를 GAE flex 앱에 추가하는 방법을 설명합니다.
- 표준 GAE 런타임을 사용한 Google App Engine의 "네이티브 모드" 설치
- 사용자 정의 런타임 을 사용한 Docker 설치
GAE의 기본 지원을 사용하여 배포
Google App Engine '기본 모드' 설치를 사용할 때 앱 코드와 app.yaml
파일을 제공합니다. 그러면 Google App Engine이 사전 빌드된 표준 Docker 이미지에 배포합니다.
예를 들어 Flask/Django 앱에 대한 기본 지원으로 배포하려면:
- 포함하여 Python 에이전트를 설치 하려면 표준 절차를 따르세요.
NEW_RELIC_CONFIG_FILE
을newrelic.ini
을 가리키는 환경 변수로 설정합니다.
에이전트 및 구성 파일이 설치되면 Python 에이전트는 GAE 가변형 환경에 있는 애플리케이션을 자동으로 모니터링할 수 있습니다. 배포가 완료될 때까지 기다린 다음 APM 요약 페이지 에서 GAE flex 앱 데이터를 봅니다.
Docker를 사용하여 사용자 지정 런타임 빌드
맞춤 런타임 빌드에 대한 Google 문서를 참조하세요. 이 예에서는 Docker용 사용자 지정 런타임을 빌드하여 GAE flex 앱에 에이전트 데이터를 추가하는 방법을 설명합니다.
GAE 가변형 환경에서 Node.js 앱 배포 및 구성에 대한 자세한 내용은 다음을 참조하세요.
- Python용Github의 GAE flex 예제
- Python용 Google App Engine 문서
- Python 앱 배포를 위한 Google App Engine의 자습서
권장 사항: 상태 확인 비활성화
Google App Engine은 인스턴스가 성공적으로 배포되었는지 확인하고 실행 중인 인스턴스가 정상 상태를 유지하는지 확인하기 위해 정기적인 상태 확인 요청 을 보냅니다. 상태 확인은 URL /_ah/health
에 대한 HTTP 요청입니다.
사용자 지정 런타임을 만드는 경우 앱은 많은 수의 상태 확인 요청을 처리할 수 있어야 합니다. 그렇지 않으면 앱 데이터가 APM에서 올바르게 표시되지 않을 수 있습니다.
권장 사항: 다음을 추가하여 상태 확인을 비활성화 하도록 app.yaml
구성하세요.
health_check: enable_health_check: False
GAE에서 상담원 문제 해결 로그 가져오기
다음 리소스를 사용하여 GAE 플렉스 환경 앱 문제를 해결하세요.
GAE 인스턴스에 연결하고 코드를 실행하는 Docker 컨테이너에서 셸을 시작 하려면 인스턴스 디버깅 을 참조하세요.
Cloud Platform 콘솔 에서 Python 에이전트 로그를 Stackdriver 로 리디렉션하려면
newrelic.ini
구성에 다음 문을 추가합니다.log_file = stderr로그를 보려면 Cloud Platform 콘솔의 로그 뷰어 를 사용하세요.