使用 Elastic/Kibana 搜索日志条目频率的模式?

Using Elastic/Kibana to search for patterns in frequency of log entries?

我需要从日志中提取数百万个条目(跨越过去几年),并以某种方式使用时间戳字段确定哪些时间段(使用星期几作为分组标准)显示最少activity。 目标是表明,例如,02:00 和 04:00 之间的星期三在历史上显示了 activity 的最低水平。 所以,我想象一个图表,X 轴上有时间段(00:00 - 00:14、00:15 - 00:29、00:30 - 00:44...或类似的...你明白了)和 Y 轴上 log activity 的某种表示形式。它将显示 7 条图表线,一条代表一周中的每一天。这将使从图中确定哪个时期最安静变得微不足道。

我以前没有亲自使用过 Kibana,但据我所知,这似乎是完成此类任务的最佳工具。

是否有功能或插件,或者某物已经具备此功能?还是我需要为此开发自定义解决方案?

最后我放弃了Kibana/Elastic。可能有一种方法可以做到,但我只是使用 MySQL:

SELECT 
    t.bucket,
    COALESCE(SUM(total), 0) AS total
FROM
    tmp_time_bucket t
        LEFT JOIN
    (SELECT 
        DATE_FORMAT(FROM_UNIXTIME(FLOOR((UNIX_TIMESTAMP(launchtime)) / 300) * 300), '%H:%i:00') AS bucket,
            COUNT(launchtime) AS total
    FROM
        launchjobs
    WHERE
        launchtime <> '0000-00-00 00:00:00'
            AND DAYNAME(launchtime) = 'wednesday'
    GROUP BY FROM_UNIXTIME(FLOOR((UNIX_TIMESTAMP(launchtime)) / 300) * 300)
    ORDER BY launchtime ASC) m ON t.bucket = m.bucket
GROUP BY bucket
ORDER BY bucket ASC

...其中 tmp_time_bucket 是一个 table,带有一个名为 bucket 的 VARCHAR(8) 列,其中包含 24 小时内的所有 288 个 5 分钟时间段(因此,"00:00:00", "00:05:00", ... "23:50:00", "23:55:00",你懂的)

我运行这7次,每天一次,并将结果集导出到CSV。然后我用了http://plot.ly and imported the data and made the graph that I needed, which (if you're interested) can be seen here: https://plot.ly/~theplankmeister/7/?share_key=FZERWAphDIQsa1swGtixb7

查看图表,我可以很容易地看出我在数据中寻找的答案是星期四 22:45 到星期五 00:55。

希望这对以后的人有所帮助!