2009-11-02 19 views
28

Sto utilizzando la libreria Boto per parlare con AWS. Voglio disabilitare la registrazione. (O reindirizzare a/dev/null o altro file). Non riesco a trovare un modo ovvio per farlo. Ho provato questo, ma quello non sembra aiutare.Disattiva la registrazione di boto senza modificare i file boto

import boto 
boto.set_file_logger('boto', 'logs/boto.log') 

Questo dice che è possibile, ma per quanto ne so http://developer.amazonwebservices.com/connect/thread.jspa?messageID=52727&#52727 la documentazione doesnt dice come.

risposta

57

Si potrebbe provare

import logging 
logging.getLogger('boto').setLevel(logging.CRITICAL) 

che sopprimere tutti (diverso Critico) errori.

Boto utilizza i file di configurazione di registrazione (ad esempio /etc/boto.cfg, ~/.boto), quindi verificare se è possibile configurarlo in base alle proprie esigenze.

La chiamata set_file_logger aggiunge semplicemente un file definito dall'utente all'impostazione di registrazione, quindi non è possibile utilizzarlo per disattivare la registrazione.

+0

Grazie Vinay, che ha funzionato! – rocketmonkeys

+0

Grazie per questo. Per qualche motivo non riesco a ottenere i file di configurazione di boto per disattivare la registrazione. http://code.google.com/p/boto/issues/detail?id=476 – michela

+0

Nell'impostazione di django è simile a questo: '' 'LOGGING ['logger']. ({ 'boto': { 'level': 'CRITICAL', } }) '' ' – dashesy

4

Meglio ancora, disabilitare propagate per boto:

import boto 
boto.set_file_logger('boto', 'logs/boto.log') 
logging.getLogger('boto').propagate = False 
+1

Non sono sicuro che questa sia una funzionalità nuova, ma questa dovrebbe essere la risposta accettata al giorno d'oggi. – kadrach

Problemi correlati