Pitão

Como usar o Django Logging?

Como usar o Django Logging?
Todo programador enfrenta erros ao escrever código para desenvolver qualquer aplicativo. A depuração é usada pelo codificador para resolver os erros da aplicação. Seu recurso de registro torna o processo de depuração mais fácil, salvando a saída de mensagens de erro, aviso e informações em um arquivo. Essas mensagens ajudam os codificadores a rastrear os eventos, entender o motivo da saída indesejada e modificar o código corretamente para criar um aplicativo sem erros. Python tem um módulo de registro integrado para realizar tarefas relacionadas ao registro de forma mais eficiente. Django é um framework Python popular que usa o módulo de registro embutido em Python para propósitos de depuração. Como o módulo de registro em Python pode ser usado no aplicativo Django para fins de depuração será explicado neste tutorial.

Diferentes partes do Django Logging

O registro do Django contém quatro tipos de configurações que são explicadas abaixo.

1. Django Logger
O logger registra os eventos quando o aplicativo é executado, e o log é chamado. As entradas de registro são armazenadas em um arquivo categorizando-as em diferentes níveis de registro. Cada nível de registro indica a gravidade dos eventos. Os objetivos desses níveis de registro são mencionados abaixo:

  1. DEPURAR
    Ele fornece informações de sistema de baixo nível para depuração.
  1. INFO
    Ele fornece informações gerais.
  1. ERRO
    Ele fornece informações sobre o principal problema do aplicativo.
  1. AVISO
    Ele fornece informações sobre o pequeno problema do aplicativo.
  1. CRÍTICO
    Ele fornece informações sobre o problema crítico do aplicativo.

2. Django Handler
A principal tarefa do manipulador é transmitir as informações de log que estão armazenadas no arquivo de log. O módulo de registro contém muitos tipos de manipuladores e vários deles podem ser definidos para o mesmo registrador.

3. Django Formatter
É usado para formatar os dados de registro. Os dados do manipulador não podem ser enviados diretamente para o arquivo de log e os dados do manipulador exigem que sejam convertidos usando o formatador antes de enviar. O formatador converte os registros de log na string. O formato dos dados depende da lógica de negócios do manipulador.

4. Filtro Django
É usado para filtrar as mensagens de log. Não é necessário armazenar todas as mensagens de log no arquivo de log. Manipuladores diferentes podem ser usados ​​para mensagens diferentes e as mensagens de log necessárias podem ser filtradas usando os filtros necessários.

Pré-requisitos

Antes de praticar o script deste tutorial, você deve concluir as seguintes tarefas:

  1. Instale o Django versão 3+ no Ubuntu 20+ (de preferência)
  2. Crie um projeto Django
  3. Execute o servidor Django para verificar se o servidor está funcionando corretamente ou não.

Configurar um aplicativo Django

  1. Execute o seguinte comando para criar um aplicativo Django chamado logapp.
$ python3 manage.py startapp logapp
  1. Execute o seguinte comando para criar o usuário para acessar o banco de dados Django. Se você já criou o usuário antes, não precisa executar o comando.
$ python3 manage.py cria superusuário
  1. Adicione o nome do aplicativo no INSTALLED_APP parte de py Arquivo.
INSTALLED_APPS = [

'logapp'
]

Defina as informações de registro nas configurações.py

Abra o definições.py arquivo da pasta do projeto Django e adicione o seguinte conteúdo para definir as informações de registro. As propriedades do manipuladores e madeireiros estão definidos aqui. De acordo com os valores da propriedade de registro, DEPURAR as informações de registro de nível serão armazenadas em um arquivo de registro denominado djangoapp.registro quando o aplicativo Django será executado.

# Django Logging Information
LOGGING =
# Defina a versão de registro
'versão 1,
# Habilite os loggers existentes
'disable_existing_loggers': False,
# Defina os manipuladores
'handlers':
'Arquivo':
'nível': 'DEBUG',
'classe': 'registro.FileHandler ',
'filename': 'djangoapp.registro',
,
'console':
'classe': 'registro.StreamHandler ',
,
,
# Defina os loggers
'loggers':
'django':
'handlers': ['arquivo'],
'nível': 'DEBUG',
'propagar': Verdadeiro,
,
,

