问题标签 [logstash-file]
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.
random - 在logstash中生成随机数/文本
是否有任何内置方法可以在 logstash 输入/文件管理器插件中生成随机文本(一定长度)或数字(一定范围)?或者我们应该用 ruby 写一个。
logstash - 在logstash中读取文件的顺序不同
我有多个按降序编写的日志文件。即 xyz.log.5 的内容写在日志 xyz.log.4 的内容之前。日志文件的数量未知。
所以,我使用通配符来读取文件
但这是按升序读取文件。按降序阅读很重要,因为我的日志包含跨越多个文件的基于时间的事件,并且我正在使用经过的过滤器计算时间间隔。所以,目前我得到的时间间隔不正确,因为阅读顺序不同。
有没有办法强制logstash按降序读取?
file - 文件更改后Logstash文件输入未输出事件
我正在尝试从文件中读取并将每个事件输出到控制台(或文件)。我希望能够添加到文件中,并让 Logstash 拾取它并重复管道。但是,Logstash 似乎只读取和执行管道一次,即使它看到文件已更改。
我正在 OS X Yosemite 上开发。
这是我的 LogStash 配置
这是日志(同样,用 sudo 尝试过,没有运气):
在我更改文件(在本例中为 testFile)后,它会显示出来,但没有其他内容:
此外,它似乎没有崩溃或任何东西。它看到文件已更改,但没有运行其输出功能。
logstash - Logstash -- log4net.log 中可能包含多行的分隔事件
这是从 log4net 生成的典型日志文件
因此,该日志文件由logstash 文件输入插件读取。
默认情况下,delimiter
in 配置是\n
,这意味着每一行都是一个事件。
但是在上面的日志文件中,您可以看到一个事件可能有多行。(如 ERROR 或 FAULT 或其他)
如何配置 Logstash 以正确分隔事件?
我想我可以配置多个分隔符,例如\nINFO
\nDEBUG
\nERROR
\nFAULT
. 但是文件说只能有一个分隔符。
amazon-web-services - 配置 logstash 以从 Amazon S3 存储桶读取日志
我一直在尝试配置 logstash 以读取在我的 amazon S3 存储桶中生成的日志,但没有成功。以下是详细信息:
- 我已经在 ec2 实例上安装了 logstash
- 我的日志都是s3桶里的gz文件
- conf 文件如下所示:
logstash - 将数据添加到 logstash 中的动态嵌套哈希
我想将一个值放入嵌套哈希的一部分,但根据上游过滤器命名该部分。这是为了重构和减少整体代码大小,因为目前 20 多种传入事件类型中的每一种都有自己的部分,例如 logstash 文件中的 18 行(但目前 %{detail_part} 位是硬编码的)。
以上被硬编码为“OtherThing”。下面有一个变量,但不起作用。
在上面(非工作代码)中,detail_part 在上游过滤器中设置为字符串值,如“OtherThing”。这当前编译并运行,但没有从中输出 XML,所以我认为这些语句的结果没有任何东西被设置到哈希中。
我知道可以使用嵌入式 Ruby 代码来完成,但我想要一种尽可能简单的方法。这个过程的输出是 XML,所以我只能使用这种嵌套散列。
这对 Logstash 可行吗?
java - logstash 意外停止
我已经建立了一个带有 redis 架构的 logstash 来处理我的日志。我组织它的方式是:
logstash ---> redis ---> logstash ---> elasticsearch
但是出现的问题是解析了近125万条日志后抛出了java异常。
在我的logstash.err
日志文件中,异常显示为
我认为这个异常可能是因为logstash无法打开/关闭文件而引发的。那么我能做些什么来纠正这个错误呢?为我的第一个 logstash 服务器设置输入配置以发送日志的方式是:
而输出的发送方式是这样的:
安装redis的logstash服务器的日志中没有错误。
logstash - Logstash:如何读取按日期/时间创建的日志
我们的服务器根据日期将日志文件存储在目录下,文件名是时间。例如:
其中文件名遵循 [hours].[minutes] 约定。
如何配置 Logstash 从最新文件中读取(一般做法是什么)?
- 第一次尝试:
我将路径设置为:
Logstash 打开了很多文件,直到 logsource (linux) 不允许它打开新文件。
- 第二次尝试:
使用 rsync 复制所有文件,并将它们合并为单个文件。
但是,我在处理部分日志文件时遇到了问题,例如,如果当前日志文件是 11.12,并且仍在写入,我将只有部分数据。
- 第三次尝试:
定期创建指向最新文件的符号链接。我还没有尝试过,但我认为它应该可以工作,我需要弄清楚如何在 linux 中创建简单的调度程序。
- 更新
我已经尝试了第三次尝试,但我发现这种方法有一些缺点。
- 如果 Logstash 处理文件的时间超过 1 分钟,它将无法处理整个文件,因为符号链接指向下一个文件。
- 最后 1 或 2 个事件可能无法得到处理。
logstash - How to make Logstash multiline filter merge lines based on some dynamic field value?
I am new to logstash and desparate to setup ELK for one of the usecase. I have found this question relevent to mine Why won't Logstash multiline merge lines based on grok'd field? If multiline filter do not merge lines on grok fields then how do I merge line 2 and 10 from the below log sample? Please help.
Using grok patterns I have created a field 'id' which holds the value 715.
java - Logstash 的 Java 过滤器
你知道 Logstash 有一个 Ruby 过滤器,它使我能够用 Ruby 编写代码,它通常包含在配置文件中,如下所示
现在我有两个 Jar 文件,我想将它们包含在我的过滤器中,以便可以根据我在这些 Jar 文件中的操作来处理我的输入。但是,我不能(显然)在 ruby 代码中包含 Jar 文件。我一直在寻找解决方案。