알림 옵션

이 페이지에서는 지원되는 알림 채널 유형을 나열하고 Google Cloud Console을 사용하여 알림 채널 유형을 구성하는 방법을 설명합니다.

  • Cloud Monitoring API를 사용하여 알림 채널을 구성하려면 알림 채널 관리를 참조하세요.
  • 문제가 시작된 후 알림이 생성되기까지 시간 지연에 대한 자세한 내용은 알림 지연을 참조하세요.

Google Cloud Console을 사용하여 알림 채널을 구성하려면 다음 단계를 따르세요.

  1. Cloud Console에서 Monitoring을 선택합니다.

    Monitoring으로 이동

  2. Monitoring 탐색창에서 알림을 클릭합니다.

  3. 알림 채널 수정을 클릭합니다. 알림 채널 대시보드에는 각 알림 채널 유형에 대한 섹션이 포함되어 있습니다. 섹션 헤더 아래에 해당 유형에 대한 모든 구성 목록이 있습니다.

    • 항목을 수정하려면 수정 을 클릭합니다. 변경이 완료되면 저장을 클릭합니다.
    • 항목을 삭제하려면 삭제 를 클릭합니다. 확인 대화상자에서 삭제를 클릭합니다.
  4. 항목을 추가하려면 다음 표의 알림 유형 안내를 따르세요.

이메일

이메일을 추가하려면 이메일 섹션으로 이동하여 새로 추가를 클릭하고 안내를 따릅니다.

알림 정책을 만들고 알림 섹션에서 이메일을 선택한 경우 이메일 주소를 입력합니다. 그룹 이메일 주소를 사용하는 경우 alerts@stackdriver.comalerting-noreply@google.com의 메일을 모두 수락하도록 그룹을 구성합니다. 참고로 stackdriver.com 주소가 단계적으로 삭제됩니다.

필요에 따라 이메일 채널을 구성할 수 있지만, 사전에 만들면 '전자상거래 긴급 대기 팀'과 같은 설명적 표시 이름도 구성할 수 있습니다.

Google Cloud Console Mobile App

Google Cloud Console 모바일 앱을 사용하여 어디에서나 Cloud Console 리소스와 모니터링 정보를 모니터링하세요.

Monitoring 알림을 받도록 휴대기기를 구성하려면 다음 단계를 따르세요.

  1. 휴대기기의 앱 스토어에서 Google Cloud Console 모바일 앱을 설치합니다.
  2. Google Cloud Console 모바일 앱: 설정 메뉴를 선택하여 작업공간에 맞게 앱을 구성합니다. Cloud Console 리소스를 볼 수 있습니다.
  3. 휴대기기 섹션에서 새로 추가를 클릭하고 안내를 따릅니다.

몇 분 후 휴대기기가 휴대기기 아래에 표시됩니다.

알림 정책을 만들 때 알림 섹션에서 Google Cloud Console(모바일)을 선택하고 목록에서 휴대기기를 선택합니다.

PagerDuty

PagerDuty와 통합하면 Monitoring에서 단방향 또는 양방향 이슈 해결이 가능합니다.

PagerDuty 알림을 설정하려면 다음 단계를 따르세요.

  1. PagerDuty 내: PagerDuty 사이트에서 PagerDuty 계정을 만듭니다. Monitoring과의 양방향 동기화를 위해 PagerDuty Sync를 선택적으로 구성할 수 있습니다. 자세한 내용은 PagerDuty의 Stackdriver 통합 가이드를 참조하세요.
  2. PagerDuty 섹션에서 새로 추가를 클릭합니다.
  3. 서비스 이름서비스 키를 입력합니다.
  4. 저장을 클릭합니다.

알림 정책을 만들 때 알림 섹션에서 PagerDuty를 선택하고 PagerDuty 구성을 선택합니다.

이 문서에서 Stackdriver 스크린샷은 이전 버전의 Stackdriver에서 가져왔지만, 표시된 정보는 정확합니다.

SMS

SMS 알림을 구성하려면 다음 단계를 따르세요.

  1. SMS 섹션에서 새로 추가를 클릭하고 안내를 따릅니다.
  2. 저장을 클릭합니다.

알림 정책을 설정할 때 SMS 알림 유형을 선택하고 목록에서 확인된 전화번호를 선택합니다.

Slack

Monitoring Slack 통합을 사용하면 새 이슈가 생성될 때 알림 정책이 Slack 채널에 게시됩니다. Slack 알림을 설정하려면 다음 단계를 따르세요.

  1. Slack 내: Slack 사이트에서 Slack 채널을 만듭니다. 채널 URL을 기록합니다.
  2. Google Cloud Console에서 Monitoring을 선택합니다.

    Monitoring으로 이동

  3. 알림을 클릭한 다음 알림 채널 수정을 클릭합니다.

  4. Slack 섹션에서 새로 추가를 클릭합니다. Slack 로그인 페이지로 이동합니다.

    1. Slack 작업공간 URL을 입력합니다.
    2. 허용을 클릭하여 Slack 작업공간에 대한 Google Cloud Monitoring 액세스를 사용 설정합니다.

    알림 정책을 만들 때 알림 섹션에서 Slack을 선택하고 Slack 구성을 선택합니다.

웹훅

