Advertisement
Guest User

Untitled

a guest
Sep 6th, 2016
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.65 KB | None | 0 0
  1. from pyzabbix import ZabbixAPI
  2. import os
  3. import time
  4. iteration = 1
  5. z = ZabbixAPI('https://public.fuel.local/zabbix')#,user='admin',password='zabbix')
  6. z.login('admin', 'zabbix')
  7.  
  8. log = open('/tmp/zabbix_log5', 'w')
  9. while iteration < 3000:
  10.   try:
  11.     log.write('start iteration {}\n'.format(iteration))
  12.     templates = z.do_request('template.get')
  13.  
  14.     templateid = []
  15.     for i in templates['result']:
  16.       templateid.append(i['templateid'])
  17.  
  18.     log.write('templateids:' + str(templateid) + '\n')
  19.     if templateid:
  20.         z.do_request('template.delete', params=templateid)
  21.         log.write('delete templates' + '\n')
  22.  
  23.     #templates = z.do_request('template.get')
  24.  
  25.     #templateid = []
  26.     #for i in templates['result']:
  27.     #  templateid.append(i['templateid'])
  28.     rule = {'createMissing': True,'updateExisting': True}
  29.     rules = {'applications':rule, 'discoveryRules': rule, 'graphs': rule, 'groups': rule, 'images': rule, 'items': rule, 'maps': rule, 'screens': rule, 'templates': rule, 'templateScreens': rule, 'triggers': rule}
  30.     dirname = '/etc/puppet/modules/zabbix/files/import/'
  31.     names = os.listdir(dirname)
  32.     for template in names:
  33.       temp = open(dirname + '/' + template)
  34.       log.write('import template : ' + dirname + '/' + template + '\n')
  35.       z.do_request('configuration.import',params={'format':'xml','source':temp.read(),'rules':rules})
  36.       temp.close()
  37.     log.write('end iteration {} \n'.format(iteration))
  38.     log.write('========================================== \n')
  39.     log.write('sleep 30 sec\n')
  40.     time.sleep(30)
  41.     iteration += 1
  42.   except Exception as e:
  43.     log.write(str(e))
  44.  
  45. log.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement