centos中使用goaccess分析nginx日志,goaccess分析多个nginx日志
前言
goaccess官网:GoAccess - Visual Web Log Analyzer
安装
安装有两种方式,一种是编译安装,一种是直接yum安装,yum安装不一定会是最新版,但是我个人感觉,够用了。。。
1.编译安装
安装前注意:
唯一所必须的依赖为:ncurses,请在安装前检查是否有此依赖,可以直接yum install ncurses
#注意我这里并不是最新版的连接,你可以去官网找最新版的连接放在wget后来下载
wget https://tar.goaccess.io/goaccess-1.5.4.tar.gz
#若你下载的版本和我不同,自行更改解压名
tar -xzvf goaccess-1.5.4.tar.gz
#若你下载的版本和我不同,自行更改目录名
cd goaccess-1.5.4/
#编译,安装
./configure --enable-utf8 --enable-geoip=mmdb
make
make install
2.yum安装
这就简单了,会自动安装所需依赖,建议小白使用
yum install goaccess
使用
1.输出到终端
#access.log为日志名
goaccess access.log -c
若不加-c,则为默认输出到终端
若什么也没有出来,先按q退出,然后在执行如下命令,指定一下日志时间的格式
goaccess access.log --log-format=COMBINED'
原因是你的访问日志包含英文日期/月份,例如12/Jan/2021但您的机器区域设置未设置为英文
2.静态 HTML 输出
我感觉应该会很少有人用到这个功能,但是人家提供了,所以还是写上吧
goaccess access.log -o report.html --log-format=COMBINED
会将静态页面report.html输出到当前目录
3.实时输出
goaccess access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html
将输出一个实时的HTML界面,当你访问这个页面时,他自带的websocket会一秒钟请求一次,自动更新数据
如果你发现并不会实时更新,记得打开你的7890端口,他自带的websocket会使用7890端口
花里胡哨的玩法
1.goaccess一次读取多个日志文件
当你服务器上有多个站点,nginx会产生多个日志,但是你只想生成一个报告,看下列代码
cat *.log | goaccess -o report.html --log-format=COMBINED
这里你会发现,我并没有带--real-time-html参数,也就是说,并没有实时输出到页面,这是因为cat只会读取一次文件,并将读取到的文件传给goaccess,并不会实时读取
2.goaccess实时读取所有日志文件
上述虽说读取了所有日志文件,但是不会实时读取,但是,你还是想实时读取所有日志文件怎么办,虽说有办法,但是稍微有点麻烦,需要更改nginx配置
首先在nginx配置文件中,为多个站点添加两份日志,例如:
access_log /www/wwwlogs/api.test.cn.log;
access_log /www/wwwlogs/access.log;
error_log /www/wwwlogs/api.test.cn.error.log;
记得配置完日志后重启nginx: nginx -s reload
这时候只需要读取access.log,就可以读取到所有的日志了
在我写这篇文章的时候,突然有个想法,不知道能不能配置全局日志,若可以配置全局日志的话,就不需要一个站点一个站点的去配置了
3.goaccess后台运行
读取所有日志文件有了,就剩让他在后台安安静静的运行了
需要用到tmux
安装:
yum install tmux
运行:
tmux #运行tumx,运行后在其中直接输入如下命令行即可
goaccess access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html
后台运行:
退出tumx,按下Tumx的PREFIX键(默认是Ctrl+B),按下之后松开再次按d,即可离开Tmux开始后台执行
结束运行:
ps -ef | grep goaccess
kill xxxx #直接杀掉相应的进程即可
centos中使用goaccess分析nginx日志,goaccess分析多个nginx日志相关推荐
- nginx 带宽_Nginx日志如何分析 GoAccess
" 如何进行Nginx日志的分析呢?如获得topN 来源IP.URL,以及PV.UV等. " 认识下GoAccess GoAccess[1]支持对所有Web日志格式实现快速实时的分 ...
- nginx 日志分析工具php,Goaccess:好用的Nginx日志分析工具
Goaccess是一个非常良心的开源软件,它的良心之处体现在如下方面: 1)安装简单: 2)操作容易: 3)界面酷炫: 安装Goaccess十分的简单,在CentOS里直接#yum install g ...
- 日志分析处理:GoAccess 篇
日志分析处理:GoAccess 篇 这篇文章原计划在 2020 年中智源大会举办完毕之后整理出来,奈何各种事情阻塞,一直拖延至今.恰逢年末跑一些数据,以及计划搭建一些日常辅助业务运营的实时看板,借着机 ...
- Nginx日志安全分析脚本
nginx_log_check 脚本作者:al0ne 项目地址: https://github.com/al0ne/nginx_log_check Nginx日志安全分析脚本 功能 统计Top 20 ...
- nginx curl命令有效 curl_setopt无效_日志分析系列(外传一):Nginx透过代理获取真实客户端IP...
本系列中的故事纯属虚构,如有雷同实属巧合 小B是Q公司的安全攻城狮,为了完成任务小B开始做起了调研(欲知背景如何,且听下回分说). 首先小B弄明白了Q公司的应用系统架构是:Client --> ...
- centos中nginx使用
一.nginx是什么? Nginx 是一个高性能的HTTP和反向代理web服务器,他是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发 ...
- 基于python的Nginx日志管理分析系统
温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :) 1. 项目简介 本项目利用 pandas + sklearn 对 Nginx 的日志数据进行统计分析,并利用 fla ...
- CentOS中怎样安装、配置、启动Nginx
场景 Nginx在Windows下载安装启动与配置前后端请求代理: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10812202 ...
- linux查询日志中页面返回状态码,[linux shell] Shell脚本实现apache日志中的状态码分析...
这篇文章主要介绍了Shell脚本实现apache日志中的状态码分析,本文先是介绍了按天切割日志的方法,然后给出了分析访问状态码的脚本,需要的朋友可以参考下 一.首先将apache日志按天切割 复制代码 ...
- 渗透过程中日志信息分析示例
渗透过程中,我们可能用普通账号进到了系统,在提权或者进一步信息收集的过程中,我们会获得一些日志文件,根据这些日志文件我们需要进一步的分析. 下面是kali官方给的日志文件,根据这个日志,讲述一下信息收 ...
最新文章
- Android而一个超级漂亮的日历控件
- 本地连接出来的很慢解决方法
- linux目录空间内存,Linux 目录结构:内存文件夹
- python实现pdf转excel_python pdf转Excel
- 处理Img标签中src无效时出现的border
- 微信小程序websocket连接服务器(接收信息)
- 「深入浅出」主流前端框架更新批处理方式
- 代码同步工具_构建现代化的命令行工具
- 华为 P40 “一胞三胎”,最贵价 10854 元
- Java最新JDK和API下载(持续同步更新于官网)
- VB.NET 教程_04_高级教程
- 英文pdf文件翻译为中文(免费、快速)
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔 ...
- 《猎头局中局》作者萧东楼访谈摘录
- 2017-4-18 CCCC决赛总结
- 克罗内克函数Kronecker Delta【OI Pharos 6.2.1】
- 《Metasploit魔鬼训练营》环境搭建与前两章经历体会
- ffmpeg锐化算法
- Day-5 python
- javaEE和javaweb的区别