这是命令 goaccess,可以使用我们的多个免费在线工作站之一(例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器)在 OnWorks 免费托管提供商中运行
程序:
您的姓名
goaccess - 快速网络日志分析器和交互式查看器。
概要
进入 [-F 输入文件][-c][-r][-d][-m][-q][-o][-h][...]
商品描述
进入 是一个免费的(GPL)实时网络日志分析器和交互式查看器,运行在
*nix 系统中的终端。 它为系统提供快速且有价值的HTTP统计信息
需要实时可视化服务器报告的管理员。 GoAccess 解析
指定Web日志文件并将数据输出到X终端。 特点包括:
一般统计:
该面板总结了几个指标,其中一些是: 有效的数量
无效请求、分析数据集所需的时间、唯一访问者、
请求的文件、静态文件(CSS、ICO、JPG 等)HTTP 引荐来源网址、404s、大小
已解析的日志文件和带宽消耗。
不重复访客
该面板显示点击量、独立访问者和每个人的累积带宽等指标
日期。 包含相同 IP、相同日期和相同用户代理的 HTTP 请求
被视为独特访客。 默认情况下,它包括网络爬虫/蜘蛛。
请求的文件
此面板显示 Web 服务器上请求最多的文件。 表明
点击次数、独立访问者和百分比以及累积带宽,
协议和使用的请求方法。
请求的静态文件
列出最常用的静态文件,例如:JPG、CSS、SWF、JS、GIF 和 PNG
文件类型,以及与最后一个模块相同的指标。 附加静态文件
可以添加到配置文件中。
404 或未找到
与之前的面板一样列出,包含相同的指标。 该面板列出了顶部
经常出现 HTTP 404。
主机 此面板包含有关主机本身的详细信息。 它显示相同
指标与之前的面板相同,例如点击数、访客数、累积带宽。
这对于发现攻击性爬虫并识别谁在吃你的食物非常有用
带宽。
展开面板可以显示更多信息,例如主机的反向 DNS 查找
结果、原籍国和城市。 如果 -a 参数已启用,用户列表
可以通过选择所需的 IP 地址,然后按来显示代理
输入。
操作系统
该面板将报告主机连接到服务器时使用的操作系统。
它试图提供每个操作系统的最具体版本。
浏览器
该面板将报告主机在访问服务器时使用的浏览器。 它
尝试提供每个浏览器的最具体版本。
参观时间
该面板将显示每小时报告。 此选项显示 24 个数据点,其中一个
一天中的每个小时。
引荐来源网址
如果相关主机通过其他资源访问该站点,或者
从另一个主机链接/转移到您,他们引用的 URL 将是
此面板中提供。 请参阅命令行选项以忽略特定的引荐来源网址。
禁用 默认情况下。
参考网站
该面板将仅显示主机部分,而不显示整个 URL。 所在的 URL
请求来自。
关键词
它报告 Google 搜索、Google 缓存和 Google 翻译中使用的关键短语
已通向您的网络服务器。 目前仅支持Google搜索
查询。 默认情况下该面板被禁用。 请参阅您的“--ignore-panel”
配置文件来启用它。 禁用 默认情况下。
广告位置
确定 IP 地址的地理位置。 统计数据被打破
按大陆和国家排列。 它需要使用 GeoLocation 支持进行编译。
HTTP状态代码
HTTP 请求的数字状态代码的值。
注意: (可选)如果配置,所有面板都可以显示服务所需的平均时间
请求。
储存
GoAccess 可以使用三种存储选项。 选择一个将取决于
根据您的环境和需求。
GLib 哈希表
内存存储以限制数据集为代价提供了更好的性能
size 为可用物理内存量。 默认情况下,GoAccess 使用 GLib Hash
桌子。 如果您的数据集可以容纳在内存中,那么这将表现良好。 它有
平均内存使用率和相当好的性能。 为了获得更好的性能
内存权衡请参阅 Tokyo Cabinet 内存哈希数据库。
东京内阁磁盘 B+ 树
对于无法容纳的大型数据集,请使用此存储方法
记忆中的一切。 B+树数据库比任何哈希数据库都慢
因为数据必须提交到磁盘。 然而,使用 SSD 大大增加了
表现。 如果您需要数据持久化,也可以使用这种存储方式
稍后快速加载统计数据。
东京内阁内存哈希数据库
尽管这在不同的系统中可能有所不同,但总的来说,内存哈希
数据库的性能应该比 GLib 哈希表稍好一些。
配置
可以使用多个选项来配置 GoAccess。 如需完整的最新列表
配置选项,运行 /配置 - 帮帮我
--启用调试
使用调试符号进行编译并关闭编译器优化。
--启用utf8
使用广泛的字符支持进行编译。 需要 Ncursesw。
--启用geoip
使用地理位置支持进行编译。 需要 MaxMind 的 GeoIP。
--启用-tcb=
与 Tokyo Cabinet 存储支持一起编译。 内存哈希 将利用东京内阁的
内存哈希数据库。 树 将利用 Tokyo Cabinet 的磁盘 B+ 树
数据库。
--禁用-zlib
在 B+ 树数据库上禁用 zlib 压缩。
--禁用 bzip
在 B+ 树数据库上禁用 bzip2 压缩。
配置
可以将以下选项提供给命令或在配置中指定
文件。 如果在配置文件中指定,则需要使用长选项而不需要
前置--。
--时间格式=
time_format变量后跟一个空格,指定日志格式时间
包含常规字符和特殊格式说明符的任意组合。
它们都以百分号 (%) 开头。 请参阅“man strftime”。 %T or %H:%M:%S。
请注意,如果时间戳以微秒为单位给出, %f 必须用作时间格式
--日期格式=
date_format 变量后跟一个空格,指定日志格式日期
包含常规字符和特殊格式说明符的任意组合。
它们都以百分号 (%) 开头。 请参阅“man strftime”。 %Y-%m-%d。
请注意,如果时间戳以微秒为单位给出, %f 必须用作日期格式
--日志格式=
log_format 变量后跟一个空格或 \t 对于制表符分隔,指定
日志格式字符串。
请注意,如果格式中有空格,则需要将字符串括起来
双引号。 内部引号需要转义。
-a --代理列表
按主机启用用户代理列表。 为了更快地解析,请勿启用此标志。
-c --配置对话框
程序启动时提示日志/日期配置窗口。
-d --带输出解析器
在 HTML|JSON 输出上启用 IP 解析器。
-e --排除 IP=
从计数中排除 IPv4 或 IPv6。 也可以使用
IP 之间的破折号(开始-结束)。
例子:
排除 IP 127.0.0.1
排除 IP 192.168.0.1-192.168.0.100
排除 IP ::1
exclude-ip 0:0:0:0:0:ffff:808:804-0:0:0:0:0:ffff:808:808
-f --日志文件=
指定输入日志文件的路径。 如果在配置文件中设置,则需要
优先级高于命令行中的 -f。
-g --std-geoip
标准 GeoIP 数据库可减少内存使用。
-h - 帮帮我
帮助。
-H --http协议
包括 HTTP 请求协议(如果找到)。 这将创建一个包含以下内容的请求密钥
请求协议+实际请求。
-i --hl-标题
颜色突出显示活动面板。
-M --http-方法
包含 HTTP 请求方法(如果找到)。 这将创建一个包含以下内容的请求密钥
请求方法+实际请求。
-m --带鼠标
在主仪表板上启用鼠标支持。
-o --输出格式=
按照以下格式之一将输出写入标准输出: CSV : 以逗号分隔
值 (CSV) JSON :JSON(JavaScript 对象表示法)
-p --配置文件=
指定要使用的自定义配置文件。 如果设置,它将优先于
全局配置文件(如果有)。
-q --无查询字符串
忽略请求的查询字符串。 即 www.google.com/page.htm?query =>
www.google.com/page.htm。
请注意: 删除查询字符串可以大大减少内存消耗,尤其是
关于带时间戳的请求。
-r --无术语解析器
在终端输出上禁用 IP 解析器。
-s - 贮存
显示当前存储方式。 即B+树、哈希。
-V - 版
显示版本信息并退出。
--颜色方案<1|2>
选择配色方案。 1 对于默认的灰色方案。 2 为了绿色
方案。
--无色
关闭彩色输出。 这是不支持的终端上的默认输出
支持颜色。
---颜色= 面板]>
为终端输出指定自定义颜色。
颜色 句法
定义 空格/制表符 colorFG#:colorBG# [属性,面板]
FG# = 前景色 [-1...255](-1 = 默认术语颜色)
BG# = 背景颜色 [-1...255](-1 = 默认术语颜色)
或者,可以应用颜色属性(多个属性以逗号分隔)
分开),例如: 胆大, 强调, 正常 逆转, 眨
如果需要,可以为每个面板应用自定义颜色,即度量
REQUESTS 面板可以是颜色 A,而 BROWSERS 面板中的颜色相同
可以是B色。
可提供 颜色 定义:
COLOR_MTRC_HITS
COLOR_MTRC_VISITORS
颜色_MTRC_数据
颜色_MTRC_BW
COLOR_MTRC_AVGTS
COLOR_MTRC_CUMTS
COLOR_MTRC_MAXTS
颜色_MTRC_PROT
COLOR_MTRC_MTHD
颜色_MTRC_PERC
COLOR_MTRC_PERC_MAX
COLOR_PANEL_COLS
颜色条
颜色错误
颜色选择
颜色_面板_活动
COLOR_PANEL_HEADER
COLOR_PANEL_DESC
颜色_整体_LBLS
COLOR_OVERALL_VALS
COLOR_OVERALL_PATH
颜色_活动_标签
颜色_BG
颜色_默认
颜色进度
请参阅配置文件以获取示例配色方案。
--无列名
不要在终端输出中写入列名称。 默认情况下,它显示列
每个面板中每个可用指标的名称。
--html-报告标题=
设置 HTML 报告页面标题和页眉。
--调试文件=
将所有调试消息发送到指定文件。 需要配置
--启用调试
--无效请求=
将无效请求记录到指定文件。
--无全局配置
不加载全局配置文件。 该目录通常应该是
/usr/本地/等,除非指定 --sysconfdir=/目录。
--真实操作系统
显示真实的操作系统名称。 例如,Windows XP、雪豹。
--排序面板=
在初始加载时对面板进行排序。 排序选项以逗号分隔。 选项位于
形式:面板、公制、订购
可提供 指标:
BY_HITS
BY_VISITORS
BY_数据
BY_BW
BY_USEC
BY_PROT
BY_MTHD
可提供 订单:
ASC
倒序
--静态文件=
添加静态文件扩展名。 例如: Mp3。 扩展名区分大小写。
--所有静态文件
包括包含查询字符串的静态文件。
--双重解码
解码双编码值。 这包括用户代理、请求和引用者。
--忽略爬虫
忽略爬虫计数。
--ignore-panel=面板
忽略解析和显示给定面板。
可提供 面板:
访客,
要求,
请求静态,
未找到,
主持人,
OS,
浏览器,
访问_TIMES,
推荐人,
REFERRING_SITES,
关键词,
GEO_LOCATION,
状态代码,
--忽略引用=
忽略引用者的计数。 允许使用通配符。 例如, * .domain.com
www?.域名.*
--444-as-404
将非标准状态代码 444 视为 404。
--4xx-到唯一计数
将 4xx 客户端错误添加到唯一访客计数中。
- 没有进展
禁用进度指标[总请求数/每秒请求数]。
--geoip-数据库=
指定 GeoIP 数据库文件的路径。 即 GeoLiteCity.dat。 文件需要是
从 maxmind.com 下载。 还支持 IPv4 和 IPv6 文件。 请注意:
`--geoip-city-data` 是 `--geoip-database` 的别名。
--保留数据库文件
将解析后的数据保存到磁盘中。 在使用前应将其设置为第一个数据集
`从磁盘加载`。 设置为 false 退出时会删除所有数据库文件
该程序。
仅当配置了 --enable-tcb=btree 时
--从磁盘加载
从磁盘加载以前存储的数据。 数据库文件需要存在。 看 保留数据库-
文件。
仅当配置了 --enable-tcb=btree 时
--数据库路径=
磁盘数据库文件的存储路径。 默认值为 / tmp目录
目录。
仅当配置了 --enable-tcb=btree 时
--xmmap=
设置额外映射内存的大小(以字节为单位)。 默认值为 0。
仅当配置了 --enable-tcb=btree 时
--缓存-lcnum=
指定要缓存的最大叶节点数。 如果不大于0,
指定了默认值。 默认值为1024。设置更大的值
会提高速度性能,但是,内存消耗会增加。 降低
值将减少内存消耗。
仅当配置了 --enable-tcb=btree 时
--缓存-ncnum=
指定要缓存的非叶节点的最大数量。 如果不超过
0,指定默认值。 默认值为 512。
仅当配置了 --enable-tcb=btree 时
--tune-lmemb=
指定每个叶页中的成员数。 如果不大于0,则
指定了默认值。 默认值为 128。
仅当配置了 --enable-tcb=btree 时
--调整-nmemb=
指定每个非叶页中的成员数。 如果不大于0,
指定了默认值。 默认值为 256。
仅当配置了 --enable-tcb=btree 时
--调整-bnum=
指定桶数组的元素数量。 如果不大于0,则
指定了默认值。 默认值为 32749。建议的大小
桶数组大约是要存储的所有页面数量的 1 到 4 倍。
仅当配置了 --enable-tcb=btree 时
--压缩=
指定每个页面都使用 ZLIB|BZ2 编码进行压缩。
仅当配置了 --enable-tcb=btree 时
增量处理日志
GoAccess 能够通过磁盘上的 B+Tree 增量处理日志
数据库。 它的工作原理如下:
必须先使用 --keep-db-files 持久化一个数据集,然后才能使用相同的数据集
使用 --load-from-disk 加载。 如果传递新数据(通过管道或通过日志
文件),它会将其附加到原始数据集。 完全保存数据
有时,必须使用--keep-db-files。 如果使用 --load-from-disk 而不使用 --keep-db-
文件、数据库文件将在程序关闭时被删除。
定制 日志/日期 FORMAT
GoAccess 几乎可以解析任何网络日志格式。
预定义选项包括通用日志格式 (CLF)、组合日志格式 (XLF/ELF)、
包括虚拟主机、Amazon CloudFront(下载分发)、Google Cloud Storage
和 W3C 格式 (IIS)。
GoAccess 还允许任何自定义格式字符串。
有两种方法可以配置日志格式。 最简单的方法是运行 GoAccess -c 至
提示配置窗口。 否则,可以在下面进行配置 〜/ .goaccessrc 或者
%sysconfdir%。
时间格式
波长 XNUMXμm 的 时间格式 变量后跟一个空格,指定日志格式时间
包含常规字符和特殊格式说明符的任意组合。
它们都以百分号 (%) 开头。 请参阅“man strftime”。 %T or %H:%M:%S。
请注意: 如果时间戳以微秒为单位给出, %f 必须用作 时间格式
日期格式
波长 XNUMXμm 的 日期格式 变量后跟一个空格,指定日志格式日期
包含常规字符和特殊格式说明符的任意组合。
它们都以百分号 (%) 开头。 请参阅“man strftime”。 例如, %Y-%m-%d。
请注意: 如果时间戳以微秒为单位给出, %f 必须用作 日期格式
日志格式
波长 XNUMXμm 的 日志格式 变量后跟一个空格或 \t ,指定日志格式
字符串。
%x 匹配的日期和时间字段 时间格式 和 日期格式 变量。 这是
当给出时间戳而不是两个分开的日期和时间时使用
变量。
%t 时间字段匹配 时间格式 变量。
%d 个日期字段匹配 日期格式 变量。
%h 主机(客户端 IP 地址,IPv4 或 IPv6)
%r 来自客户端的请求行。 这需要围绕特定的分隔符
请求(如单引号、双引号或其他任何形式)可解析。 如果不,
我们必须使用特殊格式说明符的组合,如 %m %U %H。
%q 查询字符串。
%m 请求方法。
%U 请求的 URL 路径。
请注意: 如果查询字符串在%U中,则不需要使用 %q。 但是,如果
URL路径,不包含任何查询字符串,您可以使用 %q 和查询字符串
将附加到请求中。
%H 请求协议。
%s 服务器发送回客户端的状态代码。
%b 返回给客户端的对象的大小。
%R “Referrer”HTTP 请求标头。
%u 用户代理 HTTP 请求标头。
%D 服务请求所花费的时间,以微秒为十进制数。
%T 服务请求所花费的时间,以秒为单位,精确到毫秒。
%L 服务请求所花费的时间,以毫秒为十进制数。
请注意: 如果同时使用多个服务时间说明符,则第一个
格式字符串中指定的选项将优先于其他说明符。
%^ 忽略该字段。
%~ 向前移动日志字符串,直到找到非空格 (!isspace) 字符。
访问 过程需要在牛奶或乳清产品在管式降膜蒸发器中浓缩至约XNUMX%固体含量之前,进行初始的热处理和巴氏杀菌步骤。 以下字段:
%h 有效的 IPv4/6
%d 有效日期
%r 要求
互动 网站地图
F1或h
主要帮助。
F5 重绘主窗口。
q 退出程序、当前窗口或折叠活动模块
o 或 ENTER
展开所选模块或打开窗口
0-9 和 Shift + 0
将选定的模块设置为活动状态
j 在扩展模块中向下滚动
k 在扩展模块内向上滚动
c 设置或更改方案颜色。
TAB 模块的前向迭代。 从当前活动模块开始。
SHIFT + Tab
模块的向后迭代。 从当前活动模块开始。
^f 在活动模块中向前滚动一个屏幕。
^b 在活动模块中向后滚动一屏。
s 活动模块的排序选项
/ 搜索所有模块(允许正则表达式)
n 查找所有模块中下一个出现的位置。
g 移至第一项或屏幕顶部。
G 移至最后一项或屏幕底部。
示例
最简单和最快的用法是:
# goaccess -f 访问.log
这将生成交互式纯文本输出。
要生成完整的统计信息,我们可以运行 GoAccess:
# goaccess -f access.log -a
要生成 HTML 报告:
# goaccess -f access.log -a > 报告.html
要生成 JSON 文件:
# goaccess -f access.log -a -d -o json > reports.json
要生成 CSV 文件:
# goaccess -f access.log -o csv > 报告.csv
波长 XNUMXμm 的 -a 标志表示我们要为每个解析的主机处理代理列表。
波长 XNUMXμm 的 -d 标志表示我们要在 HTML 上启用 IP 解析器 | JSON 输出。
(输出需要更长的时间,因为它必须解决所有查询。)
波长 XNUMXμm 的 -c flag会提示日期和日志格式配置窗口。 仅当诅咒发生时
初始化。
可以通过使用管道来完成过滤。 例如使用grep进行过滤
特定数据,然后将输出传输到 GoAccess。 这增加了大量
GoAccess 可以显示的内容的灵活性。 例如:
如果我们想处理所有 访问.log.*.gz 我们可以做的:
# zcat access.log.*.gz | 访问
OR
# zcat -f 访问.log* | 访问
(在 Mac OS X 上,使用“gunzip -c”而不是“zcat”)。
另一个有用的管道是从网络日志中过滤日期
以下将获取从 05/Dec/2010 开始直到 XNUMX 年 XNUMX 月结束的所有 HTTP 请求
文件中。
# sed -n '/05\/Dec\/2010/,$ p' access.log | goaccess-a
如果我们只想解析从 DATE a 到 DATE b 的某个时间范围,我们可以这样做:
sed -n '/5\/Nov\/2010/,/5\/Dec\/2010/ p' access.log | goaccess-a
备注 这 Free Introduction 可以 采取 不再 次 至 解析 根据 on 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 速度 of sed。
要排除虚拟主机列表,您可以执行以下操作:
grep -v“cat except_vhost_list_file`”vhost_access.log | 访问
也, 值得指出的是,如果我们想以较低的优先级运行GoAccess,我们可以
运行它作为:
# 好 -n 19 goaccess -f access.log -a
如果您不想将其安装在服务器上,您仍然可以从本地运行它
机:
# ssh root@server 'cat /var/log/apache2/access.log' | goaccess-a
附注
目前,每个活动窗口共有 366 个项目。 最终这将是
可定制。 默认情况下,这 366 项在 CSV 和 JSON 导出中均可用,
并作为 HTML 报告中的可扩展面板(右上角)。
通过管道将日志传送到 GoAccess 将禁用实时功能。 这是由于
确定 STDIN 实际大小的可移植性问题。 然而,未来的版本
*可能*包括此功能。
使用 onworks.net 服务在线使用 goaccess