Ad Widget

Collapse

Возврат оповещений, select_alerts

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Const5000
    Junior Member
    • Aug 2018
    • 1

    #1

    Возврат оповещений, select_alerts

    Добрый день!
    Каким образом возможно вывести список оповещений. как это делается с возвратом узлов сети. по заданным параметрам?
    from pyzabbix import ZabbixAPI, ZabbixAPIException
    import time
    z = ZabbixAPI('https://............', user='ivan', password='321654')
    since = time.mktime((2018,8,1,9,0,0,0,0,0))
    events = z.event.get(
    groupids=21,
    selectHosts=['host'],
    select_alerts=???,
    time_from=since)
    for event in events:
    print(event['hosts'][0]['host'],event['alerts'][0][?????????])
  • Fenke
    Junior Member
    • Aug 2018
    • 2

    #2
    Добрый день, если найдете ответ отпишите пожалуйста ковыряю похожую. проблему
    Last edited by Fenke; 16-08-2018, 10:20.

    Comment

    • Fenke
      Junior Member
      • Aug 2018
      • 2

      #3
      Этот вариант , дергает все активные тригеры на время исполнения , не знаю так вам нужно или нет




      from pyzabbix import ZabbixAPI
      import re
      import json
      import datetime
      now = datetime.datetime.now()
      print ('Не отвечают на пинг на', now.strftime("%d-%m-%Y %H:%M"),
      ' ')
      zapi = ZabbixAPI(url='http://********/****/api_jsonrpc.php', user='******', password='********')
      print ("Connected", zapi.api_version())
      triggers = zapi.trigger.get(
      only_true=1,
      skipDependent=1,
      monitored=1,
      active=1,
      output='extend',
      expandDescription=1,
      selectHosts=['host'],
      )

      # Do another query to find out which issues are Unacknowledged
      unack_triggers = zapi.trigger.get(
      only_true=1,
      skipDependent=1,
      monitored=1,
      active=1,
      output='extend',
      expandDescription=1,
      selectHosts=['host'],
      withLastEventUnacknowledged=1,
      )
      unack_trigger_ids = [t['triggerid'] for t in unack_triggers]
      for t in triggers:
      t['unacknowledged'] = True if t['triggerid'] in unack_trigger_ids \
      else False

      # Print a list containing only "tripped" triggers
      for t in triggers:
      if int(t['value']) == 1:

      print("{0} - {1} {2}".format(t['hosts'][0]['host'],
      t['description'],
      '' if t['unacknowledged'] else '')

      )


      Comment

      Working...