1

これは私がやりたいことの例です。logging.warning() の出力を変数に保存できれば、Mongodb に保存できます。

import logging
logging.basicConfig(level=logging.DEBUG,filename='logDemo.log')
logging.basicConfig(format='%(levelname)s:%(message)s', level=logging.DEBUG)
logging.basicConfig(format='%(asctime)s %(message)s')

def divide(a,b):
    try :

        divide = a/b
        return divide
    except ZeroDivisionError:           

    a=logging.warning('Watch out!') # will print a message to the console
    logging.info('I told you so') # will not print anything
    logging.warning('is when this event was logged.')        
    print a


divide(60,0)

logging.warning() の出力を変数に保存しようとしましたが、失敗しました。ロギング関数の出力を mongodb に保存する方法はありますか

4

1 に答える 1

2

適切な解決策は、独自の MongoDBLoggingHandler を作成し、MongoDB 固有の保存を処理する emit() メソッドを実装することです。見る

http://docs.python.org/2/library/logging.handlers.html

于 2012-12-01T07:01:23.900 に答える