钉钉插件
首先配置钉钉报警,需要钉钉报警的插件,否则接收不到钉钉报警
链接:https://pan.baidu.com/s/1p9ajUH1RyEdxT_hHzFTGdA
提取码:xyi7
tar -xvzf prometheus-webhook-dingtalk-0.3.0.linux-amd64.tar.gz
配置alert.yml文件
配置alert的配置,把钉钉插件起的tocken加进去
apiVersion: v1 data: {} kind: Secret metadata: name: alertmanager-main namespace: monitoring stringData: alertmanager.yaml: |- global: resolve_timeout: 5m route: group_by: [alertname] group_wait: 30s group_interval: 3h repeat_interval: 10m receiver: cluster1 receivers: - name: cluster1 webhook_configs: - url: 'http://自己的ip:8060/dingtalk/cluster1/send' send_resolved: true
配置钉钉报警模板
cd prometheus-webhook-dingtalk-0.3.0.linux-amd64 cp default.tmpl default.tmpl.bak {{ define "__subject" }}[{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ end }}] {{ .GroupLabels.SortedPairs.Values | join " " }} {{ if gt (len .CommonLabels) (len .GroupLabels) }}({{ with .CommonLabels.Remove .GroupLabels.Names }}{{ .Values | join " " }}{{ end }}){{ end }}{{ end }} {{ define "__alertmanagerURL" }}{{ .ExternalURL }}/#/alerts?receiver={{ .Receiver }}{{ end }} {{ define "__text_alert_list" }}{{ range . }} 告警程序:prometheus_alert 告警级别:{{ .Labels.severity }} 告警类型:{{ .Labels.alertname }} 主机: {{ .Labels.instance }} 命名空间: {{ .Labels.namespace }} Pod: {{ .Labels.pod }} 告警主题: {{ .Annotations.summary }} 告警描叙: {{ .Annotations.description }} 触发时间: {{ .StartsAt.Format "2006-01-02 15:04:05" }} ------------------------ {{ end }}{{ end }} {{ define "__text_resolve_list" }}{{ range . }} 恢复程序:{{ .Labels.alertname }} 主机: {{ .Labels.instance }} 恢复描叙: {{ .Annotations.description }} 触发时间: {{ .StartsAt.Format "2006-01-02 15:04:05" }} ------------------------ {{ end }}{{ end }} {{ define "ding.link.title" }}{{ template "__subject" . }}{{ end }} {{ define "ding.link.content" }}#### \[{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ end }}\] **[{{ index .GroupLabels "alertname" }}]({{ template "__alertmanagerURL" . }})** {{ if gt (len .Alerts.Firing) 0 -}}  **====侦测到故障====** {{ template "__text_alert_list" .Alerts.Firing }} {{- end }} {{ if gt (len .Alerts.Resolved) 0 -}} 恢复列表: {{ template "__text_resolve_list" .Alerts.Resolved }} {{- end }} {{- end }
钉钉配置
钉钉插件启动
nohup ./prometheus-webhook-dingtalk --template.file=/data/prometheus/prometheus-webhook-dingtalk-0.3.0.linux-amd64/default.tmpl --ding.profile="cluster1=自己的tocken" &
效果