|
|
1 year ago | |
|---|---|---|
| lib | 1 year ago | |
| .env | 1 year ago | |
| .gitignore | 1 year ago | |
| README.md | 1 year ago | |
| main.py | 1 year ago | |
| more.py | 1 year ago | |
README.md
Logger Test Application
Questa applicazione è progettata per testare una libreria che standardizza la generazione di log. Utilizza un formato di log configurabile tramite variabili d'ambiente e supporta sia formati leggibili che JSON.
Struttura del Progetto
.
├── .env
├── .gitignore
├── lib/
│ ├── __init__.py
│ └── log.py
├── main.py
├── more.py
└── README.md
Configurazione
Le configurazioni per il logger sono definite nel file [.env]. Ecco un esempio di configurazione:
'''.env LOG_NAME=logtest LOG_LEVEL=WARNING LOG_PATTERN='[%(asctime)s] %(levelname)s in %(filename)s:%(lineno)d: %(message)s' LOG_FORMAT=json LOG_EXTRA='cause,ansia' '''
- LOG_NAME: Nome del logger.
- LOG_LEVEL: Livello di log (DEBUG, INFO, WARNING, ERROR, CRITICAL).
- LOG_PATTERN: Pattern per il formato leggibile.
- LOG_FORMAT: Formato del log [
json] o [human]. - LOG_EXTRA: Campi extra da includere nei log.
Utilizzo
Esecuzione del Programma
Per eseguire il programma, assicurati di avere Python installato e di aver configurato il file [.env]. Poi esegui:
python main.py
Esempio di Output
A seconda della configurazione, l'output dei log sarà in formato leggibile o JSON. Ecco un esempio di output in formato JSON:
{
"name": "logtest",
"msg": "Questo è un messaggio di errore",
"levelname": "ERROR",
"levelno": 40,
"pathname": "main.py",
"filename": "main.py",
"module": "main",
"lineno": 10,
"funcName": "<module>",
"created": 1633024800.0,
"msecs": 123.456,
"relativeCreated": 1234.567,
"thread": 12345,
"threadName": "MainThread",
"processName": "MainProcess",
"process": 1234,
"hostname": "hostname",
"pid": 1234,
"cause": "non so",
"ansia": "molta"
}
Codice
[lib/log.py]
Questo file contiene la configurazione del logger e la definizione del formatter JSON.
[main.py]
Questo file contiene il punto di ingresso principale dell'applicazione e alcuni esempi di log.
[more.py]
Questo file contiene ulteriori operazioni di log e una classe di esempio che utilizza il logger.
Contributi
Se desideri contribuire a questo progetto, sentiti libero di aprire una pull request o di segnalare problemi tramite il sistema di issue di GitHub.
Licenza
Questo progetto è rilasciato sotto la licenza MIT. Vedi il file LICENSE per maggiori dettagli.