6

監視の目的で、ログファイルの最後のN行をDjangoWebサイトインターフェイスにストリーミングしたいと思います。tail -f filenameコマンドの結果を表示するようなものです。

基本的には、httpインターフェイスからプロセスをログテール化するsupervisordと同じことをしたいと思います。

それを行う方法について何かアイデアはありますか?

4

2 に答える 2

3

OPからの要求に応じて、 Webtailを使用した例を次に示します。

$ webtail \
    --port=8000 \
    --files=/var/log/nginx/error.log,/var/log/nginx/access.log \
    --logging=warn

コメントから理解できるように、OPにはWebSocketをサポートするソリューションが必要です。Webtailsはそうします。webtail.pyファイルを見ると:

routes = [(r'/', MainHandler), (r'/tail/', TailHandler),
    (r'/signin/', SigninHandler), (r'/signout/', SignoutHandler)]

ここTailHandlerで:

from tornado.websocket import WebSocketHandler

....

class TailHandler(WebSocketHandler):

私はこれをたくさんのログを監視するために使用しています、そしてそれは魅力のように機能します:)

于 2013-01-14T10:22:58.400 に答える
2

管理パネルで必要な場合は、ここでdjango_logtailをチェックできます。

これに加えて、興味があればここに質問があります...

于 2012-07-06T08:08:41.810 に答える