more descriptive alert transition logs (#19297)
Costa Tsaousis committed
Dec 30, 2024 at 06:52 UTC
62297e4d1e0bc6db2a32f2f48288581dcdcf92c9
1 file changed
+33
-9
src/health/health_log.c
+33
-9
@@ -50,9 +50,12 @@ void health_log_alert_transition_with_trace(RRDHOST *host, ALARM_ENTRY *ae, int
50
errno_clear();
51
52
ND_LOG_FIELD_PRIORITY priority = NDLP_INFO;
53
+ const char *emoji = "🌀";
54
+ const char *transitioned = (ae->old_status < ae->new_status) ? "raised" : "lowered";
55
56
switch(ae->new_status) {
57
case RRDCALC_STATUS_UNDEFINED:
58
+ emoji = "❓";
59
if(ae->old_status >= RRDCALC_STATUS_CLEAR)
60
priority = NDLP_NOTICE;
61
else
@@ -61,34 +64,55 @@ void health_log_alert_transition_with_trace(RRDHOST *host, ALARM_ENTRY *ae, int
64
65
default:
66
case RRDCALC_STATUS_UNINITIALIZED:
67
+ emoji = "⏳";
68
+ priority = NDLP_DEBUG;
69
+ break;
70
+
71
case RRDCALC_STATUS_REMOVED:
72
+ emoji = "🚫";
73
priority = NDLP_DEBUG;
74
break;
75
76
case RRDCALC_STATUS_CLEAR:
69
- if(ae->old_status == RRDCALC_STATUS_UNINITIALIZED)
77
+ if(ae->old_status == RRDCALC_STATUS_UNINITIALIZED) {
78
+ emoji = "💚";
79
priority = NDLP_DEBUG;
71
- else
80
+ }
81
+ else if(ae->old_status <= RRDCALC_STATUS_CLEAR) {
82
+ emoji = "✅";
83
priority = NDLP_INFO;
84
+ }
85
+ else {
86
+ emoji = "💚";
87
+ priority = NDLP_NOTICE;
88
+ }
89
break;
90
91
case RRDCALC_STATUS_WARNING:
76
- if(ae->old_status < RRDCALC_STATUS_WARNING)
92
+ if(ae->old_status <= RRDCALC_STATUS_WARNING) {
93
+ emoji = "⚠️";
94
priority = NDLP_WARNING;
95
+ }
96
+ else {
97
+ emoji = "🔶";
98
+ priority = NDLP_INFO;
99
+ }
100
break;
101
102
case RRDCALC_STATUS_CRITICAL:
81
- if(ae->old_status < RRDCALC_STATUS_CRITICAL)
82
- priority = NDLP_CRIT;
103
+ emoji = "🔴";
104
+ priority = NDLP_CRIT;
105
break;
106
}
107
108
netdata_logger(NDLS_HEALTH, priority, file, function, line,
87
- "ALERT '%s' of instance '%s' on node '%s', transitioned from %s to %s.\n"
88
- "%s value got from %f %s, to %f %s.",
109
+ "ALERT '%s' of '%s' on node '%s', %s from %s to %s.\n"
110
+ "%s %s on %s.\n"
111
+ "%s:%s:%s value got from %f %s, to %f %s.",
112
string2str(ae->name), string2str(ae->chart), string2str(host->hostname),
90
- rrdcalc_status2string(ae->old_status), rrdcalc_status2string(ae->new_status),
91
- string2str(ae->name),
113
+ transitioned, rrdcalc_status2string(ae->old_status), rrdcalc_status2string(ae->new_status),
114
+ emoji, string2str(ae->info), string2str(host->hostname),
115
+ string2str(host->hostname), string2str(ae->chart), string2str(ae->name),
116
ae->old_value, string2str(ae->units),
117
ae->new_value, string2str(ae->units));
118
}