Skip to content

Instantly share code, notes, and snippets.

@isaqueprofeta
Last active June 19, 2020 01:56
Show Gist options
  • Save isaqueprofeta/bbf39c4640fc1d8163eea23c07d656bf to your computer and use it in GitHub Desktop.
Save isaqueprofeta/bbf39c4640fc1d8163eea23c07d656bf to your computer and use it in GitHub Desktop.
Modelo base para criar saídas lld para o zabbix
#!/usr/bin/python3.5
# Bibliotecas necessárias
import json,collections
# Prepara container lld do zabbix
# Versão < 4.2:
# lld = { 'data' : [] }
# Versão >= 4.2:
lld = []
# Lógica de acesso a fonte dos dados do LLD
# O array de dicionario funciona como teste para esse exemplo
# Sua lógica pode ser mais complexa
dados = [
{ 'indice': '1', 'descricao': 'Indice A'},
{ 'indice': '2', 'descricao': 'Indice B'},
{ 'indice': '3', 'descricao': 'Indice C'},
]
# Popula container lld do zabbix com os dados
# Faz um loop lendo os dados do array de dicionários do exemplo
for dado in dados:
# Versão < 4.2:
# lld['data'].append(
# Versão >= 4.2:
lld.append(
collections.OrderedDict([
('{#MEU_INDICE}', dado['indice']),
('{#MEU_DESCRICAO}', dado['descricao']),
])
)
json_lld = json.dumps(lld, ensure_ascii=False)
# Retorna json lld no formato do zabbix
print(json_lld)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment