项目:https://github.com/likaia/nginxpulse
系统:debian12
下载并解压
进入临时目录并下载:
cd /tmp wget https://github.com/likaia/nginxpulse/releases/download/v1.5.3/nginxpulse-v1.5.3-linux-amd64.tar.gz解压文件:
tar -zxvf nginxpulse-v1.5.3-linux-amd64.tar.gz解压后会得到一个名为
nginxpulse-linux-amd64的文件。
安装并设置权限
创建安装目录并移动文件:
sudo mkdir -p /opt/nginxpulse sudo mv nginxpulse-linux-amd64 /opt/nginxpulse/赋予执行权限:
sudo chmod +x /opt/nginxpulse/nginxpulse-linux-amd64
创建配置文件
创建 configs 目录
mkdir -p /opt/nginxpulse/configs
创建配置文件
配置文件是重点,如果你使用我之前日志中心的方式,那么可以使用以下脚本生成数组
脚本
curl -sS -O https://raw.githubusercontent.com/woniu336/open_shell/main/gen_config.sh && chmod +x gen_config.sh
指定路径输出
./gen_config.sh -p /data/nginx_logs/active -o /opt/nginxpulse/configs/nginxpulse_config.json
或者手动编辑
sudo nano /opt/nginxpulse/configs/nginxpulse_config.json
粘贴以下内容,你需要手动修改站点日志路径,和访问密码
{
"websites": [
{
"name": "HostA 主站",
"logPath": "/data/nginx_logs/active/hostA/*-access.log*",
"domains": ["hostA.com"]
},
{
"name": "HostB 主站",
"logPath": "/data/nginx_logs/active/hostB/*-access.log*",
"domains": ["hostB.com"]
}
],
"system": {
"logDestination": "file",
"taskInterval": "1m",
"logRetentionDays": 30,
"demoMode": false,
"accessKeys": ["123456qq"],
"language": "zh-CN"
},
"server": {
"Port": ":8088"
},
"pvFilter": {
"statusCodeInclude": [
200,
204,
301,
302
],
"excludePatterns": [
"^/(?:api|ajax)/",
"^/index\\.php/ajax/",
"^/index\\.php/user/ajax_ulog$",
"^/health$",
"^/_(?:nuxt|next)/",
"favicon\\.ico$",
"robots\\.txt$",
"sitemap\\.xml$"
],
"excludeIPs": [
"127.0.0.1",
"::1"
]
}
}
配置 Systemd 服务
放行防火墙,例如
ufw allow 8088/tcp
创建服务文件:
sudo nano /etc/systemd/system/nginxpulse.service粘贴以下内容(注意
ExecStart指向的是你解压出来的文件名):[Unit] Description=NginxPulse Analytics Service (Binary Release) After=network.target [Service] Type=simple User=root WorkingDirectory=/opt/nginxpulse ExecStart=/opt/nginxpulse/nginxpulse-linux-amd64 Restart=on-failure RestartSec=5s [Install] WantedBy=multi-user.target
启动服务
重载 systemd 并启动:
sudo systemctl daemon-reload sudo systemctl start nginxpulse sudo systemctl enable nginxpulse检查状态:
sudo systemctl status nginxpulse确保日志目录可读(如果服务启动但没数据,执行此步):
sudo chmod -R +r /data/nginx_logs/
查看数据大小
du -sh /opt/nginxpulse/var
现在,你可以通过浏览器访问 http://服务器IP:8088 来查看 NginxPulse 面板了。