Source
xxxxxxxxxx
else if ( params.event_source == 0 && params.event_value == 1 && params.event_update_status == 1 && params.event_update_action.includes('acknowledged'))
zabbix_export
version'7.0'
media_types
name Opsgenie
type WEBHOOK
parameters
name alert_message
value'{ALERT.MESSAGE}'
name alert_subject
value'{ALERT.SUBJECT}'
name event_id
value'{EVENT.ID}'
name event_nseverity
value'{EVENT.NSEVERITY}'
name event_source
value'{EVENT.SOURCE}'
name event_tags_json
value'{EVENT.TAGSJSON}'
name event_update_action
value'{EVENT.UPDATE.ACTION}'
name event_update_status
value'{EVENT.UPDATE.STATUS}'
name event_value
value'{EVENT.VALUE}'
name opsgenie_api
value'<put your opsgenie api>'
name opsgenie_tags
name opsgenie_teams
name opsgenie_token
value'<put your token>'
name opsgenie_web
value'<put your opsgenie web>'
name severity_average
value P3
name severity_default
value P5
name severity_disaster
value P1
name severity_high
value P2
name severity_information
value P5
name severity_not_classified
value P5
name severity_warning
value P4
name status_counter
value'25'
name trigger_id
value'{TRIGGER.ID}'
name zbxurl
value'{$ZABBIX.URL}'
name zbxuser
value'{USER.FULLNAME}'
status DISABLED
script
var method,
Media = {
params: {},
name: '',
labels: [],
HTTPProxy: '',
setParams: function (params) {
if (typeof params !== 'object') {
return;
}
Media.params = params;
Media.params.api += Media.params.api.endsWith('/') ? '' : '/';
Media.params.web += Media.params.web.endsWith('/') ? '' : '/';
},
setProxy: function (HTTPProxy) {
if (typeof HTTPProxy !== 'undefined' && HTTPProxy.trim() !== '') {
Media.HTTPProxy = HTTPProxy;
}
},
setTags: function(event_tags_json) {
if (typeof event_tags_json !== 'undefined' && event_tags_json !== ''
&& event_tags_json !== '{EVENT.TAGSJSON}') {
try {
var tags = JSON.parse(event_tags_json),
label;
tags.forEach(function (tag) {
if (typeof tag.tag === 'string') {
label = (tag.tag + (typeof tag.value !== 'undefined'
&& tag.value !== '' ? (':' + tag.value) : '')).replace(/\s/g, '_');