-f access.log --log-format='%h %^ %^[%d:%t +0000] "%r" %s %b "%R" "%u"' --date-format='%d/%b/%Y' --time-format --time-format 日志格式时间。它们都以百分比(%)开头。 -a 按主机启用用户代理列表。 -d 在HTML或JSON输出上启用IP解析器。 格式化参数主要为日志格式化 --log-format、日期格式化 --date-format 和时间格式化--time-format 。
工具可以直接使用 apt-get install goaccess 2.使用goaccess命令将日志生成html文件 goaccess 日志路径 -o 输出HTML的路径 --real-time-html --time-format ="%H:%M:%S" --date-format="%d/%b/%Y" --log-format=COMBINED --real-time-html 表示实时的显示日志内容 --time-format
goaccess /www/wwwlog/access_log --log-format='%h %^[%d:%t %^] "%r" %s %b' --date-format=%d/%b/%Y --time-format www/wwwlog/access_log | goaccess --log-format='%h %^[%d:%t %^] "%r" %s %b' --date-format=%d/%b/%Y --time-format www/wwwlog/access_log | goaccess --log-format='%h %^[%d:%t %^] "%r" %s %b' --date-format=%d/%b/%Y --time-format
/html/report.html --real-time-html --time-format='%H:%M:%S' --date-format='%d/%b/%Y' --log-format=COMBINED /html/report.html --real-time-html --time-format='%H:%M:%S' --date-format='%d/%b/%Y' --log-format=COMBINED
如果我们觉得日期显示阅读不直观,可以通过命令last --time-format 进行日期格式化。 示例如下: [root@iZuf /]# last --time-format iso ... root pts/0 我的IP地址 2020-08-07T17:05:19+ (PS:+08:00 只是说明当前日期进行了时区添加,并不代表我们还需要在显示的时间中添加8小时哦) --time-format 后面的可选参数为: notime: 不显示时间。示例:(13:34)。 PS:-F 命令不能和--time-format 一起使用,因为它们两者都对输出的时间格式有影响。 3. btmp 日志 如果说wtmp是记录登录成功的日志。 示例,将时间戳进行序列化后显示如下: [root@iZuf /]# lastb -10 --time-format iso liu ssh:notty 170.64.132.128
--time-format=<timeformat> - Specify log time format. e.g., %H:%M:%S 配置 修改配置。 #compression zlib time-format %H:%M:%S date-format %d/%b/%Y log-format %h %^[%d:%t %^] "%r" %s %b "%R " "%u" 参数 参数 含义 %t 匹配time-format格式的时间字段 %d 匹配date-format格式的日期字段 %h host(客户端ip地址,包括ipv4和ipv6) %r 来自客户端的请求行
%sysconfdir%/goaccess.conf 或者 ~/.goaccessrc 注意:%sysconfdir% 可能是 /etc/, /usr/etc/ 或者 /usr/local/etc/ time-format 参数 time-format 后跟随一个空格符,指定日志的时间格式,包含普通字符与特殊格式说明符的任意组合。 %T 或者 %H:%M:%S 注意:如果给定的时间戳以微秒计算,则必须在 time-format 中使用参数 %f。 特殊格式说明符: %x 匹配 time-format 和 date-format 变量的日期和时间字段。用于使用时间戳来代替日期和时间两个独立变量的场景。 %t 匹配 time-format 变量的时间字段。 %d 匹配 date-format 变量的日期字段。 %v 根据 canonical 名称设定的服务器名称(服务区或者虚拟主机)。
参数time-format后跟随一个空格符,指定日志的时间格式,包含普通字符与特殊格式说明符的任意组合。 注意: 如果给定的时间戳以微秒计算,则必须在 time-format中使用参数%f。 注意: 如果给定的时间戳以微秒计算,则必须在 time-format中使用参数%f。 log-format参数log-format后跟随一个空格符或者制表分隔符(\t),用于指定日志字符串格式。 特殊格式说明符 %x 匹配 time-format 和 date-format 变量的日期和时间字段。用于使用时间戳来代替日期和时间两个独立变量的场景。 %t 匹配 time-format 变量的时间字段。 %d 匹配 date-format 变量的日期字段。
; 下面配置安装好GoAccess之后的配置文件: root@master:/webserver/nginx18# cat /etc/goaccess.conf |egrep -v '^$|^#' time-format %b "%R" "%u" ... # 上面的三行添加到配置文件中,其余的位置不需要改动 下面对部分的日志格式选项进行说明,更多的选项的使用可以直接参考官方文章自定义日志格式部分[3] %t 匹配time-format
配置 GoAccess GoAccess 的主要配置文件为 goaccess.conf,主要配置参数有以下几项: time-format %H:%M:%S date-format %d/%b/%Y log-format 参数说明如下: %t 匹配 time-format 格式的时间字段 %d 匹配 date-format 格式的日期字段 %h host(客户端 ip 地址,包括 ipv4 和 ipv6) %r 来自客户端的请求行 $ cat goaccess.conf time-format %H:%M:%S date-format %d/%b/%Y log-format %h %^[%d:%t %^] "%r" %s %b "
[Mon Oct 14 14:38:04 2019] IPv6: ADDRCONF(NETDEV_CHANGE): wlp1s0: link becomes ready 时间戳格式也可以使用 --time-format 例如:要使用增量格式,你可以输入: $ dmesg --time-format=delta 你也可以组合两个或多个选项: $ dmesg -H -T 要实时观看 dmesg 命令的输出,请使用 -w(-
'"$http_user_agent" "$http_x_forwarded_for"'; 基于上述日志格式,可以生成/etc/goaccess.conf配置文件: time-format d:%t %^] "%r" %s %b "%R" "%u" 对日志格式中各项的替代符都是以%百分号为前缀,加上大小写敏感的字母做标识,如果你的日志格式与默认格式不同,可以参考如下含义修改: %x:匹配time-format %t:匹配time-format变量的时间字段。 %d:匹配date-format变量的日期字段。 %v:根据规范名称设置(服务器块或虚拟主机)的服务器名称。
log-format='%h - %^ [%d:%t %^] "%m %U %H" %s %b "%R" "%u" %^ "%v" "%^" %Dms' --date-format='%d/%b/%Y' --time-format 给出一个曾经使用过的 SAE 的平台的日志格式: log-format %v %h ^% %D %^[%d:%t %^] ^% ^% ^% "%m %U %H" %s %b "%R" "%u" %^ # time-format %T time-format %H:%M:%S date-format %d/%b/%Y 使用 GoAccess 进行实时分析 GoAccess 除了能够分析静态日志外,还能够支持动态日志,添加几个监听参数后 log-format='%h - %^ [%d:%t %^] "%m %U %H" %s %b "%R" "%u" %^ "%v" "%^" %Dms' --date-format='%d/%b/%Y' --time-format
log-format='%h - %^ [%d:%t %^] "%m %U %H" %s %b "%R" "%u" %^ "%v" "%^" %Dms' --date-format='%d/%b/%Y' --time-format 给出一个曾经使用过的 SAE 的平台的日志格式: log-format %v %h ^% %D %^[%d:%t %^] ^% ^% ^% "%m %U %H" %s %b "%R" "%u" %^ # time-format %T time-format %H:%M:%S date-format %d/%b/%Y 使用 GoAccess 进行实时分析 GoAccess 除了能够分析静态日志外,还能够支持动态日志,添加几个监听参数后 log-format='%h - %^ [%d:%t %^] "%m %U %H" %s %b "%R" "%u" %^ "%v" "%^" %Dms' --date-format='%d/%b/%Y' --time-format
/html/report.html --real-time-html --time-format='%H:%M:%s' --date-format='%d/%b/%Y' --log-format=COMBINED
PATH" >>/etc/profile source /etc/profile 配置GoAccess vim /usr/local/goaccess/etc/goaccess/goaccess.conf time-format date-format %d/%b/%Y log-format %h - %^ [%d:%t %^]; "%r" %s %b "%R" - %^"%u" - %^ %T # 配置文件参数说明 # -time-format # 参数 time-format 后跟随一个空格符,指定日志的时间格式,包含普通字符与特殊格式说明符的任意组合。 # -log-format # 参数 log-format 后跟随一个空格符或者制表分隔符(\t),用于指定日志字符串格式 %x 匹配 time-format 和 date-format 变量的日期和时间字段 %t 匹配 time-format 变量的时间字段。 %d 匹配 date-format 变量的日期字段。 %v 根据 canonical 名称设定的服务器名称(服务区或者虚拟主机)。
--time-format=<timeformat> - Specify log time format. e.g., %H:%M:%S User Interface Options =$(echo "$log_format" | sed 's/$[a-z_]*/%^/g') # Config output echo " - Generated goaccess config: time-format body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for"' - Generated goaccess config: time-format ^] "%r" %s %^ %b "%R" "%u" "%^" 设置日志格式 [root@VM_0_26_centos logs]# cat /etc/goaccess/goaccess.conf time-format
这里参考陶辉在课程中使用的命令,如下 goaccess /opt/nginx/logs/access.log -o /opt/nginx/goaccess/report.html --real-time-html --time-format
and domain names -x, --system display system shutdown entries and run level changes --time-format -x, --system 显示系统关机条目和运行级别变更 --time-format
vim /etc/goaccess/goaccess.conf log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u" date-format %d/%b/%Y time-format