[喵咪Liunx(6)]Nginx日志分析工具goaccess
[喵咪Liunx(6)]Nginx日志分析工具goaccess
#w-blog博客
前言
哈喽大家好呀!真是好久不见了,说来有些惭愧,离上一次发布博客已经是2016年的事情了,在这段时间中工作也比较忙,需要学习的东西也比较多,趁着过年前后有一些时间可以来好好分享分享一些有意思的东西,今天给大家带来的是Nginx日志分析工具goaccess,goaccess可以对Nginx的LOG文件进行分析,对请求量,用户数量等进行可视化展示,好那么久进入我们今天的正题吧!
附上:
喵了个咪的博客:w-blog.cn
goaccess官网地址:https://www.goaccess.io/
1. 安装
goaccess安装非常便捷实用
centos实用yum就可以进行安装
yum install goaccess
Debian/Ubuntu实用apt-get
apt-get install goaccess
但是通过yum安装的版本不更换源最新的是0.9.3版本官方版本已经1.1.1了,需要安装最新版本可以实用如下方法
wget http://tar.goaccess.io/goaccess-1.1.1.tar.gz
tar -xzvf goaccess-1.1.1.tar.gz
cd goaccess-1.1.1/
./configure --enable-geoip --enable-utf8
make
make install
最后使用 goaccess -V 可以看到如下信息则安装完成
GoAccess - 1.1.1.
For more details visit: http://goaccess.io
Copyright (C) 2009-2016 by Gerardo Orellana
2. 使用
GoAccess 可以很好的分析Nginx日志,使用 goaccess -f access_nginx.log 见下图
使用空格之后加回车即可进行分析
结果如下:
3. 导出分析结果
GoAccess 能够将结果导出成html,csv或JSON格式
但是在生成的时候需要一个配置文件来确认需要解析文件的格式,以Nginx为例子
vim .goaccessrc
# 加入如下内容
time-format %T
date-format %d/%b/%Y
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"
# 生成HTML:
goaccess -f access_nginx.log -p .goaccessrc -a > access_nginx.html
# 生成CSV:
goaccess -f access_nginx.log -p .goaccessrc -a -o csv > access_nginx.csv
# 生成JSON:
goaccess -f access_nginx.log -p .goaccessrc -a -o json > access_nginx.json
通过到处来的文件就可以自行进行分析,无论是吧html显示出来还是对json进行解析入库分析都是极好的
4. 总结
今天主要是讲了关于GoAccess的安装使用以及导出分析结构, GoAccess在日常查看Nginx日志分析请求量的时候确实比较好用,但是并不是很灵活,比如一些线上遇到紧急问题GoAccess很难能够直接反应出来, GoAccess只能作为离线日志分析,在今后的博文中将会说到BELK日志消息系统,功能更强大但是会更加复杂,只是简单的对Nginx进行访问量统计.接口统计还是使用GoAccess会比较方便,那么今天的就到这里谢谢大家的支持!
注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【leetcode两题选手】MySQL类题目(一)
- 【LeetCode每日一题】(8.11)被围绕的区域
- 二叉树的前中后序遍历(迭代法)(带动画)
- 【LeetCode两题选手】算法类题目(8.8)
- 【LeetCode每日一题】(8.9)复原IP地址(回溯)
- 【回溯算法】N叉树相关技巧
- 【回溯算法】回溯,从入门到入土,七道试题精选、精讲、精练
- 数据结构练手小项目(AVL树、哈希表、循环链表、MySQL数据库)
- 【LeetCode】每日一题(8.2)二叉树展开为链表
- 【小技巧】argc和argv的用法
- 全面分析redis持久化机制
- 【奇技淫巧】-- 接雨水
- 【奇技淫巧】-- 最长连续序列
- 【redis】跟我一起动手玩玩redis主从复制和哨兵模式
- 【C++】八大排序算法 :GIF + 亲测代码 +专项练习平台