LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

告别逐行翻日志!这款神器一键可视化解析 Nginx 日志!

zhenglin
2026年2月7日 16:23 本文热度 149
对于运维人员、站长来说,Nginx 日志是分析网站访问情况的核心,但逐行翻阅、手动统计 PV/UV、排查 IP 归属地的过程,耗时又费力。尤其是多站点部署时,不同日志文件切换、数据零散的问题,更是让人效率大打折扣。

今天,给大家推荐一款开源的轻量级 Nginx 日志分析可视化面板,告别逐行翻日志!


项目介绍

nginxpulse —— 一款轻量级 Nginx 访问日志分析与可视化面板,提供实时统计、PV 过滤、IP 归属地与客户端解析。

功能特色

  • 轻量化部署:支持 Docker 部署,无需搭建复杂依赖环境,基于 Go 语言开发,后端高性能低消耗,搭配 SQLite 轻量化数据库,无需额外部署数据库服务

  • 多维度日志分析:支持同时挂载多个 Nginx 日志文件,自动统计 PV/UV、访问频次、请求状态码、客户端(浏览器/设备)、访问时段等维度数据

  • 智能 IP 解析:IP 归属地按地域分类展示,可快速定位异常访问 IP、高频访问区域

  • 灵活适配:支持适配非标准 Nginx 日志格式,只需调整解析规则配置,无需修改代码,还适配 Caddy 服务器日志解析,一站式搞定多类 Web 服务器日志分析


技术栈

  • 后端Go + SQLite + Ip2Region

  • 前端Vue3 + Vite + TypeScript


快速上手

Docker 部署

1、拉取镜像


docker pull magiccoders/nginxpulse:latest

2、创建挂载目录

mkdir -p /data/software/nginxpulse

3、运行容器


docker run -d --name nginxpulse \

  -p 8088:8088 \

  -p 8089:8089 \

  -e WEBSITES='[{"name":"Java陈序员","logPath":"/share/log/nginx/access.log","domains":["chencoding.top","chencoding.top"]}]' \

  -e ACCESS_KEYS='["key-1","key-2"]' \

  -v /data/software/nginx/access.log:/share/log/nginx/access.log:ro \

  -v /data/software/nginxpulse:/app/var/nginxpulse_data \

  magiccoders/nginxpulse:latest

参数说明

  • 8088:前端访问端口

  • 8088:后端访问端口

  • -e WEBSITES:指定网站列表的 JSON 数组,字段:namelogPathdomains(可选)

  • -e ACCESS_KEYS:访问密钥列表,为非空数组时,访问 UI 和 API 都需要提供密钥


4、浏览器访问

代码高亮:

http://{IP/域名}:8088

Docker Compose 部署

1、创建 docker-compose.yml 文件,并写入如下内容:


version: "3.8"

services:

  nginxpulse:

    image: magiccoders/nginxpulse:latest

    container_name: nginxpulse

    ports:

      - "8088:8088"

      - "8089:8089"

    environment:

      WEBSITES: '[{"name":"Java陈序员","logPath":"/share/log/nginx/access.log","domains":["chencoding.top","chencoding.top"]}]'

      ACCESS_KEYS: '["key-1","key-2"]'

    volumes:

      - /data/software/nginx/access.log:/share/log/nginx/access.log:ro

      - /data/software/nginxpulse:/app/var/nginxpulse_data

      - /etc/localtime:/etc/localtime:ro

    restart: unless-stopped

2、启动运行


docker compose up -d


日志文件挂载

  • 多日志文件挂载

WEBSITES 的值是个数组,参数对象中传入网站名、网址、日志路径。例如:


environment:

  WEBSITES: '[{"name":"网站1","logPath":"/share/log/nginx/access-site1.log","domains":["www.kaisir.cn","kaisir.cn"]}, {"name":"网站2","logPath":"/share/log/nginx/access-site2.log","domains":["home.kaisir.cn"]}]'

volumes:

  - ./nginx_data/logs/site1/access.log:/share/log/nginx/access-site1.log:ro

  - ./nginx_data/logs/site2/access.log:/share/log/nginx/access-site2.log:ro

  • 日志目录挂载

如果有很多个网站要分析,可以考虑将日志目录整体挂载进去,然后在 WEBSITES 里去指定具体的日志文件即可。例如:

environment:

  WEBSITES: '[{"name":"网站1","logPath":"/share/log/nginx/access-site1.log","domains":["www.kaisir.cn","kaisir.cn"]}, {"name":"网站2","logPath":"/share/log/nginx/access-site2.log","domains":["home.kaisir.cn"]}]'

volumes:

  - ./nginx_data/logs:/share/log/nginx/

  • 压缩日志(.gz)挂载

nginxpulse 还支持直接解析 .gz 压缩日志,logPath 可指向单个 .gz 文件或使用通配符。例如:

{"logPath": "/share/log/nginx/access-*.log.gz"}

功能体验

  • 概况


  • 数据日报

 

  • 实时
 
  • 访问明细

不管是个人站长、中小企业运维,还是个人开发,nginxpulse 都能帮你告别繁琐的日志分析,用最简单的方式掌握网站访问数据。快去试试吧~


项目地址:https://github.com/likaia/nginxpulse


最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/


参考文章:原文链接









该文章在 2026/2/7 16:23:04 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved