Qualcosa del genere: import logging # nella parte che inizializza l'applicazione logging.basicConfig(level=logging.INFO)
class H(logging.Handler): def emit(self, record): print(dict((n, getattr(record, n)) for n in dir(record) if not n.startswith('_'))) log = logging.getLogger() log.handlers.append(H()) # il tuo script ... logger.warn(qualcosa=valore, qualcosaltro=altrovalore, error=eccezione) rimpiazza log.handlers.append(H()) con log.handlers = [H()] se vuoi rimuovere completamente l’output di default > On 2 Nov 2020, at 05:53, Federico Fissore <feder...@fsfe.org> wrote: > > Ciao a tutti > > Sono alla ricerca di una libreria per loggare in modo strutturato, usando JSON > > Ho provato diverse librerie, ma nessuna mi soddisfa a pieno: richiedono > codice di set up complessi, o non sono configurabili, o non sanno loggare le > eccezioni > > Idealmente, quello che vorrei è scrivere codice tipo questo > > logger = ... > > logger.warn(qualcosa=valore, qualcosaltro=altrovalore, error=eccezione) > > e l'output dovrebbe essere qualcosa tipo > { > "severity": "WARNING", > "qualcosa": "valore", > "qualcosaltro": "altrovalore", > "error": "traceback formattato con \n e \t alla bisogna" > } > > Usate il logging strutturato? Cosa usate? > > ciao > > federico > _______________________________________________ > Python mailing list > Python@lists.python.it > https://lists.python.it/mailman/listinfo/python
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python