日志内容按日期筛选工具 date-filter

码农软件 · 软件分类 · 日志工具(Logging) · 2019-09-19 23:13:20

软件介绍

date-filter

用于筛选当前时间到之前指定的范围内的日志内容的小工具,支持对php慢查询日志等多行日志文件的筛选。

tail -n 20000 /var/log/nginx/access.log \
     | date-filter -layout '2006-01-02 15:04:05' -offset 1 -valid-time 1m

上例中会输出发生时间在当前时间1分钟以内的日志。

参数说明

-layout 日期格式模板

日期格式使用Go语言标准的日期时间表示方法。

例如

  • -layout '2006-01-02 15:04:05'

    [2017-01-20 10:27:17] production.DEBUG: request-consuming: 370.5661 ms [] {"process_id":10412}

  • -layout '2006-01-02T15:04:05'

    time[2017-01-20T10:25:54+08:00] ip[125.84.236.232] ...

  • -layout '02-Jan-2006 15:04:05'

    [20-Jan-2017 10:24:20]  [pool www] pid 10409

-offset 时间截取位置

目前只支持固定时间偏移位置的方式获取时间。offset指定了日期时间在每一行中的开始位置,date-filter将会从offset位置开始,截取layout长度的内容作为当前行的时间。

-valid-time 有效时间

只有在当前时间前valid-time时间范围内的行会被输出。时间单位支持nsus (or µs), mssmh。比如 300ms1.5h2h45m

使用范例

LOG_FILE=/directory/log/xxx.log
tail -n 20000 $LOG_FILE | date-filter -layout '2006-01-02 15:04:05' -offset 1 -valid-time 1m | awk -v log_file=$LOG_FILE  '{ printf "%s %s\n", log_file, $0 }' | dos2unix

本文地址:https://codercto.com/soft/d/14977.html

Java多线程编程实战指南(设计模式篇)

Java多线程编程实战指南(设计模式篇)

黄文海 / 电子工业出版社 / 2015-10 / 59.00

随着CPU 多核时代的到来,多线程编程在充分利用计算资源、提高软件服务质量方面扮演了越来越重要的角色。而 解决多线程编程中频繁出现的普遍问题可以借鉴设计模式所提供的现成解决方案。然而,多线程编程相关的设计模式书籍多采用C++作为描述语言,且书中所举的例子多与应用开发人员的实际工作相去甚远。《Java多线程编程实战指南(设计模式篇)》采用Java(JDK1.6)语言和UML 为描述语言,并结合作者多......一起来看看 《Java多线程编程实战指南(设计模式篇)》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器