光年日志分析工具_超详细的GoAccess日志分析工具功能介绍及部署说明

概述

今天要介绍的GoAccess 是一款开源的且具有交互视图界面的实时 Web 日志分析工具,通过你的 Web 浏览器或者 *nix 系统下的终端程序(terminal)即可访问。


GoAccess简介

GoAccess是一个非常良心的开源软件,它的良心之处体现在如下方面:

1)安装简单;

2)操作容易;

3)界面酷炫;

GoAccess 官网 https://goaccess.io

654a483528cd040600407857d6f734ad.png

功能

1、完全实时

所有面板以及指标均按照指定时间间隔更新,在终端(Terminal)下是200ms,HTML则是每秒。

2、支持几乎所有 Web 日志格式

GoAccess 允许任意自定义日志格式。 可预定义的格式包括: Apache, Nginx, Amazon S3, Elastic Load Balancing, CloudFront, 等等

3、跟踪应用响应时间

跟踪处理请求的时间消耗。对于解决站点页面访问速度下降非常有用。

4、增长日志处理

需要持续保持数据?GoAccess 有能力处理在磁盘上以 B+Tree 数据库存储并且不断增长的日志。

5、仅依赖一个模块

GoAccess 是用 C 语言编写的。 仅仅需要 ncurses 这一个模块即可运行。同时 GoAccess 甚至还拥有自己的兼容 RFC6455 协议的 Web Socket 服务器。

6、易于使用

可以直接运行 GoAccess 去处理您的访问日志文件,仅需选取日志格式然后让 GoAccess 解析日志内容并将统计结果展示出来。

7、访客画像

可以按照小时或者指定日期确定最慢请求的访问次数,访客数量,带宽以及其他相关度量值。

8、支持虚拟主机

拥有多个虚拟主机?在控制面板中能够显示出哪一个虚拟主机消耗 Web 服务器上最多的资源。

9、配色风格可定制化

GoAccess 的配色风格十分易于定制化。无论是通过终端,还是仅仅通过简单修改 HTML 页面的层叠样式表。


编译安装GoAccess

官网提供多种系统版本的安装方法: https://goaccess.io/download#installation

wget https://tar.goaccess.io/goaccess-1.3.tar.gztar -xzvf goaccess-1.3.tar.gzcd goaccess-1.3/./configure --enable-utf8 --enable-geoip=legacymake && make install
f7fb1c5dd259a6624f5eb166104f51cf.png

报错: *** Missing development files for the GeoIP library

解决方法:

--安装epel和remi源yum install epel-releasewget http://rpms.remirepo.net/enterprise/remi-release-7.rpmrpm -Uvh remi-release-7.rpmyum install glib2 glib2-devel GeoIP-devel ncurses-devel zlib zlib-develyum -y install GeoIP-update

测试

goaccess
5433006cde2d9e6778c8e064778b2e5d.png

使用GoAccess分析日志

这里用goaccess来分析nignx 标准输出日志

goaccess -f access.log

日志格式选为 NCSA Combined Log Format

1a728b891be5b62788bf9dac1720e719.png

回车即可看到当前日志分析结果

e44a8dcdffcba4df63fa40ec51b858a3.png

觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

558e046c198602a0d4a88fd1706f5e26.gif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用 Windbg 分析互锁可以使用一些特定的命令来查看和分析系统中的互锁信息。其中一些常用的命令如下: 1. !locks - 显示系统中所有的互斥体和自旋锁的信息。 2. !handle - 查看特定进程中的所有句柄。 3. !critsec - 查看特定互斥体的详细信息。 4. !dlk - 查看死锁信息。 5. k - 查看堆栈信息,可以查看调用 WaitForSingleObject() 和 WaitForMultipleObjects() 函数的线程。 还有一些第三方工具如: 1. SpinlockTracer 2. DeadlockDetective 建议配合参考资料学习使用,并在正式的debug场景中使用。 ### 回答2: 在Windbg中分析互锁步骤如下: 1. 打开目标进程:在Windbg中选择“文件”>“打开进程”或使用命令行打开目标进程。 2. 设置符号路径:在Windbg中选择“文件”>“符号文件路径”,将包含目标二进制文件和符号文件的目录添加到符号路径中。 3. 启用调试选项:在Windbg中选择“调试”>“调试选项”,启用调试器的相关选项,例如“调试输出”、“源代码路径”等。 4. 附加到目标进程:在Windbg中选择“调试”>“附加到进程”,选择目标进程并附加。 5. 设置断点:在Windbg中选择“调试”>“新建断点”,并根据需要设置互锁相关的断点。例如,可以设置在进入或离开互锁对象的互斥体函数处设置断点。 6. 运行目标进程:在Windbg中选择“调试”>“运行”,让目标进程运行到断点处。 7. 分析互锁:一旦目标进程到达断点,可以使用Windbg的调试命令和命令扩展来分析互锁。可以使用命令如“!locks”查看进程中的所有互锁对象,“!analyze -v”分析调用栈以查找互锁问题的根本原因等。 8. 调试完成:当分析完成后,可以选择继续运行目标进程或结束调试。 以上是使用Windbg分析互锁的基本步骤。在实际应用中,还可以根据具体情况使用其他Windbg调试命令和技术来深入分析和解决互锁问题。 ### 回答3: Windbg是一款Windows操作系统上的调试工具,可以用来分析和调试应用程序的问题。在分析互锁时,以下是一些基本步骤: 1. 打开Windbg工具,并使用`file`命令加载需要分析的应用程序的可执行文件。 2. 使用`g`命令运行应用程序,使其在Windbg中开始运行。 3. 在应用程序出现问题的地方设置断点,可以使用`bp`命令设置断点,然后运行应用程序。 4. 当应用程序运行到断点处时,可以使用`!locks`命令来查看当前进程中的所有互锁对象。该命令将显示互锁对象的名称、所属线程、当前状态以及等待该互锁对象的线程列表等信息。 5. 使用`kb`命令查看当前线程的堆栈跟踪,确定哪些线程正在等待互锁对象,以及导致互锁的原因。 6. 使用`~~[数字]s`命令查看指定线程的堆栈跟踪,可以从中找出可能的问题代码。 7. 使用`!analyse -v`命令对问题进行进一步分析,该命令可以提供更多的调试信息,帮助定位问题。 8. 根据分析结果,可以在代码中找出可能存在的资源竞争或死锁问题。根据具体情况,可以修改代码、添加同步机制或者调整互锁的顺序等,以解决互锁问题。 以上是使用Windbg分析互锁的基本步骤,使用这些命令和功能可以快速定位和解决互锁问题,提高应用程序的稳定性和性能。在实际使用中,可以根据具体情况使用其他命令和调试技巧来深入分析问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值