Skip to content

Commit 04b1463

Browse files
author
Administrator
committed
add labels of node
1 parent d2f5423 commit 04b1463

File tree

2 files changed

+55
-3
lines changed

2 files changed

+55
-3
lines changed

testSendwechat.sh

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
curl -X POST \
2+
-H "Content-Type: application/json" \
3+
-d '{
4+
"version": "4",
5+
"groupKey": "{}:{alertname=\"node节点cpu使用率过高\"}",
6+
"status": "firing",
7+
"Receiver": "webhook",
8+
"GroupLabels": {
9+
"alertname": "node节点cpu使用率过高"
10+
},
11+
"CommonLabels": {
12+
"alertname": "node节点cpu使用率过高",
13+
"container": "kube-rbac-proxy",
14+
"endpoint": "https",
15+
"instance": "172.32.2.191",
16+
"job": "node-exporter",
17+
"namespace": "monitoring",
18+
"pod": "node-exporter-8xpz6",
19+
"prometheus": "monitoring/k8s",
20+
"service": "node-exporter",
21+
"severity": "warning"
22+
},
23+
"CommonAnnotations": {
24+
"description": "集群名称:储能-ems-cn node名称:172.32.2.191 cpu使用率超过85%,当前值:4%",
25+
"summary": "node节点cpu使用率过高"
26+
},
27+
"ExternalURL": "http://alertmanager-main-0:9093",
28+
"Alerts": [
29+
{
30+
"labels": {
31+
"alertname": "node节点cpu使用率过高",
32+
"container": "kube-rbac-proxy",
33+
"endpoint": "https",
34+
"instance": "172.32.2.191",
35+
"job": "node-exporter",
36+
"namespace": "monitoring",
37+
"pod": "node-exporter-8xpz6",
38+
"prometheus": "monitoring/k8s",
39+
"service": "node-exporter",
40+
"severity": "warning"
41+
},
42+
"Annotations": {
43+
"description": "集群名称:储能-ems-cn node名称:172.32.2.191 cpu使用率超过85%,当前值:4%",
44+
"summary": "node节点cpu使用率过高"
45+
},
46+
"startsAt": "2024-09-10T06:47:48.741Z",
47+
"endsAt": "0001-01-01T00:00:00Z"
48+
}
49+
]
50+
}
51+
' http://10.40.61.135:8999/webhook\?key\=77d13f

transformer/transformer.go

+4-3
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package transformer
33
import (
44
"bytes"
55
"fmt"
6+
"strings"
67

78
"github.com/k8stech/alertmanager-wechatrobot-webhook/model"
89
)
@@ -40,7 +41,8 @@ func TransformToMarkdown(notification model.Notification, grafanaURL string, ale
4041
// 动态获取 var-NameSpace 和 var-Container
4142
namespace := labels["namespace"]
4243
pod := labels["pod"]
43-
node := labels["node"]
44+
instance := labels["instance"]
45+
ip := strings.Split(instance, ":")
4446
// 获取告警等级
4547
severity := labels["severity"]
4648
// 获取对应的颜色
@@ -58,8 +60,7 @@ func TransformToMarkdown(notification model.Notification, grafanaURL string, ale
5860
buffer.WriteString(fmt.Sprintf("\n>【内容】 %s\n", alert.Annotations["description"]))
5961
buffer.WriteString(fmt.Sprintf("\n>【当前状态】%s \n", status))
6062
buffer.WriteString(fmt.Sprintf("\n>【触发时间】 %s\n", alert.StartsAt.Format("2006-01-02 15:04:05")))
61-
//buffer.WriteString(fmt.Sprintf("\n [跳转Grafana看板](https://grafana.vnnox.com/d/PwMJtdvnr/k8s-chu-neng-cnanduat?orgId=1&var-origin_prometheus=&var-Node=All&var-NameSpace=%s&var-Container=%s&var-Pod=All)", namespace, container))
62-
buffer.WriteString(fmt.Sprintf("\n [跳转Grafana看板](https://%s?orgId=1&var-origin_prometheus=&var-Node=%s&var-NameSpace=%s&var-Pod=%s&var-Pod=All)", grafanaURL, node, namespace, pod))
63+
buffer.WriteString(fmt.Sprintf("\n [跳转Grafana看板](https://%s?orgId=1&var-origin_prometheus=&var-Node=%s&var-NameSpace=%s&var-Pod=%s&var-Pod=All)", grafanaURL, ip[0], namespace, pod))
6364
buffer.WriteString(fmt.Sprintf("\n [告警规则详情](http://%s/alerts?search=)", alertDomain))
6465
buffer.WriteString(fmt.Sprintf("\n [日志详情](https://aws-au-loki-grafana.vnnox.com/d/o6-BGgnnk/loki-kubernetes-logs?orgId=1&from=now-1h&to=now&var-query=&var-namespace=au&var-stream=All&var-container=vnnox-middle-oauth)"))
6566
buffer.WriteString(fmt.Sprintf("\n"))

0 commit comments

Comments
 (0)