Rhit高效可視化Nginx日志查看工具
簡(jiǎn)介
Rhit 可以從標(biāo)準(zhǔn)文件夾中讀取 Nginx 的日志文件(gzipped 的壓縮文件也可以),并進(jìn)行分析統(tǒng)計(jì),在控制臺(tái)中以可視化的表格形式展示,并且不會(huì)產(chǎn)生任何多余的臨時(shí)文件或數(shù)據(jù)。
可以按照日期、響應(yīng)值、請(qǐng)求來(lái)源等進(jìn)行過(guò)濾匹配,并進(jìn)行分析,Rhit 具有很高的效率,每秒可以處理百萬(wàn)行日志數(shù)據(jù)。
以下是在一月份的日志中查找狀態(tài)碼為 1xx、2xx 的結(jié)果:
項(xiàng)目地址是:
安裝
直接下載使用編譯好的二進(jìn)制文件,但是需要確保shell能夠找到rhit二進(jìn)制文件,一個(gè)比較容易的處理方式就是把它放到/usr/local/bin目錄下,并且為它添加可執(zhí)行權(quán)限。
chmod +x rhit // 下載地址 https://dystroy.org/rhit/download
從crates.io安裝,依賴Rust環(huán)境,使用以下命令安裝:
cargo install rhit
源碼安裝,依賴Rust環(huán)境,將github源碼clone之后,進(jìn)入到rhit文件夾,運(yùn)行以下命令:
cargo install --path .
顯示字段
rhit可以自動(dòng)打開(kāi)默認(rèn)目錄下的nginx日志文件,也可以在命令行參數(shù)中指定日志路徑:
rhit my/archived/logs
nginx常見(jiàn)的日志行是這樣的:
178.133.125.122 - - [21/Jan/2021:05:49:52 +0000] "HEAD /broot/download/x86_64-pc-windows-gnu/broot.exe HTTP/1.1" 200 0 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
它由幾個(gè)字段組成:日期、遠(yuǎn)程IP地址、路徑、發(fā)送的字節(jié)等。rhit可以執(zhí)行對(duì)表格進(jìn)行排序的字段列表,如果未指定,默認(rèn)按照日期、狀態(tài)碼、來(lái)源和路徑來(lái)顯示,如果要制定多個(gè)字段,使用逗號(hào)進(jìn)行分割,如-f date,status;顯示所有字段,使用-f all。
基于日期。使用--field date,或者縮寫(xiě)為-f date。默認(rèn)情況下,條形圖的長(zhǎng)度基于命中數(shù)量進(jìn)行統(tǒng)計(jì),也可以修改排序鍵以基于發(fā)送字節(jié)數(shù)進(jìn)行統(tǒng)計(jì)。
基于IP。默認(rèn)情況下不顯示遠(yuǎn)程IP,可以使用rhit -f ip進(jìn)行顯示。
基于請(qǐng)求方法。默認(rèn)不顯示HTTP請(qǐng)求方法,可以使用rhit -f method進(jìn)行顯示。
基于路徑。命令為rhit -f path
基于Referer。命令為rhit -f ref
基于狀態(tài)碼。命令為rhit -f status
篩選
Rhit提供了一些過(guò)濾器,用于篩選結(jié)果列表,展示自己想看到或者不想看到的一些數(shù)據(jù)。
按日期篩選。精確到天,日期格式是年/月/日,如篩選2021/2/15到2021/2/20的數(shù)據(jù),也可以篩選大于某個(gè)時(shí)間、小于某個(gè)時(shí)間或不包含某個(gè)時(shí)間(使用'>','<','!'符號(hào)):
按遠(yuǎn)程IP篩選。參數(shù)為-i,篩選特定的IP,或者排除某個(gè)特定的IP(使用'!'符號(hào))。
按請(qǐng)求方法篩選。參數(shù)為-m,篩選特定方法,或者排除特定的方法。
按請(qǐng)求路徑篩選,參數(shù)為-p,可以精確匹配,也可以使用正則表達(dá)式(例如所有路徑均以"download"開(kāi)頭且以"exe":結(jié)尾,參數(shù)為 -p 'download.*exe$'):
按Referer篩選。參數(shù)為-r,與按路徑篩選的語(yǔ)法一致:
按狀態(tài)碼篩選。參數(shù)為-s,篩選特定狀態(tài)碼,或者排除特定的狀態(tài)碼。
組合篩選。以上方式可以任意組合。
排序鍵
默認(rèn)情況下,所有表都按照hits進(jìn)行排序,這就是排序鍵,排序鍵的所有值都以粉紅色顯示,包括直方圖。如果對(duì)發(fā)送字節(jié)數(shù)更感興趣,可以將排序鍵修改為bytes,使用-k b進(jìn)行更改:
到此這篇關(guān)于Rhit高效可視化Nginx日志查看工具的文章就介紹到這了,更多相關(guān)Rhit Nginx日志查看工具內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
通過(guò)Nginx反向代理實(shí)現(xiàn)IP訪問(wèn)分流的示例代碼
本篇文章主要介紹了通過(guò)Nginx反向代理實(shí)現(xiàn)IP訪問(wèn)分流的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11學(xué)習(xí)nginx基礎(chǔ)知識(shí)
這篇文章主要介紹了nginx基礎(chǔ)知識(shí),文中運(yùn)用了大量的圖片和代碼進(jìn)行講解,對(duì)相關(guān)知識(shí)感興趣的小伙伴可以參考一下這篇文章2021-09-09Apache Nginx 禁止目錄執(zhí)行PHP腳本文件的方法
這篇文章主要介紹了Apache Nginx 禁止目錄執(zhí)行PHP腳本文件的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-06-06在Nginx中增加對(duì)OAuth協(xié)議的支持的教程
這篇文章主要介紹了在Nginx中增加對(duì)OAuth協(xié)議的支持的教程,OAuth協(xié)議如今廣泛用于社交網(wǎng)絡(luò)的API中,需要的朋友可以參考下2015-06-06nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)圖片的代碼示例
這篇文章主要給大家介紹了nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)圖片,文章通過(guò)代碼示例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以自己動(dòng)手試一下2023-10-10