No project description provided
Project description
Sistema de Log Configurável
Este projeto oferece um sistema de logs altamente configurável, permitindo personalizar diversos aspectos através de variáveis de ambiente definidas em um arquivo .env. Você poderá definir o caminho dos logs, o formato de cada entrada, o nível de detalhe e a formatação da data e hora, oferecendo flexibilidade total para suas necessidades.
Como Utilizar
1. Arquivo de Configuração .env
A configuração do sistema de logs é feita através do arquivo .env. Crie este arquivo na raiz do seu projeto e defina as seguintes variáveis:
- DEFAULT_LOG_PATH: Caminho para o diretório onde os arquivos de log serão armazenados. Este campo suporta formatação de data e hora, conforme descrito na seção "Formatação de Data e Hora".
- DEFAULT_LOG_TEMPLATE: Define o formato de cada linha de log. Utilize as variáveis de formatação disponíveis, conforme detalhado na seção "Formato das Entradas de Log".
- DEFAULT_TIME_FORMAT: Especifica o formato de data e hora a ser utilizado nos logs. Consulte a seção "Formatação de Data e Hora" para opções.
- DEFAULT_LOG_LEVEL: Define o nível mínimo de log a ser gravado. Opções comuns incluem
DEBUG,INFO,WARNING,ERROReCRITICAL. Logs com nível inferior ao definido serão ignorados.
Exemplo de arquivo .env:
DEFAULT_LOG_PATH='data/logs/[now %Y]/[now %m.%b]/[now %d.%a]/[now %H]h/log.log' DEFAULT_LOG_TEMPLATE='%(asctime)s [%(name)s] - %(levelname)s - %(message)s' DEFAULT_TIME_FORMAT='%H:%M:%S' DEFAULT_LOG_LEVEL='INFO'
2. Formatação de Data e Hora
O sistema permite a formatação dinâmica de datas e horas no DEFAULT_LOG_PATH e dentro do DEFAULT_LOG_TEMPLATE, utilizando placeholders no formato [now FORMATO].
Opções de Formatação:
- [now]: Data e hora atual.
- %a: Nome abreviado do dia da semana (ex: Dom, Seg, Ter).
- %A: Nome completo do dia da semana (ex: Domingo, Segunda-feira).
- %w: Dia da semana como número (0 = Domingo, 6 = Sábado).
- %d: Dia do mês (01 a 31).
- %-d: Dia do mês (1 a 31).
- %b: Nome abreviado do mês (ex: Jan, Fev, Mar).
- %B: Nome completo do mês (ex: Janeiro, Fevereiro, Março).
- %m: Mês como número (01 a 12).
- %-m: Mês como número (1 a 12).
- %y: Ano sem século (00 a 99).
- %-y: Ano sem século (0 a 99).
- %Y: Ano com século (ex: 2024).
- %H: Hora (00 a 23).
- %-H: Hora (0 a 23).
- %I: Hora em formato 12 horas (01 a 12).
- %-I: Hora em formato 12 horas (1 a 12).
- %p: AM ou PM.
- %x: Data no formato local.
- %c: Data e hora no formato local.
Exemplos:
[now %d.%a]=01.Seg[now %d]=01[now %-d]=1[now %m]=01[now %b]=Jan[now %B]=Janeiro[now %m.%b]=01.Jan[now %y]=24[now %Y]=2024[now %d de %B de %Y]=01 de Janeiro de 2024
3. Formato das Entradas de Log
A variável DEFAULT_LOG_TEMPLATE permite personalizar o formato de cada linha de log. Utilize as seguintes variáveis dentro do template:
%(asctime)s: Data e hora da ocorrência do log.%(name)s: Nome do logger.%(levelname)s: Nível do log (ex: DEBUG, INFO, ERROR).%(message)s: Mensagem de log.
Exemplo:
DEFAULT_LOG_TEMPLATE='%(asctime)s [%(name)s] - %(levelname)s - %(message)s'
4. Criação do Caminho do Log
Ao definir o DEFAULT_LOG_PATH, certifique-se de que o caminho seja válido e não contenha caracteres especiais (espaços, barras, etc.). O sistema substituirá automaticamente espaços por underscores (_).
Exemplo:
data/logs/[now %Y]/[now %m.%b]/[now %d.%a]/[now %H]h/log.log
resultaria em um caminho como:
data/logs/2024/01.Jan/01.Seg/10h/log.log
Lembre-se de que o sistema criará os diretórios automaticamente, caso eles não existam. Se o caminho definido for inválido, o sistema poderá apresentar erros.
Este guia detalhado oferece uma visão completa das opções de configuração do sistema de logs, permitindo que você personalize-o de acordo com suas necessidades.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dmt_logger-0.1.3.tar.gz.
File metadata
- Download URL: dmt_logger-0.1.3.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.0.1 CPython/3.12.5 Windows/11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad1b29ce10f6c16c4b09613e8b380c81b7bcad11f389c1da08f81adbd4fe0f36
|
|
| MD5 |
014ed512dd77adb199434eae41a7d7ed
|
|
| BLAKE2b-256 |
bd4851b41beb59592fd0423cf45217d7b29025d8267941e6da783d5cd8501418
|
File details
Details for the file dmt_logger-0.1.3-py3-none-any.whl.
File metadata
- Download URL: dmt_logger-0.1.3-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.0.1 CPython/3.12.5 Windows/11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffc78b413ea8f86e0dda7ab5244b5e94ee1e7815bc96d28961b69d9af6433dbc
|
|
| MD5 |
533a756f621ed7855fe9148a20152632
|
|
| BLAKE2b-256 |
bd0af35c589448f0b1b72705ad2567355408b5904b9e0624284f4d99143cc08d
|