熱門分類
載入中…
目錄0%

📡 Linux Log 分析與視覺化:使用 GoAccess 解析 Web 流量

    📡 Linux Log 分析與視覺化:使用 GoAccess 解析 Web 流量

    更新日期:2025 年 10 月 22 日 | 作者:WWFandy


    💡 一、為什麼要做流量分析?

    當你在維護網站或 Proxy Server 時,了解使用者的連線行為至關重要。 透過 GoAccess,我們能將 Nginx 或 Squid 的日誌轉化為圖表與統計報表, 幫助你快速掌握流量高峰、來源分佈與錯誤比例。

    • 支援 即時更新(Web UI)
    • 可解析 Nginx / Apache / Squid 等格式
    • 生成 互動式 HTML 報表
    • 整合 ELK / Grafana 進行深度分析

    🧰 二、環境與安裝

    1️⃣ 安裝 GoAccess

    # CentOS / Rocky Linux
    sudo dnf install goaccess -y
    
    # Ubuntu / Debian
    sudo apt install goaccess -y
    

    2️⃣ 確認日誌來源

    以 Nginx 為例:

    sudo cat /var/log/nginx/access.log | head -5
    

    若是 Squid Proxy,可查看:

    sudo cat /var/log/squid/access.log | head -5
    

    🛠️ 三、快速生成報表

    1️⃣ 生成互動式報表

    sudo goaccess /var/log/nginx/access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html
    

    執行後可透過瀏覽器開啟: http://你的伺服器IP/report.html

    2️⃣ 監控實時流量

    GoAccess 也能直接啟動 Web 伺服器:

    goaccess /var/log/nginx/access.log --log-format=COMBINED --real-time-html -o report.html --ws-url=你的伺服器IP:7890
    
    💡 若要長期使用,可將其加入 systemd 服務或使用 screen 背景執行。

    📈 四、報表重點解讀

    • 🌍 Visitors: 訪客來源與地區分佈
    • 📂 Requested Files: 最常被訪問的頁面
    • ⚙️ Static Resources: JS、CSS、圖片比例
    • 🚫 HTTP Status: 錯誤分佈(404、500 等)
    • ⏱️ Time Distribution: 高峰時段與流量趨勢

    可搭配 🐧 Linux Proxy Server 教學, 分析內部網路使用行為。


    🧩 五、整合 Zabbix 或 ELK

    若你已架設 📈 Zabbix 監控平台, 可將 GoAccess 統計結果輸出 JSON 格式後,匯入 Zabbix Item 中建立圖表。 若需要更進階的分析,可搭配 ELK Stack(Elasticsearch + Logstash + Kibana)視覺化呈現。


    🔗 延伸閱讀

    — WWFandy・Linux 系統與網路筆記

    🔗 分享這篇 LINE Facebook X

    沒有留言:

    字級