广告
返回顶部
首页 > 资讯 > 精选 >如何使用goaccess分析nginx日志
  • 103
分享到

如何使用goaccess分析nginx日志

2023-06-20 14:06:26 103人浏览 安东尼
摘要

这篇文章主要介绍了如何使用Goaccess分析Nginx日志,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。最近想用goaccess来分析下nginx日志,但是苦于nginx日

这篇文章主要介绍了如何使用Goaccess分析Nginx日志,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

最近想用goaccess来分析下nginx日志,但是苦于nginx日志配置格式不是按照正常格式来的,完全是我们按照自己的需求来写的,所以导致goaccess分析不了,需要自己重新定义下格式;但是网上虽然介绍goaccess的很多,但是大多都是就重避轻,将格式的自定义忽略掉,因此我就来把自定义这块说下。

GoAccess是一款开源、实时,运行在命令行终端下的WEB日志分析工具。该工具提供快速、多样的Http状态统计,可以令管理员不再纠结于统计各类数据,和繁杂的指令以及一大堆管道/正则表达式说byebye。

分析nginx日志

GoAccess的多种展示方式
goaccess有多种数据可视化的方式,分别为:

命令行输出格式化数据
利用access.log生成静态的可视化数据
生成实时可视化数据
注意,如果是编译安装且选择了 –enable-geoip=mmdb的话需要编辑配置文件,并在使用命令的时候带上参数 –config-file=/usr/local/etc/goaccess/goaccess.conf,如果是用包管理器安装的话则不需要

命令行输出GoAccess
goaccess /var/log/nginx/access.log -c,会先询问你数据的格式,我这里的日志使用的是第一种。

解析accesslog生成静态html
GoAccess还可以解析access.log生成静态html,以更加直观的方式来展示数据。

goaccess /var/log/nginx/access.log -o report.html --log-fORMat=COMBINED,之后再使用浏览器访问report.html即可查看报告,各种数据一应俱全。

实时解析访问日志
GoAccess除了可以生成静态的html文件,还可以生成实时网站访问数据!

goaccess /var/log/nginx/access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html --config-file=/usr/local/etc/goaccess/goaccess.conf

添加中文支持
Goaccess 1.3之后的版本提供了多语言支持,先在命令行中执行 apt install language-pack-zh-hans 安装中文包,再使用export LANG=zh_CN.UTF-8修改环境变量,再次使用 goaccess /var/log/nginx/access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html --config-file=/usr/local/etc/goaccess/goaccess.conf启动GoAccess可以发现已经是中文界面了。

关于实时模式,可以查看官网的demo https://rt.goaccess.io/?20200209201008

异常退出
如果实时模式没有正常退出,可能无法再次正常启动,GoAccess默认使用7890 websocket端口,所以使用lsof -i:7890查看占用该端口的进程号并kill即可。

ssl支持
如果需要在加密连接上输出实时数据,则需要使用 --ssl-cert= 和 --ssl-key=,我在设置之后访问report.html发现数据依旧是静态的,突然想起我用了cloudflare cdn,而7890端口并不在cloudflare的支持端口列表里面,所以我使用参数 --ws-url=wss://服务器域名(我们的浏览器会尝试与该域名的8443端口见了ws连接):8443 --port=8443 把端口改成了8443。令人没想到的是,此时的report.html使用代理链接的时候是可以连接的,并可以查看实时信息,而直接连接的时候依旧是静态数据,tcping一看。

去cloudflare的官网可以发现如下内容

只有端口 80 和 443 可兼容以下服务:

对于启用了中国网络的域名的中国境内数据中心 HTTP/HTTPS 流量,
也就是说,国内是没办法通过cloudflare连接非80/443端口的…

反向代理
但是也不是没有办法连接,最后我想到了反向代理的方案。

将启动参数改为--ws-url=wss://你的域名.com/goaccess --port=7890

修改nginx站点配置文件 /etc/nginx/site-available/default,添加下面内容

