누락된 알림 문제 해결

이 페이지에서는 알림이 예상대로 수신되지 않는 이유를 설명하고 이러한 상황이 발생했을 때의 가능한 해결 방법을 제공합니다.

알림이 수신되지 않음

구성된 알림 채널을 통해 알림을 받지 못하는 경우 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 로그 탐색기 페이지로 이동합니다.

    로그 탐색기로 이동

    검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Logging인 결과를 선택합니다.

  2. 적절한 Google Cloud 프로젝트를 선택합니다.
  3. 알림 채널 이벤트의 로그를 쿼리합니다.

    1. 로그 이름 메뉴를 확장하고 notification_channel_events를 선택합니다.
    2. 심각도 메뉴를 확장하고 오류를 선택합니다.
    3. 선택사항: 커스텀 시간 범위를 선택하려면 기간 선택기를 사용합니다.
    4. 쿼리 실행을 클릭합니다.

    이전 단계에서는 다음 쿼리를 만듭니다.

    resource.type:"stackdriver_notification_channel"
    logName="projects/PROJECT_ID/logs/monitoring.googleapis.com%2Fnotification_channel_events"
    severity=ERROR
    

    요약 줄과 jsonPayload 필드에는 일반적으로 실패 정보가 포함됩니다. 예를 들어 게이트웨이 오류가 발생하면 요약 줄에 '502 잘못된 게이트웨이로 인한 실패'가 포함됩니다.

웹훅 알림이 수신되지 않음

이 섹션은 구성된 웹훅 알림 채널을 통해 알림을 수신하지 않는 경우에 적용됩니다.

비공개 엔드포인트

비공개 엔드포인트가 있는 경우 해당 알림 주제에 대한 풀(pull) 구독과 함께 Pub/Sub 알림을 사용합니다. 비공개 엔드포인트에 대한 알림에는 웹훅을 사용할 수 없습니다.

Pub/Sub 알림 채널을 구성하면 Identity and Access Management가 포함된 Pub/Sub 큐로 이슈 알림이 전송됩니다. Pub/Sub 주제를 쿼리하거나 리슨할 수 있는 모든 서비스에서 이러한 알림을 사용할 수 있습니다. 예를 들어 App Engine, Cloud Run 또는 Compute Engine 가상 머신에서 실행되는 애플리케이션에서 이러한 알림을 사용할 수 있습니다.

가져오기 구독을 사용하는 경우 요청이 메시지가 도착하기를 기다리는 Google에 전송됩니다. 이러한 구독에는 Google에 대한 액세스 권한이 필요하지만 방화벽이나 인바운드 액세스에 대한 규칙은 필요하지 않습니다.

공개 엔드포인트

전송이 실패한 이유를 확인하려면 Cloud Logging 로그 항목을 검사하여 실패 정보를 확인합니다.

예를 들어 다음과 같이 필터와 함께 로그 탐색기를 사용해서 로그 항목에서 알림 채널 리소스를 검색할 수 있습니다.

resource.type="stackdriver_notification_channel"

Pub/Sub 알림이 수신되지 않음

