date-filter

日志内容按日期筛选工具
授权协议 MIT
开发语言 Google Go
所属分类 程序开发、 日志工具(Logging)
软件类型 开源软件
地区 国产
投 递 者 严知
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

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
  • angularJS的date过滤器可以将日期格式化成需要的格式。 测试时间对象:”2016-12-03T02:43:51.535Z“ 常用方式: <!-- 2016-12-03 10:43:51 --> {{now | date : 'yyyy-MM-dd HH:mm:ss'}} 如果没有指定格式,angularJS会采用默认格式mediumDate {{data | date}}<!

  •   指定某个字段作为event的时间戳。   id:filter id,便于区分相同date tag_on_failure:匹配失败输出提示     # 匹配  #匹配Aug 13 2010 00:03:44 date {            match => [ "logdate", "MMM dd yyyy HH:mm:ss", "MMM d yyyy HH:mm:ss" ]        

  • package org.sidao.common; import java.text.DateFormat; import java.text.DecimalFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.D

  • date-fns较moment相比,更为轻量化,在实际开发中推荐使用date-fns。下面还是介绍它的使用方式: 一、安装moment.js npm install --save date-fns 二、自定义过滤器filter.js文件 //filter.js import Vue from 'vue' import format from 'date-fns/format' //自定义过滤

  • intent-filter详细属性的介绍 <intent-filter/>是每一个Activity对应的过滤器标签节点。每一个过滤器里面的元素可以有: 0个或多个<action.../> 0个或多个<category.../> 0个或1个<data.../> (一)全部属性的简介 Intent通过下面的属性来描述的某个意图: 1. action(动作): 用来表示意图的动作,如:查看,发邮件,打电

  • val df = sc.parallelize(Seq(("a", 1), ("a", 2), ("b", 2), ("b", 3), ("c", 1))).toDF("id", "num") 对整数类型过滤 逻辑运算符:>, <, === df.filter($"num"===2) df.filter($"num">2) df.filter($"num"<2) 或者 df.filter("num

  • 背景: angular filter 常见于和ng-bind、差值表达式、ng-repeat 配合转换后端 unix 时间戳. 但 filter 不支持和 ng-model 一起使用. 解决思路: 通过angular directive 结合 $filter服务封装一个支持转换 ng-model中 时间戳为指定格式的指令. 代码如下: app.directive('dateFormat', dat

  • 首先来语段很官方的介绍: Django-filter是一个通用的、可重用的应用程序来缓解写一些平凡的视图代码。具体地说,它允许用户过滤queryset基于模型 的字段,从而显示对应的过滤结果。因此在使用django-filter 的时候能节省很多查询的后台代码。 版本支持: Python: 3.4, 3.5, 3.6 Django: 1.11, 2.0b DRF: 3.7 首先从安装说起,还是用常

  • 结合git官方文档做出小改动,匹配条件修改为时间匹配,命令如下: git filter-branch -f --commit-filter ' #重写提交时间等于指定时间戳的历史 if [ "$GIT_COMMITTER_DATE" = "@1582736444 +0800" ]; then GIT_COMMITTER

  • django-filter是drf的第三方包,用来实现条件过滤,和modelviewset配合使用就是如虎添翼,用最少的代码实现功能。下面是django-filter的高级搜索, 比如模糊查询,范围查询等。 class User(models.Model): username = models.CharField(max_length=100) email = models.CharFie

 相关资料
  • 问题内容: 我想根据日期从数据库中筛选值。 数据库中的日期包含以下值:2008-12-28 18:00:00。我的班级有一个DateTime变量,具体取决于我要过滤的变量。理想情况下,它将像这样工作: +根据需要调整myDateTime.Date格式。 但是它抛出一个EvaluateException:“该表达式包含未定义的函数调用DATE()。” 尽管如果直接执行SQL语句,则可以在过滤器中使用

  • 我在Azure中有一个应用程序洞察资源。在我们的Java应用程序中,我们有一个log4j.xml文件,它根据服务名称写入多个日志文件。 我正在将Application Insights appender添加到日志记录中,并且能够在Application Insights资源中看到不同日志文件的所有日志。但是,我无法在Application Insights中通过日志文件名进行筛选,因此跟踪日志是没

  • DatePicker 日期选择器 用于选择或输入日期 选择日 以「日」为基本单位,基础的日期选择控件 :::demo 基本单位由type属性指定。快捷选项需配置shortcuts,禁用日期通过 disabledDate 设置,传入函数 constructor(props) { super(props) this.state = {} } render() { const {valu

  • 我在Scala上有一个项目。我使用这个库记录https://github.com/typesafehub/scala-logging 我创建记录器 和两个标记 为什么marker和marker2可见,为什么DENY不起作用? 如何排除两个标记? 如何只排除一个标记?

  • 这种情况非常简单,如ADFv2文档和示例中所述,我已经创建了一个复制管道来从MongoDB集合中获取数据,并将其写入AzureSQL数据库。 已成功传输完整采集数据,并且所有映射都已正确设置。当我试图过滤源数据集以仅从MongoDB获取最后n天时,问题就开始了。我尝试了几个查询,并与MongoDB Compass进行了交叉检查,以确定它们是否真的在执行Mongo-side,事实就是这样。归结起来就

  • 我正在尝试添加一个带有日期范围筛选器的服务器端datatable实现。筛选器不筛选任何数据。我不知道它坏在哪里。需要你帮我弄清楚我错在哪里。 这是剧本。 这是Html

  • 原文: http://exploringjs.com/impatient-js/ch_dates.html 本章介绍 JavaScript 用于处理日期的 API - Date。 40.1。最佳实践:不要使用当前的内置 API JavaScript Date API 使用起来很麻烦。因此,最好依靠图书馆来处理与日期相关的任何事情。热门图书馆包括: Moment.js Day.js Luxon js

  • https://graph.microsoft.com/v1.0/users?$select=id,displayName,jobTitle,createdDateTime 无论我输入任何筛选器,请参见下面的示例,我从未得到任何关于“'created datetime>2018-08-02t13:01:13z'中位置26处的语法错误”的错误响应。 https://graph.microsoft.c