处理大型json';s正在使用logstash-不工作且未打印任何错误
我开始使用处理大型json';s正在使用logstash-不工作且未打印任何错误,logstash,logstash-configuration,Logstash,Logstash Configuration,我开始使用logstash(在windows上),当时我的主要使用原因是传递logstash一个大的json(10 mb),以某种方式过滤json,并将其写入elastic search 就目前而言,我并不真正关心json过滤(我会在这项工作开始后关心)。我不想让文件通过logstash进入我的elastic搜索 馈送logstash的客户端使用tcp连接 我的logstash简单配置文件如下所示: input { tcp { port=>7788
logstash
(在windows上),当时我的主要使用原因是传递logstash
一个大的json(10 mb),以某种方式过滤json
,并将其写入elastic search
就目前而言,我并不真正关心json
过滤(我会在这项工作开始后关心)。我不想让文件通过logstash
进入我的elastic搜索
馈送logstash
的客户端使用tcp
连接
我的logstash
简单配置文件如下所示:
input
{
tcp
{
port=>7788
codec=>"json"
}
}
output
{
elasticsearch
{
hosts=>"localhost:9200"
codec=>"json"
}
stdout
{
codec=>rubydebug
}
}
这个在小型json
输入上确实有效,比如:
{"foo":"bar", "bar": "foo"}
我看到logstash
正在工作,并将数据传递给elasticsearch
和
一切正常
此外,当使用默认的编解码器(“文本”)时,它工作正常,但并不像预期的那样
当输入较大时,我的问题开始出现json
假设我有一个10MB的json
-我需要如何处理它,这样logstash
就可以通过tcp
作为json
处理它了?文件是否应该缩进?在将其转换为字节之前,应该使用什么编码?我的日志存储应有哪些编解码器\设置
顺便说一句,当我使用curl并通过大型json
直接进行弹性搜索时,它是有效的,因此json
没有问题
有什么方法可以让我得到更好的跟踪,或者至少知道我失败的原因吗?我发现问题不在于长度,而是缺少换行符-所以我需要做的就是在日志文件中添加一个换行符
顺便说一句,没有4K长度限制-至少在使用TCP时不是这样。我发现问题不在于长度,而在于缺少换行符-所以我需要做的就是在日志文件中添加一个换行符
顺便说一句,没有4K长度限制-至少在使用TCP时没有。记录程序的世界单线如何超过10mb的数据。wonderingMy日志文件是规则引擎请求的跟踪输出(json)。我当前希望在客户端而不是规则引擎端处理跟踪。这是下一步:)。@CrazyNinja-我不确定这是否准确。我刚刚检查了一个10KJSON(键值),它就工作了。世界上单一的日志行是如何变成超过10mb的数据的。wonderingMy日志文件是规则引擎请求的跟踪输出(json)。我当前希望在客户端而不是规则引擎端处理跟踪。这是下一步:)。@CrazyNinja-我不确定这是否准确。我刚刚检查了一个10KJSON(键值),它就工作了。