Thruk – Gerando relatório de disponibilidade em formato JSON

Vou demonstrar aqui em alguns artigos uma maneira de gerar relatórios de disponibilidade em um formato que venho utilizando a bastante tempo, porém diretamente no Excel, sem precisar copiar e colar nada. Você que utiliza CheckMK, Nagios, Icinga, Naemon e Shinken que possuem compatibilidade com o Livestatus vão conseguir gerar o mesmo tipo de relatório. A primeira parte é criar o arquivo em formato json.

Observações: Vou usar como base um relatório de disponibilidade de dispositivos e não de componentes.

Vou usar o próprio site demo do Thruk que já possui bastante informação que poderemos utilizar:

Usuário: admin

Senha: admin

http://demo.thruk.org/

Selecione a opção Availability:

Selecione a opção Host(s) e em seguida Continue to Step 2:

Vou gerar um relatório para todos os dispositivos. Selecione a opção ** ALL HOSTS ** e Continue to Step 3:

Vou gerar um relatório dos últimos 3 meses. Selecione a opção Last 3 Months:

Vou querer que caso o Thruk não tenha informações do estado inicial ele considere que o dispositivo estava disponível e que os seus componentes também tenham o estado OK. Altere a opção First Assumed Host State para Host UP e First Assumed Service State para Service OK:

Selecione a opção JSON e Create Availability Report:

O relatório será gerado:

Uma dica é guardar a URL indicada abaixo que pode ser modificada de acordo com sua necessidade para gerar o relatório de maneira mais rápida:

https://demo.thruk.org/demo/thruk/cgi-bin/avail.cgi?show_log_entries=&host=all&timeperiod=today&rpttimeperiod=&assumeinitialstates=yes&assumestateretention=yes&assumestatesduringnotrunning=yes&includesoftstates=no&initialassumedhoststate=0&initialassumedservicestate=0&view_mode=html

Ajuste a URL para o formato JSON, modifique o final de html para json:

https://demo.thruk.org/demo/thruk/cgi-bin/avail.cgi?show_log_entries=&host=all&timeperiod=today&rpttimeperiod=&assumeinitialstates=yes&assumestateretention=yes&assumestatesduringnotrunning=yes&includesoftstates=no&initialassumedhoststate=0&initialassumedservicestate=0&view_mode=html

Para:

https://demo.thruk.org/demo/thruk/cgi-bin/avail.cgi?show_log_entries=&host=all&timeperiod=today&rpttimeperiod=&assumeinitialstates=yes&assumestateretention=yes&assumestatesduringnotrunning=yes&includesoftstates=no&initialassumedhoststate=0&initialassumedservicestate=0&view_mode=json

Para finalizar pegue todo o conteúdo exibido e salve em um arquivo com a extensão JSON.

https://stackoverflow.com/questions/46130132/converting-unix-time-into-date-time-via-excel

=(A1/86400)+25569

=(A1/86400)+25569

=(A1/86400)+25569

Translate »