PagerDuty 알림 서비스

PagerDuty 알림 서비스 (PagerDuty)

PagerDuty 알림 서비스는 PagerDuty 인시던트(incident)를 생성하는 데 사용돼요. PagerDuty 인증 토큰, 요청을 보내는 계정의 이메일, 서비스 ID를 설정해야 해요. 템플릿에서는 알림의 제목과 urgency까지 지정할 수 있어요.

출처: 문서

본문

파라미터 (Parameters)

PagerDuty 알림 서비스는 PagerDuty 인시던트를 생성하는 데 사용되며, 다음 설정을 지정해야 해요:

  • pagerdutyToken - PagerDuty 인증 토큰
  • from - 요청을 보내는 계정과 연결된 유효한 사용자의 이메일 주소
  • serviceID - 리소스의 ID

예시 (Example)

다음 스니펫은 샘플 PagerDuty 서비스 구성을 담고 있어요:

apiVersion: v1
kind: Secret
metadata:
  name: <secret-name>
stringData:
  pagerdutyToken: <pd-api-token>
apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-notifications-cm
data:
  service.pagerduty: |
    token: $pagerdutyToken
    from: <emailid>

템플릿 (Template)

알림 템플릿은 PagerDuty 알림에 대한 제목(subject) 지정을 지원해요:

apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-notifications-cm
data:
  template.rollout-aborted: |
    message: Rollout {{.rollout.metadata.name}} is aborted.
    pagerduty:
      title: "Rollout {{.rollout.metadata.name}}"
      urgency: "high"
      body: "Rollout {{.rollout.metadata.name}} aborted "
      priorityID: "<priorityID of incident>"

참고: Priority는 인시던트의 중요도와 영향을 나타내는 라벨이에요. 이것은 pagerduty의 Standard 및 Enterprise 요금제에서만 사용할 수 있어요.

어노테이션 (Annotation)

PagerDuty 알림을 위한 어노테이션 예시:

apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  annotations:
    notifications.argoproj.io/subscribe.on-rollout-aborted.pagerduty: "<serviceID for PagerDuty>"

더 알아보기 (Learn more)