Check Modified
Publicado por Leonardo Berbert Gomes (última atualização em 03/12/2021)
[ Hits: 777 ]
Homepage: https://www.linkedin.com/in/leoberbert
Script simples que verifica se um arquivo de log passado como entrada, está a mais de 1 hora sem incremento, caso afirmativo, envia uma mensagem(webhook) json para outra API através do método POST.
./check_modified.py /tmp/application.log my_application_name
URGENTE - Aplicacao my_application_name na maquina dolly sem incrementar o log /tmp/application.log a mais de 1h.
Fonte: https://github.com/leoberbert/check_modified
#!/usr/bin/python # -*- coding: utf-8 -*- # Created: Mon Jun 7 12:59:31 -03 2021 # Autor: Leonardo Berbert import os.path as path import time import requests import os import sys threshold = 1 #In hour scriptname = sys.argv[0].split('/')[-1].split('.')[0] try: file = sys.argv[1] app = sys.argv[2] except IndexError as e: print("") print("Usage: ./" + scriptname + ".py" " /tmp/application.log my_application_name") print("") exit(1) myhost = os.uname()[1] def check_older(file): file_time = path.getmtime(file) return ((time.time() - file_time) / 3600) def notify(app,myhost): endpoint='http://10.168.10.10' + ':4000/notify' headers={'Content-Type': 'application/json'} alertMessage = 'URGENTE - Aplicacao ' + app + ' na maquina ' + myhost + " sem incrementar o log " + file + " a mais de " + str(threshold) + "h." json_data='''{"message": "''' + alertMessage + '''"}''' try: response=requests.post(url=endpoint, data=json_data, headers=headers) except requests.exceptions.RequestException as e: print('Ocurred the following error on request: ' + str(e)) stat_file = round(check_older(file)) if stat_file > threshold: notify(app,myhost) © 2021 GitHub, Inc.
Mini-dicionário de termos em Python
Estrutura de repetição for e while (Com tratamento de erros)
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Vou voltar moderar conteúdos de Dicas e Artigos (2)
Melhorando a precisão de valores flutuantes em python[AJUDA] (8)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta