处理大型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(键值),它就工作了。