Abra o djangoapp.registro arquivo para verificar se as entradas de registro estão armazenadas no arquivo ou não.

Definir as informações de registro nas visualizações.py

As informações de registro podem ser definidas usando o arquivo de visualização também. Abra o Visualizações.py arquivo do logapp pasta e substitua o conteúdo pelo seguinte script. Neste script, formatadores, manipuladores, e madeireiros partes do registro do Django são definidas no config.dictConfig () método. DEPURAR as informações de registro de nível serão armazenadas em um arquivo de registro denominado djangoapp.registro e será impresso no console quando o aplicativo Django for executado. índice() função é usada para enviar um texto de título simples para o navegador e o display_log () função é definida para enviar um texto simples no terminal e um texto de título para o navegador.

Visualizações.py

# Importe o módulo de registro
registro de importação
# Importe HttpResponse para enviar dados ao navegador
de django.http import HttpResponse
# Defina as configurações de registro
exploração madeireira.config.dictConfig (
# Defina a versão de registro
'versão 1,
# Habilite os loggers existentes
'disable_existing_loggers': False,
# Defina os formatadores
'formatadores':
'console':
'formato': '% (mensagem) s'
,
'Arquivo':
'formato': '% (mensagem) s'
,
# Defina os manipuladores
'handlers':
'console':
'classe': 'registro.StreamHandler ',
'formatador': 'console'
,
'Arquivo':
'nível': 'DEBUG',
'classe': 'registro.FileHandler ',
'formatador': 'arquivo',
'filename': 'djangoapp.registro'

,
# Defina os loggers
'loggers':
'django':
'nível': 'DEBUG',
'manipuladores': ['arquivo', 'console'],



)
# Crie o objeto loggers
logger = registro.getLogger ('__ name__')
# Defina a função para a página de índice
índice def (pedido):
return HttpResponse ("

Este é um aplicativo Django

")
# Defina a função para a página de log
def display_log (solicitação):
# Envie o teste!! logar mensagem para saída padrão
madeireiro.erro ("Testando o log do Django…")
return HttpResponse ("

Django Logging Message

")

Modifique o conteúdo do urls.py arquivo com o seguinte script. No script, o caminho vazio (”) caminho é definido para chamar o índice() função das visualizações e do 'registro/'caminho é usado para chamar o display_log () função das visualizações.

urls.py

de django.caminho de importação de urls
de visualizações de importação de logapp
urlpatterns = [
caminho (", visualizações.índice),
caminho ('log /', visualizações.display_log)
]

Execute o seguinte URL para exibir a página de índice.

http: // localhost: 8000

Execute a seguinte URL para chamar o método display_log () que exibirá uma mensagem de texto no navegador e uma mensagem de texto no terminal. As entradas de registro serão anexadas no djangoapp.registro Arquivo.

Conclusão

Duas maneiras de usar o log de python no aplicativo Django para manter as informações de log de nível DEBUG são mostradas neste tutorial. Espera-se que o conceito básico sobre o registro do Django seja compreendido pelos leitores após a leitura deste tutorial.

WinMouse permite que você personalize e melhore o movimento do ponteiro do mouse no PC com Windows
Se você quiser melhorar as funções padrão do ponteiro do mouse, use um freeware WinMouse. Ele adiciona mais recursos para ajudá-lo a obter o máximo do...
O botão esquerdo do mouse não funciona no Windows 10
Se você estiver usando um mouse dedicado com seu laptop ou computador desktop, mas o o botão esquerdo do mouse não funciona no Windows 10/8/7 por algu...
O cursor pula ou se move aleatoriamente enquanto digita no Windows 10
Se você descobrir que o cursor do mouse pula ou se move por conta própria, de forma automática e aleatória ao digitar em um laptop ou computador com W...