日誌分析工具 GoAccess v1.3 發佈,支持簡體中文

GoAccess 簡介

簡單來說呢 GoAccess 是一個專門用來分析日誌的工具,既可以在終端中展示結果,也可以生成 HTML 報表在瀏覽器中查看。GoAccess 最吸引人的一點就是它生成的 HTML 足夠炫酷(ÒωÓױ)。

日誌分析工具 GoAccess v1.3 發佈,支持簡體中文

其他方面的特性包括

1、數據近乎是實時的——瀏覽器通過 WebSocket 從服務器上的 GoAccess 實時獲取數據;

2、配置簡單;

3、支持的日誌格式多(反正只要支持 nginx 就行(ÒωÓױ))。

GoAccess v1.3 更新

這次GoAccess v1.3是一個主要版本,自上一版本以來提交了582次提交。最重要的更新是:i18n用於法語,西班牙語,中文和日語。它還增加了對openssl-1.1的WebSocket服務器的支持。現在可以包括自定義瀏覽器以及其他功能和修復程序。

GoAccess v1.3目前已經支持簡體中文,上圖即為實時輸出的html截圖,可以看到各個模塊的名稱和簡介已經都是中文了,並且可以根據Linux默認語言來自動輸出中文。 如果你有在使用GoAccess分析器的話,強烈建議你更新。

安裝使用

遵循著能用包管理器安裝的軟件絕不編譯的原則,用 Ubuntu 上的 apt 安裝後發現版本太舊了,不支持 WebSocket 實時刷新數據,只好從頭編譯了。

安裝依賴庫

$ apt install libncursesw5-dev libssl-dev

由於我是通過 https 來訪問到 GoAccess 生成的 HTML 的,GoAccess 使用的 WebSocket 也必須使用加密的wss:// 協議,需要安裝 libssl-dev,你如果走 http 的話就不用安裝這個包了。

下載源碼

$ wget http://tar.goaccess.io/goaccess-1.2.tar.gz

為什麼不從 GitHub 上克隆呢?因為這個是穩定版,要遵循少踩坑的原則└( ̄^ ̄ )┐

##### 編譯

$ tar -xf goaccess-1.2.tar.gz

$ cd goaccess-1.2/

$ ./configure --enable-utf8 --with-openssl

$ make -j2

$ make install

參數 -j2 讓 make 可以同時編譯兩個文件,這樣稍微快一些,我的 VPS 是單核的所以沒有開太大(ノДT),還有 不需要走 https 的話可以去掉 --with-openssl 選項。

配置

GoAccess 的配置文件在 /etc/goaccess.conf,不過我喜歡把配置文件放在 $HOME。

~/.goaccessrc

time-format %H:%M:%S

date-format %d/%b/%Ylog-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"real-time-html true

ssl-cert

ssl-key

ws-url wss://

port

output /var/www//stat/index.html

需要注意的幾點

三個 format 的設置要與 nginx 的設置一致,當然如果你像我這樣根本沒改過 nginx 的日誌格式的話就用這個就行了;

real-time-html 用來使用實時刷新特性;

port 是用來和瀏覽器通信的,選一個沒被佔用的就行(別忘了在防火牆裡開啟端口!血的教訓〒△〒 哭);

如果你不走 https 的話,ssl-cert,ssl-key,ws-url都不是必需的;

把 output 放到你的站點目錄下面;

記著創建 stat/ (或者其他什麼的)文件夾。

另外說一下 ws-url,我之前沒有設置這個選項的時候 HTML 裡 WebSocket 用的協議是 ws://, 瀏覽器是不允許在 https 網頁裡使用非加密協議的,找了一圈發現 ws-url 這個選項,其實我覺得應該叫 ws-scheme 才貼切呢(・∀・)

走起~

為了後臺運行,我是用 Tmux 運行的,你也可以用 nohup 命令。

打開 Tmux 並啟動 GoAccess

$ tux

$ goaccess --config-file=.goaccessrc /var/log/nginx/access.log

一切正常的話 GoAccess 應該開始分析日誌文件了,然後顯示 "WebSocket server ready to accept new client connections"。

現在按下你 Tmux 的 PREFIX 鍵(默認是 Ctrl+B),再按 d 從 Tmux 中脫離出來,這樣即使 ssh 斷開連接了也能保持後臺運行,想查錯也可以用

$ tux attach

連接剛才那個會話。

現在用瀏覽器打開 http:///stat/ 應該就可以看見分析結果了,每秒鐘刷新一次數據。

貢獻者

  • IT實戰聯盟-Line https://www.jianshu.com/u/283f93ada597

更多精彩內容可以關注“IT實戰聯盟”公*眾*號哦~~~


分享到:


相關文章: