问题标签 [logstash-configuration]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
2851 浏览

amazon-s3 - Logstash S3 输出插件编解码器问题

我在logstash中遇到了一些奇怪的行为,在输入/文件和输出/s3上使用编解码器的组合。output/s3 logstash 插件似乎存在问题,因为除非我在 output/s3 插件中指定编解码器,否则我无法将任何部分文件上传到 S3。

我正在跟踪 java 应用程序日志文件,因此理想情况下我使用输入/文件插件来监视目录中的所有日志文件,并确保遇到的任何堆栈跟踪(及其新行)都包含在同一个 logstash 事件中。我这样做是这样的:

这将正确地将我的堆栈跟踪附加到它们的父事件。然后我想执行两个不同的输出/s3 操作(基本上是逐行重新创建原始日志,并上传事件 json):

使用“json_lines”编解码器的 S3 上传工作正常,但使用默认“plain”编解码器的原始日志上传根本不起作用。这些文件位于我的临时目录中,永远不会被推送到 S3。我曾尝试使用“线路”编解码器,但仍然是相同的行为。如果我从输入/文件插件中删除“多行”编解码器并在我的输出/S3 原始插件中使用它,那么它们将上传到 S3 就好了,但是堆栈跟踪中的每个换行符都作为自己的事件进来,因此编解码器似乎没有完成它的工作。

知道为什么输出/S3 插件似乎只适用于 json_lines 和多行吗?

0 投票
0 回答
140 浏览

logstash - 在logstash中读取文件的顺序不同

我有多个按降序编写的日志文件。即 xyz.log.5 的内容写在日志 xyz.log.4 的内容之前。日志文件的数量未知。

所以,我使用通配符来读取文件

但这是按升序读取文件。按降序阅读很重要,因为我的日志包含跨越多个文件的基于时间的事件,并且我正在使用经过的过滤器计算时间间隔。所以,目前我得到的时间间隔不正确,因为阅读顺序不同。

有没有办法强制logstash按降序读取?

0 投票
2 回答
3176 浏览

tomcat - 用于 tomcat 日志的 Grok 模式在 Grok 调试器上给出了编译错误

我正在尝试为 Java 应用程序设置 ELK。tomcat 日志是使用 log4j 生成的。要编写测试模式,我正在使用Grok Debugger。但是在调试器上它总是显示

编译错误

我的日志样本:

我的 grok 过滤器:

我的模式:

0 投票
1 回答
108 浏览

elasticsearch - 在 logstash 1.5 中跨事件保留标签/字段

我正在使用 logstash 1.5 来分析日志。

我想跟踪一个接一个发生的两个事件。所以我想在第一个事件发生时设置一个标志/字段/标签,并在事件之间保留该值。

我查看了此链接,但似乎 grep 和 drop 在 logstash 1.5 中不受支持。

有没有办法实现这一目标?

0 投票
1 回答
501 浏览

logstash - 用于星号的 logstash 多行过滤器

# Logstash 配置问题

我的实际日志文件如下所示:

信息 - 2015 年 6 月 22 日 06:55:11 - \n**************************************** ***********************************************\n* ******** XXXXXXXXXXXXXXXXXXXXX 2015-06-22 06:55:11\n********** 时区为太平洋标准时间或美国/洛杉矶\n******* ****************************************************** *************************\n\n\nINFO - 2015-06-22 06:55:32 - 已完成加载连接器模块

在logstash上,我应用了多行过滤器

我期望输出

1.

信息 - 2015 年 6 月 22 日 06:55:11 - \n**************************************** ***********************************************\n* ******** XXXXXXXXXXXXXXXXXXXXX 2015-06-22 06:55:11\n********** 时区为太平洋标准时间或美国/洛杉矶\n******* ****************************************************** *************************

2.

INFO - 2015-06-22 06:55:32 - 完成加载连接器模块

但我得到的结果是

  1. 信息 - 2015-06-22 06:55:11 -

2.

\n************************************************ ************************************\n********* XXXXXXXXXXXXXXXXXXXXX 2015-06- 22 06:55:11\n********** 时区为太平洋标准时间或美国/洛杉矶

3.

\n************************************************ ************************************\n\n\n信息 - 2015-06-22 06:55: 32 - 完成加载连接器模块

谁能建议我在多行模式上哪里出错了?

0 投票
2 回答
8126 浏览

logstash - Logstash 配置:如果 ["list item 1"] 中的 [field] 有条件,则列表不起作用

我正在使用 Logstash 处理一些流数据。现在我在使用条件标记数据时遇到了一个问题。

如果我在 logstash 配置中写下以下内容

一切正常,但现在我想使用一个列表

并且只得到一个 not_working 标签。

有什么建议么?提前致谢!

0 投票
3 回答
583 浏览

logstash - 如何将新的动态值(输入中不存在)添加到logstash输出?

我的输入具有 Apr20 14:59:41248 Dataxyz 格式的时间戳。现在在我的输出中,我需要以下格式的时间戳:**Day Month Monthday Hour:Minute:Second Year DataXYZ **。我能够从输入中删除时间戳。但我不太确定如何添加新的时间戳。

我在接收输入时使用 grok 匹配了消息: match => ["message","%{WORD:word} %{TIME:time} %{GREEDYDATA:content}"]

我尝试使用 mutate add_field.but 没有成功添加 DAY 的值。add_field => [ "timestamp","%{DAY}"].我得到的输出是单词'DAY'而不是DAY的值。有人可以对错过的内容有所了解。

在此处输入图像描述

0 投票
0 回答
402 浏览

logstash - 计数/增量在 logstash 中不起作用

我从每一行过滤一些“状态代码”作为输出属性。比如,代码 = 100,代码 = 100,代码 = 200,代码 = 200,代码 = 200,代码 = 300

在这里,我试图获取每种状态代码的计数,例如100 = 2、200 = 3、300 = 1

正在处理的配置看起来像,

我知道 statsd 配置错误,但无法修复。

0 投票
3 回答
4275 浏览

ruby - logstash中红宝石过滤器中的四舍五入浮点数

我正在使用 'elapsed' logstash 过滤器来计算事件的持续时间。我需要以分钟而不是秒为单位的时间,这是 logstash 中的默认设置。所以,我使用 ruby​​ 过滤器进行转换,但我无法在 ruby​​ 过滤器内将浮点数四舍五入到小数点后两位。

我尝试使用显示格式“.2f”,但它不起作用,可能是因为引号。使用转义字符也不起作用。

我也在浮点数上尝试了 .round(2),但保留了原始值。

0 投票
0 回答
242 浏览

jdbc - 无法配置 JDBC 输入

以下是我的配置 -

当我运行配置文件时,我收到以下错误 -

谁能帮我解决它?我当前的 Java 版本是 -

任何有关 JDBC 输入配置的参考链接将不胜感激。