구성된 Pub/Sub 알림 채널을 통해 알림이 수신되지 않으면 다음을 시도해 보세요.

  • 알림 서비스 계정이 있는지 확인합니다. 서비스 계정이 삭제되었으면 알림이 전송되지 않습니다.

    서비스 계정이 있는지 확인하려면 다음을 수행합니다.

    1. Google Cloud 콘솔에서 IAM 페이지로 이동합니다.

      IAM으로 이동

      검색창을 사용하여 이 페이지를 찾은 경우 부제목이 IAM 및 관리자인 결과를 선택합니다.

    2. 다음 이름 지정 규칙이 사용된 서비스 계정을 검색합니다.

      service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com

      이 서비스 계정이 나열되지 않으면 Google 제공 역할 부여 포함을 선택합니다.

    알림 서비스 계정이 없으면 서비스 계정을 만들기 위해 Monitoring의 Pub/Sub 알림 채널을 만드는 프로세스를 시작해야 합니다.

    1. Google Cloud 콘솔에서  알림 페이지로 이동합니다.

      알림으로 이동

      검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Monitoring인 결과를 선택합니다.

    2. 알림 채널 수정을 클릭합니다.
    3. Pub/Sub 섹션에서 새로 추가를 클릭합니다.

      Monitoring은 서비스 계정이 없으면 알림 서비스 계정을 만듭니다. Pub/Sub 채널 만들기 대화상자에 알림 서비스 계정 이름이 표시됩니다.

    4. 알림 채널을 추가하지 않으려면 취소를 클릭합니다. 그렇지 않으면 알림 채널 만들기를 완료하고 채널 추가를 클릭합니다.

    5. 서비스 계정에 Pub/Sub 주제를 게시할 수 있는 권한을 부여합니다.

      1. 새 브라우저 탭에서 알림 채널 만들기 문서를 엽니다.
      2. Pub/Sub 탭을 선택한 후 페이지의 서비스 계정 승인 섹션에 있는 단계를 수행합니다.
  • 알림 서비스 계정이 원하는 Pub/Sub 주제에 대해 알림을 전송하도록 승인되었는지 확인합니다.

    서비스 계정의 권한을 보려면Google Cloud 콘솔 또는 Google Cloud CLI 명령어를 사용하면 됩니다.

    • Google Cloud 콘솔의 IAM 페이지에는 각 서비스 계정에 대한 역할이 표시됩니다.
    • Google Cloud 콘솔의 Pub/Sub 주제 페이지에는 각 주제가 표시됩니다. 주제를 선택하면 권한 탭에 서비스 계정에 부여된 역할이 표시됩니다.
    • 모든 서비스 계정과 해당 역할을 표시하려면 다음 Google Cloud CLI 명령어를 실행합니다.

      gcloud projects get-iam-policy PROJECT_ID
      

      다음은 이 명령어에 대한 부분 응답입니다.

          serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
             role: roles/monitoring.notificationServiceAgent
           - members:
             [...]
             role: roles/owner
           - members:
             - serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
             role: roles/pubsub.publisher
      

      명령어 응답은 역할만 포함하고, 주제별 승인을 포함하지 않습니다.

    • 특정 주제에 대한 IAM binding을 나열하려면 다음 명령어를 실행합니다.

      gcloud pubsub topics get-iam-policy TOPIC
      

      다음은 이 명령어의 샘플 응답입니다.

          bindings:
          - members:
            - serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
            role: roles/pubsub.publisher
          etag: BwXPRb5WDPI=
          version: 1
      

    알림 서비스 계정을 승인하는 방법은 서비스 계정 승인을 참조하세요.

VM이 종료되어도 알림이 표시되지 않음

가상 머신(VM)이 종료될 때 알림을 받으려면 VM을 주기적으로 조사하는 업타임 체크를 만든 다음 해당 업타임 체크를 모니터링하는 알림 정책을 만듭니다. 가상 프라이빗 클라우드(VPC)를 사용하는 경우 비공개 업타임 체크를 만들어야 할 수 있습니다.

compute.googleapis.com/instance/uptime 측정항목을 모니터링하는 알림 정책은 VM이 종료될 때 알림을 보내지 않습니다. 이 측정항목의 경우 알림 정책은 RUNNING 상태의 VM 인스턴스에 대해서만 시계열을 모니터링합니다. VM이 STOPPED 또는 DELETED와 같은 다른 상태에 있는 경우 모니터링되지 않습니다. VM 인스턴스 상태에 대한 자세한 내용은 VM 인스턴스 수명 주기를 참조하세요.

요청 수 알림 정책 알림이 수신되지 않음

serviceruntime.googleapis.com/api/request_count 측정항목을 모니터링하는 알림 정책의 알림이 수신되지 않으면 정책의 정렬 기간이 7시간 30분을 초과하지 않는지 확인하세요.

SMS 알림 메시지 또는 확인 코드가 수신되지 않음

SMS 알림 또는 인증 코드를 받지 못하는 경우 SMS 메시지 한도에 도달하지 않았는지 확인하세요. 이 오류와 관련된 로그를 찾아볼 수 있습니다. Denied quota token의 로그를 확인하세요.

일반적으로 알림을 받으려고 SMS 채널만 사용하는 것은 권장하지 않습니다. SMS 알림은 "최선의 노력"으로만 제공됩니다.