0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

可快速閱讀、查看Nginx日志的工具Rhit

Linux愛好者 ? 來源:開源前哨 ? 作者:開源前哨 ? 2021-04-04 18:01 ? 次閱讀

【導(dǎo)語】:一個格式化 Nginx 日志,可快速閱讀、查看 Nginx 日志的工具。

簡介

Rhit 可以從標(biāo)準(zhǔn)文件夾中讀取 Nginx 的日志文件(gzipped 的壓縮文件也可以),并進(jìn)行分析統(tǒng)計,在控制臺中以可視化的表格形式展示,并且不會產(chǎn)生任何多余的臨時文件或數(shù)據(jù)。

可以按照日期、響應(yīng)值、請求來源等進(jìn)行過濾匹配,并進(jìn)行分析,Rhit 具有很高的效率,每秒可以處理百萬行日志數(shù)據(jù)。

以下是在一月份的日志中查找狀態(tài)碼為 1xx、2xx 的結(jié)果:

6d59dc34-8d80-11eb-8b86-12bb97331649.png

安裝

直接下載使用編譯好的二進(jìn)制文件,但是需要確保shell能夠找到rhit二進(jìn)制文件,一個比較容易的處理方式就是把它放到/usr/local/bin目錄下,并且為它添加可執(zhí)行權(quán)限。

chmod +x rhit

從crates.io安裝,依賴Rust環(huán)境,使用以下命令安裝:

cargo install rhit

源碼安裝,依賴Rust環(huán)境,將github源碼clone之后,進(jìn)入到rhit文件夾,運(yùn)行以下命令:

cargo install --path 。

顯示字段

rhit可以自動打開默認(rèn)目錄下的nginx日志文件,也可以在命令行參數(shù)中指定日志路徑:

rhit my/archived/logs

nginx常見的日志行是這樣的:

178.133.125.122 - - [21/Jan/202149: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)”

它由幾個字段組成:日期、遠(yuǎn)程IP地址、路徑、發(fā)送的字節(jié)等。rhit可以執(zhí)行對表格進(jìn)行排序的字段列表,如果未指定,默認(rèn)按照日期、狀態(tài)碼、來源和路徑來顯示,如果要制定多個字段,使用逗號進(jìn)行分割,如-f date,status;顯示所有字段,使用-f all。

基于日期。使用--field date,或者縮寫為-f date。默認(rèn)情況下,條形圖的長度基于命中數(shù)量進(jìn)行統(tǒng)計,也可以修改排序鍵以基于發(fā)送字節(jié)數(shù)進(jìn)行統(tǒng)計。

6d7a8204-8d80-11eb-8b86-12bb97331649.png

基于IP。默認(rèn)情況下不顯示遠(yuǎn)程IP,可以使用rhit -f ip進(jìn)行顯示。

6d9fddec-8d80-11eb-8b86-12bb97331649.png

基于請求方法。默認(rèn)不顯示HTTP請求方法,可以使用rhit -f method進(jìn)行顯示。

6dde7624-8d80-11eb-8b86-12bb97331649.png

基于路徑。命令為rhit -f path

6e011a94-8d80-11eb-8b86-12bb97331649.png

基于Referer。命令為rhit -f ref

6e3b15aa-8d80-11eb-8b86-12bb97331649.png

基于狀態(tài)碼。命令為rhit -f status

6e750616-8d80-11eb-8b86-12bb97331649.png

篩選

Rhit提供了一些過濾器,用于篩選結(jié)果列表,展示自己想看到或者不想看到的一些數(shù)據(jù)。

按日期篩選。精確到天,日期格式是年/月/日,如篩選2021/2/15到2021/2/20的數(shù)據(jù),也可以篩選大于某個時間、小于某個時間或不包含某個時間(使用‘》’,‘《’,‘!’符號):

6eade396-8d80-11eb-8b86-12bb97331649.png

按遠(yuǎn)程IP篩選。參數(shù)為-i,篩選特定的IP,或者排除某個特定的IP(使用‘!’符號)。

