diff --git a/Zabbix/scripts/actionExecutor.py b/Zabbix/scripts/actionExecutor.py index ec88733..9e176b5 100644 --- a/Zabbix/scripts/actionExecutor.py +++ b/Zabbix/scripts/actionExecutor.py @@ -107,7 +107,7 @@ def main(): "id": 1, "method": "event.acknowledge", "params": { - "eventids": queue_message["alert"]["details"]["eventId"], + "eventids": parse_from_details("eventId", alert_response), "message": "Acknowledged by " + alert_response.json()['data']['report'][ 'acknowledgedBy'] + " via Opsgenie" } @@ -134,6 +134,10 @@ def main(): else: logging.warning("Alert id does not exist ") +def parse_from_details(key,alert_response): + if key in alert_response.json()['data']["details"].keys(): + return alert_response.json()['data']["details"][key] + return "" if __name__ == '__main__': main() diff --git a/Zabbix/scripts/actionExecutorForZabbix4.py b/Zabbix/scripts/actionExecutorForZabbix4.py index 9eb67a2..9d2e618 100644 --- a/Zabbix/scripts/actionExecutorForZabbix4.py +++ b/Zabbix/scripts/actionExecutorForZabbix4.py @@ -57,7 +57,8 @@ def login_to_zabbix(user, password, url): return login_result.json()['result'] else: logging.error( - LOG_PREFIX + " Cannot login to Zabbix: Response " + str(login_result.status_code) + " " + str(login_result.content)) + LOG_PREFIX + " Cannot login to Zabbix: Response " + str(login_result.status_code) + " " + str( + login_result.content)) def main(): @@ -106,7 +107,7 @@ def main(): "id": 1, "method": "event.acknowledge", "params": { - "eventids": queue_message["alert"]["details"]["eventId"], + "eventids": parse_from_details("eventId", alert_response), "message": "Acknowledged by " + alert_response.json()['data']['report'][ 'acknowledgedBy'] + " via Opsgenie", "action": 6 @@ -134,5 +135,11 @@ def main(): logging.warning("Alert id does not exist ") +def parse_from_details(key, alert_response): + if key in alert_response.json()['data']["details"].keys(): + return alert_response.json()['data']["details"][key] + return "" + + if __name__ == '__main__': main() diff --git a/Zabbix/scripts/actionExecutorForZabbix6.py b/Zabbix/scripts/actionExecutorForZabbix6.py index 74af702..16e0bfe 100644 --- a/Zabbix/scripts/actionExecutorForZabbix6.py +++ b/Zabbix/scripts/actionExecutorForZabbix6.py @@ -106,7 +106,7 @@ def main(): "id": 1, "method": "event.acknowledge", "params": { - "eventids": queue_message["alert"]["details"]["eventId"], + "eventids": parse_from_details("eventId", alert_response), "message": "Acknowledged by " + alert_response.json()['data']['report'][ 'acknowledgedBy'] + " via Opsgenie", "action": 6 @@ -133,6 +133,10 @@ def main(): else: logging.warning("Alert id does not exist ") +def parse_from_details(key,alert_response): + if key in alert_response.json()['data']["details"].keys(): + return alert_response.json()['data']["details"][key] + return "" if __name__ == '__main__': main() diff --git a/release/oec-builder/oecScriptsVersion.json b/release/oec-builder/oecScriptsVersion.json index 6ebeb0f..024094e 100644 --- a/release/oec-builder/oecScriptsVersion.json +++ b/release/oec-builder/oecScriptsVersion.json @@ -22,7 +22,7 @@ "Splunk": "1.1.4", "Trackit": "1.1.3", "Xmpp": "1.1.3", - "Zabbix": "1.1.9", + "Zabbix": "1.1.10", "Zendesk": "1.1.3", "Zenoss": "1.1.3" }