Python Logging (nome della funzione, nome del file, numero di riga) utilizzando un unico file

| | | | | |

Sto cercando di imparare come funziona un'applicazione. E per questo sto inserendo i comandi di debug come prima riga del corpo di ogni funzione con l'obiettivo di registrare il nome della funzione e il numero di riga (all'interno del codice) dove invio un messaggio all'output del registro. Infine, poiché questa applicazione comprende molti file, voglio creare un unico file di registro in modo da poter comprendere meglio il flusso di controllo dell'applicazione.

Ecco cosa so:

  1. per ottenere il nome della funzione, posso usare nome_funzione.__nome__ ma non voglio usare il nome_funzione (in modo da poter copiare e incollare rapidamente un Log generico .info("Message") nel corpo di tutte le funzioni). So che questo potrebbe essere fatto in C usando la macro __func__ ma non sono sicuro di Python.

  2. per ottenere il nome del file e il numero di riga, ho visto che (e credo che) la mia applicazione stia usando la funzione Python locals() ma in una sintassi che sono io non del tutto consapevole ad esempio: options = "LOG.debug("%(flag)s : %(flag_get)s" % locals()) e l'ho provato usando come LOG.info ("Il mio messaggio %s" % locals()) che produce qualcosa come {"self": <__main__.oggetto Class_name at 0x22f8cd0>}. Qualche input su questo per favore?

  3. So come usare la registrazione e aggiungere un gestore per accedere a un file ma non sono sicuro che un singolo file possa essere usato per registrare tutti i messaggi di registro nell'ordine corretto delle chiamate di funzione nel progetto.

Apprezzerei molto qualsiasi aiuto.

Grazie!

Ci auguriamo che questo articolo ti abbia aiutato a risolvere il problema. Oltre a Python Logging (nome della funzione, nome del file, numero di riga) utilizzando un unico file, controlla altri argomenti relativi a _files.

Vuoi eccellere in Python? Consulta la nostra recensione dei migliori corsi online Python 2022. Se sei interessato alla scienza dei dati, controlla anche come imparare a programmare in R.

A proposito, questo materiale è disponibile anche in altre lingue:



Oliver Innsbruck

Milan | 2022-11-27

Forse ci sono altre risposte? Cosa significa esattamente Python Logging (nome della funzione, nome del file, numero di riga) utilizzando un unico file significa esattamente?. Controllato ieri, funziona!

Frank Jackson

New York | 2022-11-27

Grazie per le spiegazioni! Sono rimasto bloccato con Python Logging (nome della funzione, nome del file, numero di riga) utilizzando un unico file per alcune ore, finalmente l'ho fatto 🤗. Spero solo che non emerga più

Ken Zelotti

Shanghai | 2022-11-27

Forse ci sono altre risposte? Cosa significa esattamente Python Logging (nome della funzione, nome del file, numero di riga) utilizzando un unico file significa esattamente?. Spero solo che non emerga più

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

Common xlabel/ylabel for matplotlib subplots

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

12 answers

NUMPYNUMPY

Flake8: Ignore specific warning for entire file

12 answers

NUMPYNUMPY

glob exclude pattern

12 answers

NUMPYNUMPY

How to avoid HTTP error 429 (Too Many Requests) python

12 answers

NUMPYNUMPY

Python CSV error: line contains NULL byte

12 answers

NUMPYNUMPY

csv.Error: iterator should return strings, not bytes

12 answers

News


Wiki

Python | How to copy data from one Excel sheet to another

Common xlabel/ylabel for matplotlib subplots

Check if one list is a subset of another in Python

sin

How to specify multiple return types using type-hints

exp

Printing words vertically in Python

exp

Python Extract words from a given string

Cyclic redundancy check in Python

Finding mean, median, mode in Python without libraries

cos

Python add suffix / add prefix to strings in a list

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

Python - Move item to the end of the list

Python - Print list vertically