按請求方法篩選。參數(shù)為-m,篩選特定方法,或者排除特定的方法。

按請求路徑篩選,參數(shù)為-p,可以精確匹配,也可以使用正則表達(dá)式(例如所有路徑均以“download”開頭且以“exe”:結(jié)尾,參數(shù)為 -p ‘download.*exe$’):

6ee1c2ba-8d80-11eb-8b86-12bb97331649.png

按Referer篩選。參數(shù)為-r,與按路徑篩選的語法一致:

6f16c406-8d80-11eb-8b86-12bb97331649.png

按狀態(tài)碼篩選。參數(shù)為-s,篩選特定狀態(tài)碼,或者排除特定的狀態(tài)碼。

組合篩選。以上方式可以任意組合。

排序鍵

默認(rèn)情況下,所有表都按照hits進(jìn)行排序,這就是排序鍵,排序鍵的所有值都以粉紅色顯示,包括直方圖。如果對發(fā)送字節(jié)數(shù)更感興趣,可以將排序鍵修改為bytes,使用-k b進(jìn)行更改:

6f6d39c6-8d80-11eb-8b86-12bb97331649.png

原文標(biāo)題:Rhit:高效可視化 Nginx 日志查看工具,每秒處理百萬行日志數(shù)據(jù)

文章出處:【微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7081

    瀏覽量

    89185
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    151

    瀏覽量

    12189

