triggers panel: fix event acknowlenges

This commit is contained in:
Alexander Zobnin
2017-12-11 12:52:58 +03:00
parent 087a4de9a0
commit 1abe858c61
5 changed files with 38 additions and 13 deletions

View File

@@ -50,7 +50,7 @@
<i class="fa fa-question-circle"></i>
</span>
<ack-tooltip ack="trigger.acknowledges" trigger="trigger"
<ack-tooltip ng-if="trigger.lastEvent" ack="trigger.acknowledges" trigger="trigger"
on-ack="ctrl.acknowledgeTrigger" context="ctrl">
</ack-tooltip>
</div>

View File

@@ -369,6 +369,10 @@ System.register(['lodash', 'jquery', 'moment', '../datasource-zabbix/utils', 'ap
return ack;
});
}
if (!trigger.lastEvent.eventid) {
trigger.lastEvent = null;
}
});
return triggerList;
@@ -487,13 +491,22 @@ System.register(['lodash', 'jquery', 'moment', '../datasource-zabbix/utils', 'ap
}, {
key: 'acknowledgeTrigger',
value: function acknowledgeTrigger(trigger, message) {
var eventid = trigger.lastEvent.eventid;
var _this8 = this;
var eventid = trigger.lastEvent ? trigger.lastEvent.eventid : null;
var grafana_user = this.contextSrv.user.name;
var ack_message = grafana_user + ' (Grafana): ' + message;
return this.datasourceSrv.get(this.panel.datasource).then(function (datasource) {
var zabbixAPI = datasource.zabbix.zabbixAPI;
return zabbixAPI.acknowledgeEvent(eventid, ack_message);
}).then(this.onRefresh.bind(this));
return this.datasourceSrv.get(trigger.datasource).then(function (datasource) {
if (eventid) {
return datasource.zabbix.zabbixAPI.acknowledgeEvent(eventid, ack_message);
} else {
return Promise.reject({ message: 'Trigger has no events. Nothing to acknowledge.' });
}
}).then(this.onRefresh.bind(this)).catch(function (err) {
_this8.error = err.message || "Acknowledge Error";
_this8.events.emit('data-error', err);
console.log('Panel data error:', err);
});
}
}, {
key: 'getCurrentTriggersPage',

File diff suppressed because one or more lines are too long