Loging Python syslog

Loging Python syslog
A função python de "log de syslog" pode fazer com que cada um dos sistemas seja o registrador de sistemas receber uma mensagem serial desta função. Quando o software está em posição de execução, o madeireiro mantém nota de acontecimentos funcionais. Aqui está o argumento de ênfase alternativa no syslog, que equivale a registrar informações dos conjuntos como a principal prioridade. Essencialmente, podemos dizer que o log de syslog no python permite que os componentes de rede se conectem com um host de madeira usando um formato de mensagem comum. Foi desenvolvido e criado principalmente para permitir os dispositivos de rede de monitoramento.

Uma interface syslog pode ser usada pelos sistemas para transmitir as mensagens de alerta em uma variedade de circunstâncias distintas. O método real de monitorar as ações tomadas por software para a criação, operação e diagnóstico de registro de software é crucial. Há relativamente poucas chances de encontrarmos a fonte do problema se nosso software falhar e não mantemos os registros de madeira suficientes. Certos programadores utilizam a idéia de publicar as frases para verificar se foram implementadas separadamente ou se um erro ocorreu. No entanto, a impressão não é uma jogada inteligente. Para scripts básicos, pode ser a resposta para nossos problemas. No entanto, a solução de impressão ficará aquém dos programas complexos.

Como implementar o log de syslog no python

Uma linguagem de programação python estabelecida possui um pacote chamado log que permite a publicação das atualizações de mensagens de status para arquivos ou outros fluxos de saída. O registro pode fornecer os detalhes de qual parte do programa é executada e os problemas que surgem. Vamos começar a implementar o código Python para registro de syslog, onde tomamos um exemplo para explicá -lo de uma maneira melhor. Nosso código para Python começa importando algumas bibliotecas onde importamos primeiro a biblioteca de "log", já que estamos realizando o fenômeno de registro em nosso artigo.

Depois disso, importamos o “registro.Biblioteca de manipuladores para qualquer caso que possa causar qualquer erro para que pudesse lidar e resolver quaisquer casos de exceção para erros. A terceira biblioteca que importamos é "sysloghandler" da família de "logar.manipuladores ”para fazer a interação de registro com nosso sistema operacional.

Na última biblioteca, importamos o "formatador" da família "log" do arquivo interativo de Python. Depois de todas as bibliotecas, agora definimos uma nova função do nome "Sysmain", que poderia ser chamado de nossa principal função do código do programa. Agora, criamos uma alocação de memória do nome "sys_logger" e atribuímos a função do "loging.getLogger () ”função e conceda a declaração de“ Melhor Logger ”. Depois disso, usamos o “sys_logger.Setlevel (log.Debug) "para configurar o nível para o sistema interagir com o erro de registro que ocorre durante seu processo de registro para lidar com isso.

Nesta etapa, agora criamos o "SYS_HANDLER" e o designamos como uma função "syslogHandler ()". Em seguida, fornecemos o caminho do nosso sistema, juntamente com alguns arquivos interativos relacionados ao login.

Depois de atribuirmos a via de endereço do sistema para "log syslog", usamos o "sys_logger.função addHandler () "e chame a função" sys_handler "dentro do" sys_logger.addHandler () ”função. Criamos uma nova função e a nomeamos como "logging_format ()" e atribuímos a mensagem de registro e o nome do arquivo junto com o nome de nível. Agora, pegamos o “sys_handler.SetFormatter () ”função e forneça o“ logging_format ”para a função formatadora.

Para a última função, usamos o “sys_logger.Debug () ”e concede -o como valor como uma declaração de“ meu python!!”. Em seguida, cancelamos a função principal usando a cláusula "se" e retornamos a função principal no último "sysmain ()" para passar pelo processo de registro.

O código para o "log syslog" é fornecido a seguir no formulário de texto para os outros usuários implementá -lo por si mesmo:

Código:

