2011-06-15 45 views
1

我是web開發和DJango的新手。我想在網絡上開發一個實時日誌查看器,如tail -f。這將成爲一個大型內部項目的一部分。有人可以給我一些想法,我應該如何開始呢?django中的Live日誌查看器

我的想法是如何看起來有兩個下拉列表。一個用於目錄,一旦您選擇目錄,第二個將列出其中的日誌文件。所選日誌文件應該在選項卡中打開並顯示正在運行的日誌文件。

我該如何訪問Django中的日誌目錄? 我們有沒有在DJango中的任何標籤控件打開新標籤中的文件?如果不是,我正在尋找一個可關閉的按鈕標籤,我應該如何做到這一點?閱讀日誌文件並在網頁上顯示它的最佳方式是什麼?

謝謝。

回答

-1

看看subprocess並對用戶輸入非常偏執。

+0

不,您不應該通過在子流程中運行「tail -f」來實現這一點。糟糕,糟糕的主意。 – Olli 2011-10-23 15:43:37

+0

好吧,爲什麼這是一個壞主意? – Ted 2011-10-23 21:29:47

+0

絕對沒有理由這麼做 - 您可以使用本機Python代碼輕鬆實現尾部。在Django視圖上運行「tail -f」並返回結果(可能通過使用ajax進行輪詢)根本沒有效率(分叉新進程)。作爲一個問題的答案,可能每隔幾秒讀取一次日誌中的新數據會更好(f = open(filename),f.seek(int(request.GET.get(「lastlocation」,0)))返回HttpResponse(... f.read()))。如何在用戶關閉瀏覽器時終止「tail -f」? – Olli 2011-10-24 12:42:58