原文標(biāo)題:Rhit:高效可視化 Nginx 日志查看工具,每秒處理百萬行日志數(shù)據(jù)

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    玩轉(zhuǎn)Nginx日志管理:高效排查問題的終極指南

    Nginx日志對于統(tǒng)計、系統(tǒng)服務(wù)排錯很有用。Nginx日志主要分為兩種:access_log(訪問日志)和error_log(錯誤
    的頭像 發(fā)表于 12-30 13:50 ?115次閱讀

    1個工具4類日志,幫你解決99%的問題

    眾所周知,通過日志可以對研發(fā)過程中,以及模組運(yùn)行過程中的各種故障進(jìn)行分析,快速定位和解決問題。 但新手朋友往往念叨著“抓日志”,卻又無從下手……此時就不得不提到工程師朋友的寶藏工具
    的頭像 發(fā)表于 12-17 16:26 ?107次閱讀
    1個<b class='flag-5'>工具</b>4類<b class='flag-5'>日志</b>,幫你解決99%的問題

    Nginx日常運(yùn)維方法Linux版

    / 默認(rèn)站點(diǎn)目錄:/usr/share/nginx/html 通過篩選進(jìn)程查看當(dāng)前使用的主配置文件和運(yùn)行用戶: ? ps aux | grep nginx ? 如圖: 主要配置文件:
    的頭像 發(fā)表于 12-06 16:38 ?174次閱讀
    <b class='flag-5'>Nginx</b>日常運(yùn)維方法Linux版

    「服務(wù)器」Nginx Proxy Manager申請cloudflare泛域名

    一概述NginxProxyManager是一個基于Nginx的反向代理管理工具,它提供了一個用戶友好的Web界面,方便用戶管理和配置Nginx反向代理。主要功能包括:簡易的用戶界面:通過圖形界面
    的頭像 發(fā)表于 12-06 01:03 ?200次閱讀
    「服務(wù)器」<b class='flag-5'>Nginx</b> Proxy Manager申請cloudflare泛域名

    使用lsof實現(xiàn)對linux文件的誤刪除恢復(fù)練習(xí)

    lsof命令的幫助,恢復(fù)該日志數(shù)據(jù) 確保當(dāng)前nginx進(jìn)程運(yùn)行中 [root@master10 ~]# systemctl status nginx 查看
    的頭像 發(fā)表于 11-24 11:14 ?217次閱讀
    使用lsof實現(xiàn)對linux文件的誤刪除恢復(fù)練習(xí)

    一種讓你的MCU日志可無線查看和實時記錄跟蹤的方法

    想象一下你是一位批量設(shè)備的管理員,這些設(shè)備分布在市面上的各個環(huán)境下,如在屋頂上的光照設(shè)備,在充電樁的充電設(shè)備,在火車站汽車站的共享設(shè)備等等;當(dāng)這些設(shè)備有異常的時候你是如何查看設(shè)備日志的呢?如果這些
    的頭像 發(fā)表于 11-17 01:01 ?286次閱讀
    一種讓你的MCU<b class='flag-5'>日志</b>可無線<b class='flag-5'>查看</b>和實時記錄跟蹤的方法

    nginx負(fù)載均衡配置介紹

    目錄 nginx負(fù)載均衡 nginx負(fù)載均衡介紹 反向代理與負(fù)載均衡 nginx負(fù)載均衡配置 Keepalived高可用nginx負(fù)載均衡器 修改Web服務(wù)器的默認(rèn)主頁 開啟
    的頭像 發(fā)表于 11-10 13:39 ?268次閱讀
    <b class='flag-5'>nginx</b>負(fù)載均衡配置介紹

    nginx日志配置方法

    access_log用來定義日志級別,日志位置。
    的頭像 發(fā)表于 10-24 17:43 ?247次閱讀

    日志篇:模組日志總體介紹

    ?今天我們學(xué)習(xí)合宙模組日志總體介紹,以下進(jìn)入正文。 一、本文討論的邊界 本文是對合宙 4G 模組, 以及 4G+GNSS 模組的日志功能的總體介紹。通過日志,可以對研發(fā)過程中,以及模組運(yùn)行過程中
    的頭像 發(fā)表于 10-24 07:16 ?211次閱讀
    <b class='flag-5'>日志</b>篇:模組<b class='flag-5'>日志</b>總體介紹

    Jtti:如何查看yum命令的錯誤日志來診斷問題?

    在Linux系統(tǒng)中,當(dāng)yum命令無法正常工作時,查看錯誤日志是診斷問題的重要步驟。以下是一些方法,可以幫助你查看和分析yum命令的錯誤日志查看
    的頭像 發(fā)表于 10-14 15:51 ?253次閱讀

    Jtti:美國VPS開啟nginx狀態(tài)監(jiān)控,查看web服務(wù)器的并發(fā)連接數(shù)

    Nginx的ngx_http_stub_status_module提供能夠獲取Nginx自上次啟動以來的工作狀態(tài)的功能。如果需要啟用此功能的話,需要在編譯的過程中添加如下參數(shù)
    的頭像 發(fā)表于 08-26 15:42 ?304次閱讀

    更強(qiáng)的無線(雙)串口數(shù)據(jù)記錄 調(diào)試工具

    ,通過網(wǎng)絡(luò)可在線查看歷史日志(無需斷電),實時日志,無線調(diào)試;設(shè)計此工具的初心是希望可以替代傳統(tǒng)的usb轉(zhuǎn)串口工具,方便設(shè)備數(shù)據(jù)采集和串口數(shù)
    的頭像 發(fā)表于 08-02 08:11 ?714次閱讀
    更強(qiáng)的無線(雙)串口數(shù)據(jù)記錄 調(diào)試<b class='flag-5'>工具</b>

    InDTU300系列產(chǎn)品如何輸出實時日志?

    電腦連接InDTU維護(hù)串口/串口2,登錄后在配置工具設(shè)置界面,選擇高級模式。 找到“其他配置(應(yīng)用擴(kuò)展配置)”,”是否為調(diào)試模式“項選擇“是(串口2)”,調(diào)試模式等級選擇顯示詳細(xì)日志。 點(diǎn)擊右下角
    發(fā)表于 07-25 06:05

    nginx重啟命令linux步驟是什么?

      1、驗證nginx配置文件是否正確   方法一:進(jìn)入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx.conf syntax is ok
    發(fā)表于 07-11 17:13

    nginx重啟命令linux步驟是什么?

      1、驗證nginx配置文件是否正確   方法一:進(jìn)入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx.conf syntax is ok
    發(fā)表于 07-10 16:40