1

CherryPy を使用して REST インターフェイスを作成しました。アプリケーションごとにメッセージをログに記録するために、個々のファイルではなく、syslog を使用することを好みます。そのため、現在、アプリケーションは Python ロギング機能を使用し、/dev/log ハンドラを介して syslog にロギングします。

デバッグ レベルでのすべてのアクセス試行とエラー レベルでのすべてのエラーをログに記録できるようにしたいと考えています。これは、cherrypy.log.access_file および cherrypy.log.error_file ファイル パスを指定することで実行できます。

cherrypy.log.error_file を syslog に送信する方法はありますか? 可能であれば、/var/log/syslog に直接ログを記録して、そのファイルのアクセス許可を変更することは避けたいと思います。

ありがとう、

ザック

4

1 に答える 1

2

私はこれを行う方法を参照してください:

Python のロギング機能を使用して、構成ファイルでロギングを定義しています。それに基づいて、汎用のロガーを初期化しました。

http://docs.cherrypy.org/stable/refman/_cplogging.htmlのドキュメントを使用して、syslog ハンドラーをハンドラーに追加しましたcherrypy.log

これが私のコードです:

from cherrypy import log

h = logger.handlers[0]
h.setLevel(logging.DEBUG)
log.access_log.addHandler(h)
log.error_log.addHandler(h)

とてもシンプルです。

于 2011-06-24T15:28:14.207 に答える