importar log
importar log.manipuladores
do log.Manipuladores importam syslogHandler
De login importar formatador
def sysmain ():
Sys_logger = log.getLogger ('Best Logger')
Sys_logger.Setlevel (log.DEPURAR)
Sys_handler = syslogHandler (instalação = syslogHandler.Log_daemon,
endereço = '/usuários/aqsayasin')
Sys_logger.addHandler (sys_handler)
Logging_format = '[%(nível) S]%(nome do arquivo) s:%(funcname) s:%(lineno) d \
"%(mensagem) s" '
Sys_handler.setFormatter (formatter (fmt = logging_format))
Sys_logger.Debug ('Meu Python!!')
se __name__ == '__main__':
Sysmain ()

Depois de concluir o trabalho do código, analisamos o registro do sistema que exibe a data atual de "Nov" como o mês, "21" como a data e "01:05:12" como a hora do nosso sistema operacional. Nosso nome de usuário do sistema, "Aqsayasin", também recebe os detalhes do Python de "9851" e depra os detalhes ao longo do "syslog" na função principal com nossa declaração impressa no syslog, que é "meu python!!”.

A primeira linha deste programa é semelhante à que executamos mais cedo no código Python. Ele exporta o formatador junto com as bibliotecas "log", "manipuladores" e "sysloghandler". Agora, adicionamos a “sysloghandler” semelhante que adicionamos anteriormente no código dentro de uma função “main ()” depois de criar um madrão e definir seu nível padrão para “Debug”. Em seguida, escrevemos um formatador e o incluímos com o registrador. Podemos ver como a parte das funções corporativas gerais contrastando essa notificação com o texto de formatação. A string exibe o "namename", "nome do arquivo", "funcname", "lineno" e "mensagem" no registro da tela:

A mensagem é exibida como mostra a declaração fornecida no “syslog.função principal py ”,“ meu python!!”, Junto com a função“ sysmain () ”.

Por fim, temos o "nome do nível" como equalizado ao "depuração" no sistema de log. Podemos ver o caminho, o nome da função e o número da linha nas partes restantes da mensagem que nos permitem entender exatamente onde a mensagem de log é originada. O nível de mensagens é indicado no início de algo como a carta de colchetes quadrados. O "[Debug]" da expressão textual de um nível de mensagem de registro é substituído por "[%(namename) s]".

Agora, vamos tentar implementar outro exemplo para o tópico Python de "Logging Syslog", importando três bibliotecas que usamos nos exemplos anteriores que são "log", "logging.manipulador "e" sys ". Depois de obter essas três bibliotecas, criamos uma função de "sys_logger" e atribuímos o "Logging.getLogger () ”função. A segunda função do “sys_logger.A função SetLevel () "fornece o" log.Info ”comando nele.

Em seguida, atribuímos o endereço de registro do nosso endereço de host local que é "9238" na nova função criada que é "syslogging". Nós então chamamos o “sys_logger.função addHandler () ”para lidar com casos de manuseio de exceções que ocorre em“ syslogging ”. Por fim, usamos a função "Print ()" para exibir o resultado do registro de funções e cancelar o "sys_logger.função manipuladora "na função" print () ".

O segundo exemplo do "log syslog" que implementamos no Python é fornecido no seguinte em forma textual:

Código:

importar log
importar log.manipuladores
Importar sistemas
Sys_logger = log.getLogger ()
Sys_logger.Setlevel (log.Informação)
syslogging = log.manipuladores.SyslogHandler (endereço = ("localhost", 9238)))
Sys_logger.AddHandler (syslogging)
Imprimir (sys_logger.manipuladores)

Quando o código é concluído, ele retorna com uma mensagem de prompt de saída quando o programa termina a instrução para registrar o programa em execução. Se o código parar e queremos continuar, podemos iniciar outro registro do sistema. Se queremos sair do aplicativo de console, pressionamos o botão "Enter" e o sistema registra o console atual do aplicativo.

Conclusão

Neste artigo, discutimos o tópico de "log syslog" da linguagem Python, implementando os exemplos de código e as explicações vitais necessárias. Mantivemos dois grandes exemplos para este tópico de acordo com o melhor de nosso conhecimento. O primeiro exemplo fez algumas depuras de depuração para o log do sistema, que é fornecido juntamente com os detalhes do nome da função e da via do usuário. Enquanto os segundos exmos usavam o conceito de arquivo de console saindo do fenômeno e pressionando o botão "Enter" para registrar o registro do sistema.