NixVis
NixVis 是一款基于 Go 語言開發的、開源輕量級 Nginx 日志分析工具,專為自部署場景設計。它提供直觀的數據可視化和全面的統計分析功能,幫助您實時監控網站流量、訪問來源和地理分布等關鍵指標,無需復雜配置即可快速部署使用。
- 演示地址:nixvis.beyondxin
- 項目源碼:BeyondXinXin/nixvis
功能特點
- 全面訪問指標:實時統計獨立訪客數 (UV)、頁面瀏覽量 (PV) 和流量數據
- 地理位置分布:展示國內和全球訪問來源的可視化地圖
- 詳細訪問排名:提供 URL、引薦來源、瀏覽器、操作系統和設備類型的訪問排名
- 時間序列分析:支持按小時和按天查看訪問趨勢
- 多站點支持:可同時監控多個網站的訪問數據
- 增量日志解析:自動掃描 Nginx 日志文件,解析并存儲最新數據
- 高性能查詢:存儲使用輕量級 SQLite,結合多級緩存策略實現快速響應
- 嵌入式資源:前端資源和IP庫內嵌于可執行文件中,無需額外部署靜態文件
快速開始
- 下載最新版本的 NixVis
wget https://github.com/beyondxinxin/nixvis/releases/latest/download/nixvis
chmod +x nixvis
- 生成配置文件
./nixvis -gen-config
執行后將在當前目錄生成 nixvis_config.json 配置文件。
- 編輯配置文件 nixvis_config.json,添加您的網站信息和日志路徑
{
"system": {"logDestination": "file"
},
"server": {"Port": ":8088"
},
"websites": [{"name": "我的博客","logPath": "/var/log/nginx/blog.log"}
]
}
- 啟動 NixVis 服務
./nixvis
- 訪問 Web 界面
http://localhost:8088
從源碼編譯
如果您想從源碼編譯 NixVis,請按照以下步驟操作:
# 克隆項目倉庫
git clone https://github.com/BeyondXinXin/nixvis.git
cd nixvis# 編譯項目
go mod tidy
go build -o nixvis ./cmd/nixvis/main.go# 或使用編譯腳本
# bash package.sh
技術棧
- 后端: Go語言 (Gin框架、ip2region地理位置查詢)
- 前端: 原生HTML5/CSS3/JavaScript (ECharts地圖可視化、Chart.js圖表)
許可證
NixVis 使用 MIT 許可證開源發布。詳情請查看 LICENSE 文件。