Heroku 는 루비를 포함한 다양한 에이전트 언어로 웹 제작을 호스팅하기 위한 PaaS(Platform as a Service) 솔루션입니다. 뉴렐릭을 Heroku 사용하면 및 지표를 사용하여 확장할 수 있습니다. 이 페이지에서는 뉴렐릭용 루비 에이전트와 함께 Heroku 호스팅 서비스로 사용하기 위한 특별 고려 사항을 설명합니다.
New Relic 에이전트 애드온 설치
Heroku에 Ruby 앱을 배포한 후 New Relic 에이전트를 설치합니다.
추가 기능을 설치하면 개인 New Relic 계정이 자동으로 생성되고 Heroku 서버에 대한 액세스가 구성됩니다. New Relic은 애드온이 설치된 후 수집된 애플리케이션 성능, 최종 사용자 경험 및 앱 서버 성능 모니터링을 시작합니다. 몇 분 안에 데이터가 APM 요약 페이지 에 나타나기 시작합니다.
이 문서가 설치하는데 도움이 되셨나요?
설치 문제 해결
New Relic을 설치하고 구성한 후 몇 분 이내에 데이터가 앱의 APM 요약 페이지 에 나타나기 시작해야 합니다. 데이터가 표시되지 않으면 Ruby 에이전트 문제 해결 절차 를 따르세요.
기존 New Relic 설치에서 업그레이드
New Relic이 이미 설치된 경우 Heroku toolbelt 명령을 사용하여 추가 기능을 다시 설치하십시오.
$heroku config:set NEW_RELIC_APP_NAME='Your Application Name'
Heroku에서 Ruby 에이전트 구성
newrelic.yml
파일에서 New Relic을 구성하거나 환경 변수를 사용하여 구성 파일의 값보다 우선할 수 있습니다. heroku config:set
) 사용하여 Heroku 애플리케이션에 대한 에이전트 설정을 수정합니다.
예를 들어 custom_insights_events.max_samples_stored
설정을 500으로 설정하려면:
$heroku config:set NEW_RELIC_CUSTOM_INSIGHTS_EVENTS_MAX_SAMPLES_STORED=500
Heroku의 호스트 이름
어떤 데이터가 어떤 호스트에서 왔는지 알면 UI에 표시된 메트릭을 특정 호스트로 필터링할 수 있습니다. Heroku에서 dynos 내의 호스트 이름은 동적으로 생성되며 일반적으로 애플리케이션 개발자에게 의미가 없습니다.
버전 3.9.5부터 Ruby 에이전트는 Heroku dyno 이름을 호스트 이름으로 보고합니다(예: web.1
). 이를 통해 특정 dyno 이름으로 범위가 지정된 데이터를 볼 수 있습니다. heroku.use_dyno_names
설정을 false
로 설정하여 이 동작을 비활성화할 수 있습니다. 그러면 에이전트는 Dynamic Hostname
이라는 단일 집계된 자리 표시자 이름을 사용합니다.
Dyno 호스트 이름 집계
일부 dyno에는 동적으로 생성되는 이름이 있으며 시간이 지남에 따라 고유한 값을 많이 가질 수 있습니다. 예를 들면 스케줄러 추가 기능에 의해 생성된 scheduler
dyno와 명령줄에서 heroku run
를 호출하여 생성된 run
dyno가 있습니다. 고유한 호스트 이름의 수를 적절하게 유지하기 위해 Ruby 에이전트는 scheduler
및 run
dyno의 데이터를 scheduler.*
및 run.*
이라는 호스트 이름으로 자동 집계합니다.
동적으로 생성된 다른 dyno 유형이 있는 경우 heroku.dyno_name_prefixes_to_shorten
구성 설정을 사용하여 이러한 다른 dyno 유형에 동일한 집계를 적용합니다.
Heroku에 대한 로깅
Heroku에서 Ruby 에이전트는 에이전트 로그와 일반 애플리케이션 로그를 혼합하여 표준 출력에 기록합니다. Ruby 에이전트에서 생성한 로그 항목에는 [NewRelic]
태그가 접두사로 포함됩니다.
Heroku에서 로그를 검색하려면:
다음 Heroku toolbelt 명령을 사용하여
NEW_RELIC_LOG
환경 변수가stdout
로 설정되어 있는지 확인합니다.bash$heroku config필요한 경우 환경 변수를 재설정하려면 다음을 실행하십시오.
bash$heroku config:set NEW_RELIC_LOG="stdout"편집기에서
newrelic.yml
파일을 엽니다.log_level
을debug
로 변경하고 파일을 저장합니다. 들여쓰기를 수정하지 마십시오.웹 앱을 다시 시작합니다.
앱에 약간의 트래픽을 생성하고 약 5분 동안 실행합니다.
New Relic 에이전트의 로그만 보려면 다음 Heroku toolbelt 명령을 실행합니다.
bash$heroku logs -n 1500 | grep -i relic로그 파일을 New Relic Support에 보내는 경우
newrelic.yml
,Gemfile
및Gemfile.lock
와 함께 로그 파일을 지원 티켓에 첨부하십시오.newrelic.yml
(를) 다시 편집하고log_level
을 이전 설정으로 변경합니다. 파일을 저장합니다.