diff --git a/.changeset/plain-boxes-carry.md b/.changeset/plain-boxes-carry.md new file mode 100644 index 0000000..3f848e4 --- /dev/null +++ b/.changeset/plain-boxes-carry.md @@ -0,0 +1,5 @@ +--- +'grafana-zabbix': minor +--- + +Feat: Show details about acknowledge actions diff --git a/src/panel-triggers/components/Problems/AcknowledgesList.tsx b/src/panel-triggers/components/Problems/AcknowledgesList.tsx index 1c75fb1..01065fb 100644 --- a/src/panel-triggers/components/Problems/AcknowledgesList.tsx +++ b/src/panel-triggers/components/Problems/AcknowledgesList.tsx @@ -26,7 +26,7 @@ export default function AcknowledgesList(props: AcknowledgesListProps) {
{acknowledges.map((ack) => ( - {ack.message} + {formatAckMessage(ack)} ))}
@@ -41,3 +41,27 @@ function formatUserName(ack: ZBXAcknowledge): string { return `${ack.name} ${ack.surname}`.trim(); } } + +function formatAckMessage(ack: ZBXAcknowledge): string { + let msg = ''; + let action = parseInt(ack.action, 10); + + if ((action & 2) !== 0) { + msg = msg + '(Acknowledged) '; + } else if ((action & 16) !== 0) { + msg = msg + '(Unacknowledged) '; + } + + if ((action & 32) !== 0) { + msg = msg + '(Suppressed) '; + } else if ((action & 64) !== 0) { + msg = msg + '(Unsuppressed) '; + } + + if ((action & 8) !== 0) { + msg = msg + '(Changed severity) '; + } + + msg = msg + ack.message; + return msg.trim(); +}