站長(zhǎng)資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        Nginx日志分析工具GoAccess使用詳解

        前言

        Nginx日志分析工具GoAccess使用詳解

        如果把運(yùn)維看做是醫(yī)生給病人看病,則日志就是病人對(duì)自己的陳述,很多時(shí)候醫(yī)生需要通過(guò)對(duì)病人的描述中得出病人狀況,是否嚴(yán)重,需要什么計(jì)量的藥,什么類型的藥。所以古人有句話叫對(duì)癥下藥,這個(gè)癥就是病人的描述加醫(yī)生的判斷,在重一點(diǎn)的病在加上很多的化驗(yàn)。在醫(yī)生看病時(shí)病人的描述和化驗(yàn)單上的數(shù)據(jù)對(duì)醫(yī)生是非常重要的。同理日志在運(yùn)維中的作用也是類似的,但非常不幸,日志在很多運(yùn)維中被嚴(yán)重低估,直到磁盤空間不足的時(shí)候才想到,這有個(gè)大的日志文件把他刪了,這樣可以節(jié)省空間。

        GoAccess

        GoAccess是一個(gè)基于終端的快速日志分析器。其核心思想是實(shí)時(shí)快速分析和查看Web服務(wù)器統(tǒng)計(jì)信息,而無(wú)需使用您的瀏覽器(如果您希望通過(guò)SSH快速分析訪問(wèn)日志,或者只是喜歡在終端中工作),終端輸出是默認(rèn)輸出,但它能夠生成完整的,獨(dú)立的實(shí)時(shí) HTML報(bào)告(非常適合分析,監(jiān)控和數(shù)據(jù)可視化),以及a JSON和CSV報(bào)告。

        • 所有面板和指標(biāo)都定時(shí)在終端輸出上每200毫秒更新一次,在HTML輸出上每秒更新一次。
        • GoAccess允許任何自定義日志格式字符串。預(yù)定義選項(xiàng)包括Apache,Nginx,Amazon S3,Elastic Load Balancing,CloudFront等
        • 跟蹤提供請(qǐng)求所需的時(shí)間。如果您想跟蹤減慢網(wǎng)站速度的網(wǎng)頁(yè),則非常有用。
        • 數(shù)據(jù)持久性強(qiáng),GoAccess能夠通過(guò)磁盤上的B + Tree數(shù)據(jù)庫(kù)逐步處理日志。
        • GoAccess是用C語(yǔ)言編寫的,要運(yùn)行它,你只需要將ncurses作為依賴項(xiàng),它甚至還具有自己的RFC6455兼容Web Socket服務(wù)器。
        • 您可以針對(duì)訪問(wèn)日志文件運(yùn)行它,選擇日志格式并讓GoAccess解析訪問(wèn)日志并顯示統(tǒng)計(jì)信息。
        • 按小時(shí)或日期確定最慢運(yùn)行請(qǐng)求的匹配數(shù),訪問(wèn)者數(shù),帶寬數(shù)和指標(biāo)數(shù)。
        • 多個(gè)虛擬主機(jī),一個(gè)面板,顯示哪個(gè)虛擬主機(jī)正在消耗大部分Web服務(wù)器資源。
        • 定制GoAccess以適合您自己的色彩品味。通過(guò)終端,或者只是更新HTML輸出上的樣式表。

        部署方案

        方案一:Yum安裝部署

        yum install glib2 glib2-devel GeoIP-devel  ncurses-devel zlib zlib-develyum install gcc -y
        yum -y install GeoIP-update
        yum install goaccess

        #修改/etc/nginx/nginx.conf文件的日志存儲(chǔ)格式
        log_format  main  ‘$remote_addr – $remote_user [$time_local] requesthost:”$http_host”; “$request” requesttime:”$request_time”; ‘
                ‘$status $body_bytes_sent “$http_referer” – $request_body’                     
                ‘”$http_user_agent” “$http_x_forwarded_for”‘;

        #修改文件/etc/goaccess.conf改成goaccess格式標(biāo)準(zhǔn)對(duì)應(yīng)為
        time-format %T
        date-format %d/%b/%Y
        log-format %h – %^ [%d:%t %^] requesthost:”%v”; “%r” requesttime:”%T”; %s %b “%R” – %^”%u”

        #測(cè)試生成頁(yè)面
        goaccess -f /var/log/nginx/access.log -c -a>/usr/share/nginx/html/go.html

        方案二:源碼安裝部署

        #yum安裝依賴包
        yum install glib2 glib2-devel GeoIP-devel  ncurses-devel zlib zlib-devel
        yum install gcc -y
        rpm -Uvh https://dl.Fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
        yum -y install GeoIP-update

        #下載goaccess源碼包,并解壓編譯安裝
        wget https://tar.goaccess.io/goaccess-1.2.tar.gz
        tar xzvf goaccess-1.2.tar.gz
        cd goaccess-1.2/./configure –enable-geoip –enable-utf8make && make install

        #修改/etc/nginx/nginx.conf文件的日志存儲(chǔ)格式
        log_format  main  ‘$remote_addr – $remote_user [$time_local] requesthost:”$http_host”; “$request” requesttime:”$request_time”; ‘
                ‘$status $body_bytes_sent “$http_referer” – $request_body’                     
                ‘”$http_user_agent” “$http_x_forwarded_for”‘;

        #修改文件/usr/local/etc/goaccess.conf改成goaccess格式標(biāo)準(zhǔn)對(duì)應(yīng)為
        time-format %T
        date-format %d/%b/%Y
        log-format %h – %^ [%d:%t %^] requesthost:”%v”; “%r” requesttime:”%T”; %s %b “%R” – %^”%u”

        #測(cè)試生成頁(yè)面
        goaccess -f /var/log/nginx/access.log -c -a>/usr/share/nginx/html/go.html

        #后臺(tái)實(shí)時(shí)生成數(shù)據(jù)到goaccess頁(yè)面
        /usr/local/bin/goaccess /var/log/nginx/access.log -o /usr/share/nginx/html/go.html  –real-time-html &

        頁(yè)面解析

        Nginx日志分析工具GoAccess使用詳解

        General Statistics:此面板提供了幾個(gè)指標(biāo)的摘要,其中一些包括:有效和無(wú)效請(qǐng)求的數(shù)量,分析數(shù)據(jù)集所花費(fèi)的時(shí)間,唯一訪問(wèn)者,請(qǐng)求的文件,靜態(tài)文件(CSS,ICO,JPG等)HTTP引用,404s,已解析日志文件的大小和帶寬消耗。

        Unique visitors:此面板顯示點(diǎn)擊次數(shù),唯一身份訪問(wèn)者和每個(gè)日期的累積帶寬等指標(biāo)。包含相同IP,相同日期和相同用戶代理的HTTP請(qǐng)求被視為唯一訪問(wèn)者。默認(rèn)情況下,它包括網(wǎng)絡(luò)爬蟲/蜘蛛。 可以使用–date-spec = hr將日期特異性設(shè)置為小時(shí)級(jí)別,這將顯示日期,例如05 / Jun / 2016:16。如果您想跟蹤小時(shí)級(jí)別的每日流量,這非常棒。

        Requested files:此面板顯示W(wǎng)eb服務(wù)器上請(qǐng)求最多的文件。它顯示了匹配,唯一身份訪問(wèn)者和百分比,以及累積帶寬,協(xié)議和使用的請(qǐng)求方法。

        Requested static files:列出了最常用靜態(tài)文件,如:JPG,CSS,SWF,JS,GIF,和PNG文件類型,使用相同的指標(biāo)作為最后的面板一起。可以將其他靜態(tài)文件添加到配置文件中。

        404 or Not Found:顯示與先前請(qǐng)求面板相同的指標(biāo),但是,其數(shù)據(jù)包含在服務(wù)器上找不到的所有頁(yè)面,或通常稱為404狀態(tài)代碼。

        Hosts:此面板包含有關(guān)主機(jī)本身的詳細(xì)信息。這非常適合發(fā)現(xiàn)×××性爬蟲,并確定誰(shuí)在吃你的帶寬。 擴(kuò)展面板可以顯示更多信息,例如主機(jī)的反向DNS查找結(jié)果,原產(chǎn)國(guó)和城市。如果-a啟用了參數(shù),則可以通過(guò)選擇所需的IP地址,然后按Enter來(lái)顯示用戶代理列表。

        Operating Systems:此面板將報(bào)告主機(jī)在到達(dá)服務(wù)器時(shí)使用的操作系統(tǒng)。它試圖提供每個(gè)操作系統(tǒng)的最具體版本。
        Browsers:此面板將報(bào)告主機(jī)在訪問(wèn)服務(wù)器時(shí)使用的瀏覽器。它試圖提供每個(gè)瀏覽器的最具體版本。
        Visit Times:此面板將顯示每小時(shí)報(bào)告。此選項(xiàng)顯示24個(gè)數(shù)據(jù)點(diǎn),每天一小時(shí)一個(gè)。 可選地,可以使用–hour-spec = min將小時(shí)特異性設(shè)置為十分之一水平,這將顯示小時(shí)為16:4如果您想要發(fā)現(xiàn)服務(wù)器上的流量峰值,這很好。
        Virtual Hosts:此面板將顯示從訪問(wèn)日志中解析的所有不同虛擬主機(jī)。如果在日志格式字符串中使用%v,則會(huì)顯示此面板。
        Referrers URLs:如果相關(guān)主機(jī)通過(guò)其他資源訪問(wèn)了網(wǎng)站,或者是從其他主機(jī)鏈接/轉(zhuǎn)移給您,則會(huì)在此面板中提供引用它們的網(wǎng)址。請(qǐng)參閱`–ignore-panel`配置文件以啟用它。 (默認(rèn)禁用)
        Referring Sites:此面板僅顯示主機(jī)部分,但不顯示整個(gè)URL。請(qǐng)求來(lái)自的URL。
        Keyphrases:它報(bào)告了用于Google搜索,Google緩存和Google翻譯的關(guān)鍵字,這些關(guān)鍵字已導(dǎo)致您的網(wǎng)絡(luò)服務(wù)器。目前,它僅通過(guò)HTTP支持Google搜索查詢。請(qǐng)參閱`–ignore-panel`配置文件以啟用它。 (默認(rèn)禁用)
        Geo Location:確定IP地址在地理位置的位置。統(tǒng)計(jì)數(shù)據(jù)按大陸和國(guó)家分列。它需要使用GeoLocation支持進(jìn)行編譯。
        HTTP Status Codes:HTTP請(qǐng)求的數(shù)字狀態(tài)代碼的值。
        Remote User (HTTP authentication):這是HTTP身份驗(yàn)證確定的請(qǐng)求文檔的人員的用戶ID。如果文檔沒有密碼保護(hù),則此部分將為“ – ”,就像前一個(gè)部分一樣。除非%e在log-format變量中給出,否則不會(huì)啟用此面板。

        最后

        GoAccess日志分析工具的功能還有很多,可以細(xì)分到統(tǒng)計(jì)某一天、某一個(gè)IP用戶的訪問(wèn)情況,也可以統(tǒng)計(jì)某個(gè)時(shí)間段的,更可以導(dǎo)出CSV表格整理匯總分析;

        詳解使用GoAccess分析Nginx的日志  http://www.0106606.com/Linux/2016-07/133623.htm
        使用GoAccess分析Nginx的Virtual Host日志記錄  http://www.0106606.com/Linux/2016-07/133622.htm
        CentOS 6.5下使用GoAccess工具分析Nginx網(wǎng)站日志 http://www.0106606.com/Linux/2017-09/147131.htm

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 黑人巨大精品欧美一区二区| 91精品国产91久久综合| 亚洲动漫精品无码av天堂| 国产精品久久久久久搜索| 亚洲精品无码成人片在线观看 | 91精品国产福利在线观看麻豆 | 国内精品伊人久久久久AV影院| 久久国产精品免费| 四虎永久在线精品国产免费| 国产精品区一区二区三在线播放 | 婷婷久久精品国产| 国产精品亚洲美女久久久| 久久久九九有精品国产| 国产精品熟女一区二区| 亚洲精品国精品久久99热一| 久久精品国产福利国产琪琪| 国产精品自在拍一区二区不卡| 亚洲日韩精品欧美一区二区| 9久久9久久精品| 99香蕉国产精品偷在线观看| 麻豆亚洲AV永久无码精品久久| 伊人久久无码精品中文字幕| 久久亚洲中文字幕精品一区四| 精品欧美一区二区在线观看| 国产精品久久久99| 99久久99久久精品国产片果冻| 精品福利一区二区三| 国内精品久久久久| 91麻豆国产福利精品| 3D动漫精品啪啪一区二区下载| 精品综合久久久久久888蜜芽| 欧洲成人午夜精品无码区久久 | 四虎永久在线精品国产免费| 精品一区二区三区在线视频| 国产精品青草久久久久婷婷| 国产高清国产精品国产专区| 国产精品久久99| 久久国产精品-国产精品| 97国产视频精品| 国产精品成人免费观看| 国产一在线精品一区在线观看|