在開始前我先說一下,GoAcess也能產出靜態資料只要您有log,
因為我覺的即時感覺比較炫,所以本文將專注在GoAccess即時顯示的部分進行介紹。
雖然Google Analytics(GA)很好用,但試試另一種GA感覺也很不錯,
例如您想了解網站使用者用什麼瀏覽器訪網站。
我在好幾年前自己的筆記有寫過GoAceee這款工具了,但真的太久,久到自己都忘了有這東西。
下方是早期的舊畫面,來回憶一下,本篇我就來Update一下我的最新做法。
開始前,先Show一下新的UI吧,圖中綠色的登號代表了WebSocket是有正確連線的,所以當使用者開啟了網站即時回應在畫面上。
本文我會採phpenv的環境進行說明,因為簡單好設定,但基本上phpenv就是包著docker的bash,不是包著羊度的狼哦。🤪
所以phpenv能跑,您的Docker環境設定好應該也不成問題。
如果您想搜尋phpenv可下關鍵字deviny/phpenv,就能找到囉。
那就直接開始吧,非常簡單。😎
第一步: 在phpenv中,我們可以用如下的指令導出nginx的log,可透過Ctrl+c停止
./console logs --no-log-prefix -f web|tee nginx.log
如果您不是用phpenv可將./console換成docker-compsoe試您的運氣,您的容器服務名稱可能不叫web,請自行調整。
第二步: 開啟另一個終端機,進行簡易驗證,第一步的指令中,會產生nginx.log在phpenv目錄中了。
我們可以下tail -f nginx.log指令,再開網頁,看看log會不會跑,如果會動您差不多成功了。
始用Ctrl+c中斷。
第三步: 查看環境設定檔,phpenv提供簡易的./info指令,可以讓我們查看容器的專案的環境設定
留意HTTP_PORT及FOLDER這兩個設定,跟本次操作有關。
第四步: 設定您的專案路徑,安全考量,您可以用phpenv啟動另一台不公開的WEB,或者把report.html名稱改複雜的名稱(下方指令中)。
在這裡,我直接用目前ccc專案開啟測試,ccc專案內網使用的port 1056,Laravel專案資料夾是/volume1/docker/ccc。
所以,GoAccess指令如下,請自行揣摩:
tail -f nginx.log|
docker run -p 7890:7890 --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED --real-time-html - > /volume1/docker/ccc/public/report.html
在上方兩行指令,全部拷貝貼上終端機,他會將nginx.log的標準輸出丟給goaccess的官方容器處理。
您需留意,換掉我後方的Proejct目錄/volume1/docker/ccc/public/report.html
這個容器預設會開啟port 7890的WebSocket用來傳輸資料。
上方的指令啟動前,您也可以先清一下nginx.log,因為不正確的log檔會啟動失敗。
$ >nginx.log
下圖是我啟動的結果:
我的主機內網IP是192.168.99.130,所以我就能開啟下方網址,看即時分析囉。
http://192.168.99.130:1056/report.html
你如果想改WSS的port,例如換成7800,請冒號兩邊一起換,並加上--port 7800參數,指令如下:
tail -f nginx.log|
> docker run -p 7800:7800 --rm -i -e LANG=$LANG allinurl/goaccess --port 7800 -a -o html --log-format COMBINED --real-time-html - > /volume1/docker/ccc/public/report.html
[SETTING UP STORAGE -] {0} @ {0/s}
如果您想深入專研,可以用Docker指令列出幫助說明哦
docker run --rm allinurl/goaccess --help
實際操作畫面如下載圖
以上就是輕鬆快速執行GoAcess的操作啦。
在bash的環境下,我們可以透過nohup及&把這兩個指令放到背景執行。
nohup ./console logs --no-log-prefix -f web|tee nginx.log &
nohup tail -f nginx.log|
docker run -p 7890:7890 --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED --real-time-html - > /volume1/docker/ccc/public/report.html &
最後附上官方下載網址:
https://goaccess.io/download
No Comment
Post your comment