New Relic for Lambda를 사용해 보세요.

안녕하세요. NewRelic 어드벤트 캘린더 17일째 항목입니다.

NewRelic for Lambda는 올해 출시된 기능 중 하나입니다. Lambda의 실행 시간, 외부 서비스와의 통신, 콜드 스타트 ​​등 등 보이는 것 같습니다. 즉시 시도합시다!

능선. 네w 레이c. 작은 m



먼저 NewRelic One( NewRelic ONE이란? )의 톱 페이지에 있는 AWS Lambda setup에서 설정으로 이동합니다.





NewReic 계정과 AWS 계정을 설정하여 모니터링을 위한 몇 가지 리소스를 만들 것입니다.
감시하고 싶은 Lambda의 래퍼로서 NR Wrapper, 그 lambda의 로그를 NewRelic의 시스템에 효율적으로 흘리는 Log ingestion Lambda를 준비해 갑니다.

htps : // / cs. 네 w레 c. 이. jp / ds cs / ser r ぇ r ぇ s 펑 c 치 온 - 모토 린 g / 아 ws ぁ MB - 네, w-c, 모니 토린 g- ws-mb입니다.

Step 1. Configure AWS to communicate with New Relic




h tps : // 오네. 네 w ぃ c. 이 m / ぁ 똥 r / ぁ mb이다 - 네 rd ぇ ts. 흠 ぇ r ぁ MB

newrelic-lambda-cli를 사용하여 설정하는 것 같습니다.newrelic-lambda integrations install를 실행합니다.
$ newrelic-lambda integrations install --nr-account-id [NR_ACCOUNT_ID] \
                                                      --linked-account-name [LINKED_ACCOUNT_NAME_IN_NR] \
                                                      --nr-api-key <NR_API_KEY> \
                                                      --aws-region <AWS_REGION> \
                                                      --aws-profile <AWS_PROFILE>

Step 2. Install instrumentation





Serverless Framework 플러그인도 제공되고 있는 것 같습니다만, 이번은 Lambda 레이어를 더하는 방법으로 해 보겠습니다.
  • newrelic-lambda-cli를 설치하고
  • pip3 install newrelic-lambda-cli
    
  • Lambda 목록 출력. NewRelic wrapper의 도입 상태를 확인합니다
  • $ newrelic-lambda functions list
    Function Name                                                     Runtime    Installed
    ----------------------------------------------------------------  ---------  -----------
    ...
    EcsErrorNotify                                                    python3.6  No
    ...
    
  • NewRelic wrapper를 Lambda 함수에 추가합니다
  • $ newrelic-lambda layers install \
      --function EcsErrorNotify \
      --nr-account-id ... \
      --aws-profile ... \
      --aws-region ...
    ✨ Install Complete ✨
    

    Installed=Yes입니다. 좋아 보인다.
    $ newrelic-lambda functions list
    Function Name                                                     Runtime    Installed
    ----------------------------------------------------------------  ---------  -----------
    ...
    EcsErrorNotify                                                    python3.6  Yes
    ...
    

    Step 3. Configure CloudWatch logs to stream to New Relic Lambda


    $ newrelic-lambda subscriptions install --function EcsErrorNotify
    Adding New Relic log subscription to 'EcsErrorNotify'
    ✨ Install Complete ✨
    

    지금까지의 설정으로 NewRelic for Lambda의 모니터링을 할 수 있게 됩니다!



    Lambda 함수의 실행 시간과 내부에서 실행되는 외부 서비스 간의 통신 당 시간을 볼 수 있습니다. boto3에서 ecs 서비스의 POST 요청과 Slack에 대한 api 통신의 모습을 볼 수 있습니다.


    그래서,



    사쿠토 NewRelic for Lambda의 도입을 해 보았습니다. 앞으로 실제로 여러가지 사용하고 싶습니다!
    NewRelic 어드벤트 캘린더 17 일째 항목이었습니다.

    좋은 웹페이지 즐겨찾기