问题标签 [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.
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 和多行吗?
logstash - 在logstash中读取文件的顺序不同
我有多个按降序编写的日志文件。即 xyz.log.5 的内容写在日志 xyz.log.4 的内容之前。日志文件的数量未知。
所以,我使用通配符来读取文件
但这是按升序读取文件。按降序阅读很重要,因为我的日志包含跨越多个文件的基于时间的事件,并且我正在使用经过的过滤器计算时间间隔。所以,目前我得到的时间间隔不正确,因为阅读顺序不同。
有没有办法强制logstash按降序读取?
tomcat - 用于 tomcat 日志的 Grok 模式在 Grok 调试器上给出了编译错误
我正在尝试为 Java 应用程序设置 ELK。tomcat 日志是使用 log4j 生成的。要编写测试模式,我正在使用Grok Debugger。但是在调试器上它总是显示
编译错误
我的日志样本:
我的 grok 过滤器:
我的模式:
elasticsearch - 在 logstash 1.5 中跨事件保留标签/字段
我正在使用 logstash 1.5 来分析日志。
我想跟踪一个接一个发生的两个事件。所以我想在第一个事件发生时设置一个标志/字段/标签,并在事件之间保留该值。
我查看了此链接,但似乎 grep 和 drop 在 logstash 1.5 中不受支持。
有没有办法实现这一目标?
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 - 完成加载连接器模块
但我得到的结果是
信息 - 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 - 完成加载连接器模块
谁能建议我在多行模式上哪里出错了?
logstash - Logstash 配置:如果 ["list item 1"] 中的 [field] 有条件,则列表不起作用
我正在使用 Logstash 处理一些流数据。现在我在使用条件标记数据时遇到了一个问题。
如果我在 logstash 配置中写下以下内容
一切正常,但现在我想使用一个列表
并且只得到一个 not_working 标签。
有什么建议么?提前致谢!
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的值。有人可以对错过的内容有所了解。
logstash - 计数/增量在 logstash 中不起作用
我从每一行过滤一些“状态代码”作为输出属性。比如,代码 = 100,代码 = 100,代码 = 200,代码 = 200,代码 = 200,代码 = 300
在这里,我试图获取每种状态代码的计数,例如100 = 2、200 = 3、300 = 1
正在处理的配置看起来像,
我知道 statsd 配置错误,但无法修复。
ruby - logstash中红宝石过滤器中的四舍五入浮点数
我正在使用 'elapsed' logstash 过滤器来计算事件的持续时间。我需要以分钟而不是秒为单位的时间,这是 logstash 中的默认设置。所以,我使用 ruby 过滤器进行转换,但我无法在 ruby 过滤器内将浮点数四舍五入到小数点后两位。
我尝试使用显示格式“.2f”,但它不起作用,可能是因为引号。使用转义字符也不起作用。
我也在浮点数上尝试了 .round(2),但保留了原始值。
jdbc - 无法配置 JDBC 输入
以下是我的配置 -
当我运行配置文件时,我收到以下错误 -
谁能帮我解决它?我当前的 Java 版本是 -
任何有关 JDBC 输入配置的参考链接将不胜感激。