View a markdown version of this page

CloudWatch Logs 인사이트 액세스 - AWS의 생성형 AI 애플리케이션 빌더

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

CloudWatch Logs 인사이트 액세스

이 솔루션은 Lambda 함수에 대한 오류, 경고, 정보 및 디버깅 메시지를 기록합니다. 로깅할 메시지 유형을 선택하려면:

  1. AWS Lambda 콘솔에서 해당 함수를 찾습니다.

  2. POWERTOOLS_LOG_LEVEL 환경 변수를 추가합니다.

  3. 변수를 해당 메시지 유형으로 설정합니다.

자세한 지침은 AWS Lambda Lambda 개발자 안내서의 Lambda 환경 변수 생성을 참조하세요.

다음 표에는 선택할 수 있는 로그 수준 유형이 나열되어 있습니다.

수준 설명

오류

로그에는 작업이 실패하는 모든 항목에 대한 정보가 포함됩니다.

경고

로그에는 함수에서 불일치를 일으킬 수 있지만 반드시 작업이 실패하는 것은 아닌 모든 항목에 대한 정보가 포함됩니다. 로그에는 ERROR 메시지도 포함됩니다.

INFO

로그에는 함수의 작동 방식에 대한 상위 수준 정보가 포함됩니다. 로그에는 ERROR 및 WARNING 메시지도 포함됩니다.

DEBUG

로그에는 함수 문제를 디버깅할 때 유용할 수 있는 정보가 포함됩니다. 로그에는 ERROR, WARNING 및 INFO 메시지도 포함됩니다.

다음 절차에 따라이 솔루션에 CloudWatch Logs 인사이트를 추가합니다.

  1. 관련 로그 그룹을 식별합니다.

    1. AWS CloudFormation 콘솔에 로그인합니다.

    2. 대상 스택을 선택합니다.

    3. 리소스 탭을 선택하고 대상 Lambda 함수를 검색합니다.

    4. AWS Lambda 콘솔에 로그인하고 각 대상 Lambda 함수를 선택합니다.

    5. 각 대상 Lambda 함수에 대해 모니터링 탭을 선택하고 CloudWatch Logs 보기를 선택합니다.

    6. 인사이트를 추출하려는 로그 그룹의 이름을 복사합니다.

  2. Amazon CloudWatch 콘솔로 이동합니다.

  3. 탐색 메뉴의 로그에서 Logs Insights를 선택합니다.

  4. Logs Insights 페이지에서 로그 탭을 선택합니다.

  5. 1단계에서 로그 그룹 이름을 검색합니다.

  6. 다음 예제 쿼리 중 하나를 복사하여 쿼리 필드에 붙여 넣습니다.

    1. 모든 클라이언트 예외를 식별하려면:

      fields @message |filter @message like /(?i)Exception/|stats count(*) as exceptionCount by @message
    2. 함수 이름별로 호출 수를 검색하려면:

      stats count(*) by function_name
    3. 5분 간격으로 호출 수를 검색하려면:

      stats count(*) as invocations by bin(5m)
    4. 모든 AWS X-Ray 트레이IDs를 검색하려면:

      filter @message like "XRAY TraceId" |parse @message "XRAY TraceId: * " as traceId|stats count(*) by traceId
    5. 특정 X-Ray 트레이스 ID와 관련된 로그를 검색하려면:

      filter @message like "your-traceid-here"
    6. 승인되지 않은 WebSocket 오류를 검색하려면:

      fields @ingestionTime, @log, @logStream, @message, @requestId, @timestamp, errorMessage, errorType |filter @message like /Unauthorized/ and @message like /websocket/|sort @timestamp desc
    7. 게시된 지표 수를 검색하려면:

      filter @message like "CloudWatchMetrics" |parse @message /"Metrics":\s*\[(?<metrics>.*?)\]/|stats count(*) as metric_count by metrics