2017-04-03 7 views
1

내 경고는 다음과 같이 구성됩니다.Alertmanager Webhook에서 레이블 사용

ALERT PoDHighCPUUsage 
    IF sum(rate(container_cpu_usage_seconds_total{container_label_io_kubernetes_pod_namespace!=""}[2m])) BY (kubernetes_pod_name, kubernetes_io_hostname, container_label_io_kubernetes_pod_namespace) >= 0.2 
    FOR 2m 
    LABELS {severity="criticalup"} 
    ANNOTATIONS {summary="CPU usage of POD {{ $labels.kubernetes_pod_name }} {{ $labels.container_label_io_kubernetes_pod_namespace }} utilization is >= 0.4 cores (current value: {{ $value }}%)"} 

내 webhooks 다음과 같이 ..

- name: 'email-n-webhookup' 
    email_configs: 
    - to: 'mail-id' 
    send_resolved: true 

    webhook_configs: 
    - url: http://<webhook_ip>:9000/hooks/ose-webhook?in1={{.Labels.container_label_io_kubernetes_pod_namespace}}&in2={{.Labels.kubernetes_pod_name}}&in3=plus 

- name: 'email-n-webhookdn' 
    email_configs: 
    - to: 'mail-id' 
    send_resolved: true 

    webhook_configs: 
    - url: http://<webhook_ip>:9000/hooks/ose-webhook?in1=tomi&in2=chat&in3=minus 

나는 webhook_configs에 & "labels.container_label_io_kubernetes_pod_namespace을"값/데이터 "labels.kubernetes_pod_name"를 통과 할 수 없습니다입니다.

정적은 "이메일-N-webhookdn"

답변

2

는 모든 필드 templatable, 그리고으로 webhook URL이 그 중 하나입니다 당으로 일했다. webhook을받는 코드는 POST에서 수신 된 json 내부를 조사하여 모든 경고 및 해당 레이블을 가져올 것으로 예상됩니다.

+0

감사합니다. 뇌 .. 거기에 다른 해결책이 있습니까? –

+0

URL 매개 변수가 아닌 webhook 처리기 내에서이 작업을 수행하십시오. –