Graylog: Exemplo: Enviar logs a partir de Python

Esta documentação faz parte do guia Utilizar com Python. Consulte o guia completo aqui: Como enviar logs de Python para o Graylog.

👋 Bem-vindo à documentação da Stackhero

A Stackhero disponibiliza uma solução Graylog cloud totalmente gerida, concebida para garantir rapidez e simplicidade. Pode:

  • Contar com um servidor de email SMTP dedicado e ilimitado incluído no seu serviço.
  • Aplicar atualizações de forma simples, com apenas um clique, sem necessidade de intervenção manual.
  • Utilizar um domínio personalizado protegido por HTTPS (por exemplo, https://logs.sua-empresa.com), proporcionando à sua equipa um acesso direto e seguro.
  • Beneficiar de elevada performance e segurança numa infraestrutura privada e dedicada, sem recursos partilhados nem vizinhos ruidosos.

Concentre-se nos seus dados, não nas ferramentas: pode começar a utilizar a solução Graylog cloud hosting da Stackhero em apenas alguns minutos.

Para este exemplo, pode utilizar a biblioteca graypy. Para começar, basta instalá-la com pip install graypy.

De seguida, crie um ficheiro chamado graylog-example.py e substitua <XXXXXX>.stackhero-network.com pelo hostname do seu servidor. Eis um exemplo de script que pode experimentar:

import logging
import graypy

my_logger = logging.getLogger('test_logger')
my_logger.setLevel(logging.DEBUG)

handler = graypy.GELFTLSHandler('<XXXXXX>.stackhero-network.com', 12201)
my_logger.addHandler(handler)

my_logger.debug('This is a test from a Python script!')

Para visualizar os seus logs, abra o painel de administração do Graylog, vá ao separador "Search", clique no ícone de play e defina a atualização para cada segundo. Pode executar o seu script com:

python graylog-example.py

Assim que o script for executado, a sua mensagem de log será enviada para o Graylog e deverá vê-la aparecer nos resultados da pesquisa.

Primeiro log recebido no GraylogPrimeiro log recebido no Graylog

Ao clicar na mensagem "This is a test from a Python script!", verá detalhes úteis como o nome do script e a linha exata que gerou o log.

Detalhe do logDetalhe do log