2012-07-06 2 views
4

Для целей мониторинга я хотел бы передать последние N строк файла журнала в интерфейс сайта Django. Как отображение результата команды tail -f filename.Как пропустить последние несколько строк файла в Django?

В принципе, я хотел бы сделать то же самое, что и супервизор, который хочет вывести процесс из своего http-интерфейса.

Любая идея о том, как это сделать?

+2

Взгляните на http://pypi.python.org/pypi/webtail/0.1b16 – Tisho

+0

возможный дубликат [tail -f в веб-браузере] (http://stackoverflow.com/questions/2836838/tail-f-in -a-webbrowser) –

+0

@MartijnPieters, я хочу поймать хвост -f, а затем отобразить его, этот вопрос отвечает только секунд ond выпуск. – Arnaud

ответ

3

В соответствии с просьбой О.П., здесь приведен пример использования webtail:

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

Как я понимаю из комментариев - ОП требуется решение, поддерживающее websockets. Webtails делает. Если посмотреть в файле webtail.py:

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

где TailHandler является:

from tornado.websocket import WebSocketHandler 

.... 

class TailHandler(WebSocketHandler): 

Я использую это для мониторинга много журналов, и он работает как шарм :)

+0

Спасибо большое :) – Arnaud

1

Если вам нужно в панели администратора, вы можете проверить django_logtail here.

рядом с этим возникает вопрос here если вы заинтересованы ...