AWS Lambda에 대한 모니터링을 활성화 한 후 AWS 로그 데이터를 보고하는 데 사용되는 Lambda 함수를 가끔 업데이트해야 합니다. newrelic-log-ingestion
.
두 가지 방법이 있습니다.
- CLI를 통한 업데이트 : CLI 도구 를 사용하여 Lambda 모니터링을 활성화한 경우 사용합니다.
- AWS Serverless Application Repository를 통한 업데이트 : 수동 절차 를 사용하여 활성화한 경우 사용합니다.
중요
이러한 업데이트 절차는 AWS Lambda에 대한 서버리스 모니터링에 적용되며 AWS Lambda 통합에 대한 인프라 모니터링에는 적용되지 않습니다.
CLI를 통해 Lambda 통합 업데이트
이 섹션에서는 권장되는 CLI 도구 를 사용하여 Lambda 모니터링이 활성화된 경우 업데이트하는 방법을 설명합니다.
최신 버전의 CLI가 있는지 확인하십시오.
bash$pip install --upgrade newrelic-lambda-clinewrelic-log-ingestion
함수를 설치한 각 지역에 대해 다음 명령을 실행하고YOUR_REGION
지역 식별자(예:us-west-2
)로 바꿉니다.bash$newrelic-lambda integrations update \>--aws-region YOUR_REGION로그를 활성화하지 않은 경우 다음 명령을 사용하여 Amazon CloudWatch 로그 구독 필터도 업데이트해야 합니다.
bash$newrelic-lambda subscriptions install \>--function installed \>--aws-region YOUR_REGION
CLI를 통해 계층 업데이트
이 섹션에서는 CLI 도구 를 사용하여 함수를 설치한 경우 함수의 레이어를 업데이트하는 방법을 설명합니다.
최신 버전의 CLI가 있는지 확인하십시오.
bash$pip install --upgrade newrelic-lambda-cli설치 명령에
--upgrade
플래그를 전달합니다.bash$newrelic-lambda layers install \>--function installed \>--nr-account-id NR_ACCOUNT_ID \>--upgrade
수동 서버리스 애플리케이션 리포지토리 설치 업데이트
AWS Serverless Application Repository에서 수집 기능을 수동으로 설치하고 CLI 를 사용하지 않은 경우 다음 절차를 사용하여 업데이트하십시오.
다음을 실행하여
YOUR_REGION
해당 지역으로 바꿉니다(예:us-west-2
).bash$aws serverlessrepo create-cloud-formation-change-set \>--application-id arn:aws:serverlessrepo:us-east-1:463657938898:applications/NewRelic-log-ingestion \>--stack-name NewRelic-log-ingestion \>--capabilities CAPABILITY_RESOURCE_POLICY \>--parameter-overrides Name=NRLicenseKey,Value=<YOUR_NR_LICENSE_KEY> \>--region <YOUR_REGION>이 명령은 여러 필드를 출력하며 그 중 하나는 방금 생성한 변경 세트의 ARN인
ChangeSetId
입니다. 해당 ARN을 복사합니다.변경 세트를 실행하는 이 명령에서 ARN을 사용합니다.
bash$aws cloudformation execute-change-set --change-set-name YOUR_CHANGE_SET_ARN
로그 관리 활성화
현재 뉴렐릭의 가 활성화되어 있지 않지만 다음을 원하는 경우:
최신 버전의 CLI가 있는지 확인하십시오.
bash$pip install --upgrade newrelic-lambda-clinewrelic-log-ingestion
함수를 설치한 각 지역에 대해YOUR_REGION
해당 지역(예:us-west-2
)으로 대체하여 다음 명령을 실행합니다.bash$newrelic-lambda integrations update \>--enable-logs \>--aws-region YOUR_REGION그런 다음 다음 중 하나를 수행합니다.
다음 명령을 사용하여 각 리전의 Amazon CloudWatch 로그 구독 필터를 업데이트합니다.
bash$newrelic-lambda subscriptions install \>--function installed \>--filter-pattern "" \>--aws-region YOUR_REGION또는 CloudWatch 및
newrelic-log-ingestion
Lambda를 우회하여 함수 로그를 New Relic에 직접 보낼 수 있습니다. 이렇게 하려면 Lambda 함수 구성에서 환경 변수NEW_RELIC_EXTENSION_SEND_FUNCTION_LOGS=true
를 설정합니다.그 후 다음 명령을 사용하여 해당 기능에 대한 기존 New Relic 로그 구독을 모두 제거해야 합니다.
bash$newrelic-lambda subscriptions uninstall \>--function FUNCTION_NAME \>--aws-region YOUR_REGION확장 프로그램이 로그를 보내는 동안 로그 구독이 존재하면 로그가 두 번 전송되어 New Relic에 중복 로그 레코드가 생성됩니다.
선택적으로 CloudWatch Log 수집에 대한 Amazon의 요금 을 피하려면 CloudWatch Log 권한을 부여하지 않도록 함수의 실행 역할 을 수정할 수도 있습니다. 이렇게 하면 함수가 CloudWatch에 로깅되지 않습니다.
주의
CloudWatch Logs 수집 비용이 상당할 수 있지만 이 단계는 주의해서 수행해야 합니다. CloudWatch 로그를 비활성화하기 전에 New Relic 로그 수집 통합이 제대로 작동하고 요구 사항을 충족하는지 확인하십시오.