一款轻量级 Nginx 访问日志分析与可视化面板,支持实时统计、IP 归属地解析与客户端识别

源码:https://github.com/likaia/nginxpulse

开源协议

NginxPulse 项目,遵循 MIT 协议。这意味着你可以自由使用、修改、分发,甚至用于商业产品,只需保留原始版权声明即可。

对大多数开发者和企业来说,MIT 是最友好的开源协议之一,几乎无限制。

即刻体验一波

第一种方式:拷贝nginx日志到程序下解析

假设你有一台运行 Nginx 的服务器,日志路径为 /var/log/nginx/access.log。只需三步:

    1. 在本地创建目录:
bash 复制代码
cd /mnt
mkdir -p ./logs ./nginxpulse_data ./pgdata

###拷贝远程的nginx日志到当前目录下
cp /var/log/nginx/access.log ./logs/
    1. 启动容器:

    docker run -d --name nginxpulse
    -p 8088:8088
    -v (pwd)/logs:/share/logs:rw \ -v (pwd)/nginxpulse_data:/app/var/nginxpulse_data
    -v $(pwd)/pgdata:/app/var/pgdata
    -v /etc/localtime:/etc/localtime:ro
    magiccoders/nginxpulse:latest

    1. 浏览器打开 http://localhost:8088,按提示完成初始化。

1.4 因为是拷贝过来的日志文件,会导致文件属组不一样,无法解析日志文件

bash 复制代码
###进入容器授权
docker exec -it f79b1f8 /bin/sh
chown -R nginxpulse:nginxpulse /share/logs/

几秒后,你就能看到:

  • • 实时 PV/UV 曲线

  • • 访问来源地图(国家/城市)

  • • 客户端分布(Chrome、Safari、爬虫等)

  • • 热门页面、404 列表、Referer 分析

  • • 日志明细(支持按 IP、状态码、时间筛选)

如果日志中有内网 IP(如 192.168.x.x),默认会被排除在 PV 统计外。但你可以在配置中将 PV_EXCLUDE_IPS 设为空数组,立即纳入统计。

此外,它还能自动识别 Caddy 的 JSON 日志格式,支持自定义 Nginx log_format,甚至能解析带 $http_x_forwarded_for 的代理日志------灵活性远超普通日志分析工具。

第二种方式:程序主动去读取远程服务器的nginx日志,生产适合用

在站点与日志配置:高级来源 (sources JSON)

{ "id": "sftp-jfj", "type": "sftp", "path": "/var/log/nginx/access.log", "compression": "auto", "host": "192.168.10.1", "port": 22, "user": "root", "auth": { "password": "123456" } }

查看程序日志输出:cat /mnt/nginxpulse_data/nginxpulse.log;如下输出,说明配置成功

网站 75e7 的远端目标 /var/log/nginx/access.log 扫描完成,解析了 6 条记录

相关推荐
Chen放放8 小时前
【华三】VXLAN-三层集中式网关配置
运维·网络
碎梦归途8 小时前
思科网络设备配置命令大全,涵盖从交换机到路由器的核心配置命令
linux·运维·服务器·网络·网络协议·路由器·交换机
七维大脑虚拟机8 小时前
飞牛NAS公网IPv6+DDNS远程访问零延迟教程
运维·服务器·网络
小天源9 小时前
nginx在centos7上热升级步骤
linux·服务器·nginx
AZ996ZA9 小时前
自学linux第十八天:【Linux运维实战】系统性能优化与安全加固精要
linux·运维·安全·性能优化
一体化运维管理平台10 小时前
DevOps落地利器:美信监控易如何打通开发与运维?
运维
宴之敖者、11 小时前
Linux——\r,\n和缓冲区
linux·运维·服务器
LuDvei11 小时前
LINUX错误提示函数
linux·运维·服务器
心理之旅11 小时前
高校文献检索系统
运维·服务器·容器