웹훅 알림을 구성하려면 다음 단계를 따르세요.

  1. 웹훅 핸들러: Monitoring에서 웹훅 데이터를 수신할 엔드포인트 URL을 식별합니다.
  2. 웹훅 섹션에서 새로 추가를 클릭하고 안내를 따릅니다.
  3. 저장을 클릭합니다.

알림 정책을 만들 때 알림 섹션에서 웹훅을 선택하고 웹훅 구성을 선택합니다.

샘플 JSON 패킷

이벤트를 만들기 위한 JSON 패킷의 형식은 다음과 같습니다.

  {
        "incident": {
          "incident_id": "f2e08c333dc64cb09f75eaab355393bz",
          "resource_id": "i-4a266a2d",
          "resource_name": "webserver-85",
          "state": "open",
          "started_at": 1385085727,
          "ended_at": null,
          "policy_name": "Webserver Health",
          "condition_name": "CPU usage",
          "url": "https://console.cloud.google.com/monitoring/alerting/incidents?project=PROJECT_ID",
          "summary": "CPU for webserver-85 is above the threshold of 1% with a value of 28.5%"
        },
        "version": 1.1
      }
    

기본 인증

Cloud Monitoring에서 보낸 웹훅 요청 외에도 기본 인증은 사용자 이름과 비밀번호에 HTTP 사양을 사용합니다. Cloud Monitoring에서 서버는 적절한 WWW-Authenticate 헤더가 있는 401 응답을 반환해야 합니다. 기본 인증에 대한 자세한 내용은 다음을 참조하세요.

토큰 인증

토큰 인증을 사용하려면 엔드포인트 URL에 쿼리 문자열 매개변수와 서버가 자체적으로 모니터링할 것으로 예상하는 키가 필요합니다. 다음은 토큰을 포함하는 샘플 URL입니다.

https://www.myserver.com/stackdriver-hook?auth_token=1234-abcd

Monitoring이 엔드포인트 URL에 이슈를 게시하면 서버에서 연결된 매개변수의 유효성을 검사할 수 있습니다. 이 인증 방법은 SSL/TLS와 함께 HTTP 요청을 암호화하여 스누퍼의 토큰 학습을 방지할 때 가장 효과적입니다.

Python의 서버 예는 이 샘플 서버를 참조하세요.

게시/구독

Pub/Sub 주제로 알림을 보내려면 다음 단계를 따르세요.

  1. 주제 만들기에 설명된 대로 Pub/Sub 주제를 만듭니다(아직 없는 경우). 주제를 알림 채널로 사용하려면 주제가 먼저 존재해야 합니다. 다음 명령어는 notificationTopic라는 주제를 만듭니다.

    gcloud pubsub topics create notificationTopic
  2. 주제를 사용하는 알림 채널을 만듭니다. 이 채널을 만들려면 Monitoring API 또는 gcloud 명령줄 도구를 사용해야 합니다. 자세한 내용과 예는 채널 만들기를 참조하세요.

  3. 알림 채널로 사용 중인 각 Pub/Sub 주제에 게시할 알림 서비스 계정을 승인합니다.

    첫 번째 Pub/Sub 채널을 만들면 Cloud Monitoring은 채널이 생성된 프로젝트의 모니터링 알림 서비스 에이전트에 대한 서비스 계정을 만듭니다. 이 서비스 계정은 이 프로젝트의 Pub/Sub 기반 알림 채널로 알림을 보내는 것을 관리합니다.

    이 서비스 계정에는 다음과 같은 구조의 ID가 있습니다.

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

    Google Cloud Console의 서비스 계정 페이지가 아닌 IAM 페이지에서 이 계정을 볼 수 있습니다.

    이 계정이 주제에 게시되도록 승인하려면 해당 주제에 대한 pubsub.publisher IAM 역할을 서비스 계정에 부여해야 합니다. 다음 명령어는 notificationTopic 주제에 대해 이 작업을 수행합니다.

    gcloud pubsub topics add-iam-policy-binding \
        projects/[PROJECT_NUMBER]/topics/notificationTopic --role=roles/pubsub.publisher \
        --member=serviceAccount:service-[PROJECT_NUMBER]@gcp-sa-monitoring-notification.iam.gserviceaccount.com
        

    명령어가 성공하면 다음과 같은 출력이 반환됩니다.

        Updated IAM policy for topic [notificationTopic].
        bindings:
        ‐ members:
          ‐ serviceAccount:service-[PROJECT_NUMBER]@gcp-sa-monitoring-notification.iam.gserviceaccount.com
          role: roles/pubsub.publisher
        etag: BwWcDOIw1Pc=
        version: 1
        

    자세한 내용은 pubsub topics add-iam-policy-binding 참조 페이지를 참조하세요.

    프로젝트 숫자는 프로젝트 ID와 동일하지 않습니다. 프로젝트 ID는 일반적으로 my-test-project와 같이 프로젝트 이름을 반영하는 문자열입니다. 프로젝트 번호는 고유한 숫자 식별자입니다. Google Cloud Console의 프로젝트 방문 페이지에서 프로젝트 이름, ID, 번호를 찾거나 다음 명령어를 사용하여 검색할 수 있습니다.

        gcloud projects describe [PROJECT_ID] --format="value(project_number)"
        
  4. Pub/Sub를 채널 유형으로 선택하고 지명된 주제를 알림 채널로 선택하여 알림 정책에 Pub/Sub 채널을 추가합니다.