2010-07-10 84 views
2

我的任務是創建一個簡單的基於Python的網絡應用程序,以圖形方式表示各種服務器之間的「差異」,就整個文件系統中各種關鍵配置文件的內容而言。熱圖在服務器上顯示文件系統差異?

1.海萊科爾熱圖

對於高級概述,想到創建每個系統(例如http://www.jjguy.com/heatmap/)的熱圖的。將每個系統與金源圖像(原始圖像)進行比較,然後使用顏色來表示他從該圖像中區分的程度。

將文件系統映射到x-y軸,以便每個系統的熱圖上的相同座標表示相同的文件。

我在這裏的第一個問題是,你有什麼建議將一個好的算法映射文件系統到x-y座標?請記住,雖然每個服務器應該有或多或少相同的文件系統層次結構,但這可能不一定是真實的,我仍然需要找到一種方法來表示丟失的文件/目錄,或者可能添加的文件/目錄。我不確定這是否可能,以及將equavilent文件/目錄映射到每個系統映射上的匹配(或至少相似)x-y點的第一個要求。任何新穎的方法/算法在這裏?

然後,我需要一種方法來量化每個文件之間的變化程度(行數?),然後將其傳遞到熱圖上。請記住,我需要區分說,10個改變行的單個文件和10個每個改變行1個文件,因爲它們都有不同的分支。

2.向下鑽取,以顯示文件的diff

我希望也提供對Web應用中向下鑽取到單獨的文件/目錄,看看它們之間的變化的能力。

我一直在使用Kdiff3和Meld的組合來實現可視化代碼差異,Meld顯示更改的方式讓我印象深刻。

http://meld.sourceforge.net/meld_file1.png

我似乎無法找到任何獨立的網絡庫,提供thier自己的可視化差異的機制。我發現最近的是jsdifflib(http://snowtide.com/jsdifflib),但它似乎與Meld之類的功能(或者我認爲的美學)不匹配。有什麼建議嗎?

(修正者看起來很酷 - http://benfry.com/revisionist/ - 但我似乎無法找到任何公共代碼)。

乾杯, 維克多

回答

1

至於映射文件系統,看看WindirStat http://windirstat.info/。這最初是您文件系統的大小評估工具,但您可以定義自己的大小計算。樹形圖將有助於對同一文件夾或文件夾樹中的文件進行分組。它對磁盤內容的變化有一定的魯棒性。

相關問題