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:
- DEPURAR
Ele fornece informações de sistema de baixo nível para depuração.
- INFO
Ele fornece informações gerais.
- ERRO
Ele fornece informações sobre o principal problema do aplicativo.
- AVISO
Ele fornece informações sobre o pequeno problema do aplicativo.
- 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:
- Instale o Django versão 3+ no Ubuntu 20+ (de preferência)
- Crie um projeto Django
- Execute o servidor Django para verificar se o servidor está funcionando corretamente ou não.
Configurar um aplicativo Django
- Execute o seguinte comando para criar um aplicativo Django chamado logapp.
- 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.
- Adicione o nome do aplicativo no INSTALLED_APP parte de py Arquivo.
…
'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 InformationLOGGING =
# 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 registroregistro 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 urlsde 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.