location /goaccess {    proxy_redirect off;    proxy_pass https://127.0.0.1:7890;    proxy_http_version 1.1;    proxy_set_header Upgrade $http_upgrade;    proxy_set_header Connection "upgrade";    proxy_set_header Host $http_host;}

注意,如果你的站点配置文件里面开启了url重写,为了避免 /goaccess 受到影响,我们需要把该路径排除重写。

把重写规则都放到location / 里面去

location / {     if (-f $request_filename/index.html){    rewrite (.*) $1/index.html break;    }    if (-f $request_filename/index.PHP){    rewrite (.*) $1/index.php;    }    if (!-f $request_filename){    rewrite (.*) /index.php;    }}

下面什么都不需要做

location /goaccess/ {}

之后重启nginx,再访问report.html,发现左边齿轮处终于显示connect了。

如果你只是自己看或者不在意ip暴露,其实直接使用ip直接连接不走cdn就没那么麻烦了。

感谢你能够认真阅读完这篇文章,希望小编分享的“如何使用goaccess分析nginx日志”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: 如何使用goaccess分析nginx日志

本文链接: https://www.lsjlt.com/news/297628.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用goaccess分析nginx日志
    这篇文章主要介绍了如何使用goaccess分析nginx日志,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。最近想用goaccess来分析下nginx日志,但是苦于nginx日...
    99+
    2023-06-20
  • 使用goaccess分析nginx日志的详细方法
    最近想用goaccess来分析下nginx日志,但是苦于nginx日志配置格式不是按照正常格式来的,完全是我们按照自己的需求来写的,所以导致goaccess分析不了,需要自己重新定义...
    99+
    2022-11-12
  • 网站运维工具如何使用iis日志分析工具分析iis日志
    本篇文章给大家分享的是有关网站运维工具如何使用iis日志分析工具分析iis日志,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。对于一个需要长期维护的网站来说,如何让网站长久稳定运...
    99+
    2023-06-14
  • 如何使用shell脚本对Nginx日志进行切分
    这篇文章将为大家详细讲解有关如何使用shell脚本对Nginx日志进行切分,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体如下:1.日志格式默认的日志格式: mainlog_format ma...
    99+
    2023-06-09
  • 如何使用sql server分析系统日志
    本篇内容介绍了“如何使用sql server分析系统日志”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!.分...
    99+
    2022-10-18
  • awk如何分析web日志
    本篇文章为大家展示了awk如何分析web日志,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。小编主要讲的是通过awk分析日志,快捷得到执行时间。一、web日志文件格式代码如下:222.83.181.4...
    99+
    2023-06-13
  • 使用spark分析mysql慢日志
    熟悉oracle的童鞋都知道,在oracle中,有很多视图记录着sql执行的各项指标,我们可以根据自己的需求编写相应脚本,从oracle中获取sql的性能开销。作为开源数据库,mysql不比oracle,分...
    99+
    2022-10-18
  • 使用log miner 分析oracle日志
    当我们不小心误操作致使数据库数据丢失、改变时, 需要对数据库对象做基于时间点的恢复,找到我们需要的数据,这个时间点不能认为精确确定,我们可以通过对oracle日志进行分析,而获得无操作的精确时间点。orac...
    99+
    2022-10-18
  • 如何使用Redis实现实时日志分析
    对于大型的应用开发,日志分析是非常重要的,这对于开发者来说可以帮助了解应用的运行情况,从而更好地改进应用的性能和可靠性。Redis是一个基于内存的数据存储系统,具有高效、易于使用和可扩展等特点。在本文中,我们将介绍如何使用Redis实现实时...
    99+
    2023-11-07
    redis 日志处理 实时分析
  • mongodb中如何使用mtools日志分析工具
    这篇文章将为大家详细讲解有关mongodb中如何使用mtools日志分析工具,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。安装过程<pip 安装>...
    99+
    2022-10-18
  • Bash 中如何分析 ASP 日志?
    ASP(Active Server Pages)是一种动态网页技术,常用于构建基于 Microsoft Windows 操作系统的 Web 应用程序。在 ASP 应用程序中,日志是一种非常重要的信息来源,可以帮助开发人员和运维人员了解应用...
    99+
    2023-11-06
    日志 windows bash
  • 如何实现JMeter自定义日志与日志分析
    这篇文章主要介绍如何实现JMeter自定义日志与日志分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1 JMeter日志概览JMeter与Java程序一样,会记录事件日志,日志文件保存在bin目录中,名称为jmet...
    99+
    2023-06-22
  • 使用Mtools分析MongoDB日志文件
    一 Mtools介绍  mtools是一组用来解析和过滤MongoDB日志文件的脚本。mtools包括以下几个工具:  mlogfilter    可以根据时间切割日...
    99+
    2022-10-18
  • 如何使用Apache日志分析工具分析二维码访问?
    Apache是一个流行的Web服务器,用于许多网站和Web应用程序。Apache可以生成日志文件,这些文件可以用于分析网站的访问情况。在本文中,我们将讨论如何使用Apache日志分析工具分析二维码访问。 二维码是一种广泛使用的技术,用于在移...
    99+
    2023-08-12
    二维码 apache 日志
  • 如何使用PHP记录和分析路径日志?
    PHP是一门非常流行的服务器端脚本语言,被广泛应用于Web应用程序的开发。在Web应用程序的开发过程中,记录和分析路径日志是一个非常重要的环节,因为它可以帮助开发人员更好地理解用户的行为和意图。在本文中,我们将介绍如何使用PHP记录和分析路...
    99+
    2023-08-03
    响应 path 日志
  • 如何在 Apache 日志中使用 NumPy 进行分析?
    Apache 日志是一种非常有用的数据源,可以用于分析网站的流量、用户行为等信息。NumPy 是 Python 中一个强大的数学库,可以用于数据分析、统计学和科学计算等领域。本文将介绍如何在 Apache 日志中使用 NumPy 进行分析。...
    99+
    2023-08-18
    numpy 日志 apache
  • 如何使用 Python 和 Bash 实时分析 Apache 日志?
    Apache 是使用最广泛的 Web 服务器软件之一,它的日志文件记录了每个请求的详细信息,包括请求的时间、请求的 URL、请求的状态码、请求的来源等等。这些信息可以帮助我们分析网站的流量、用户行为以及网站的性能等等。但是,日志文件往往非...
    99+
    2023-08-25
    实时 apache bash
  • 怎么使用pt-query-digest分析日志
    这篇文章给大家分享的是有关怎么使用pt-query-digest分析日志的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 1、工具介绍pt-query-...
    99+
    2022-10-18
  • 如何分析Linux系统日志文件
    这篇文章的内容主要围绕如何分析Linux系统日志文件进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!在Linux系统中日志是一个非常重要的文件,日志文...
    99+
    2023-06-28
  • 如何在Linux上使用PHP来分析大数据日志?
    作为一名开发人员,在处理大量数据时,我们经常需要分析和处理日志文件。而在Linux系统下,PHP是一种非常方便的语言,可以用来处理和分析大数据日志。下面是如何在Linux上使用PHP来分析大数据日志的详细指南。 第一步:安装PHP 在Lin...
    99+
    2023-09-10
    linux 日志 大数据
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作