小编Ben*_*Lim的帖子

Logstash索引JSON数组

Logstash太棒了.我可以像这样发送JSON(多行可读性):

{
  "a": "one"
  "b": {
    "alpha":"awesome"
  }
}
Run Code Online (Sandbox Code Playgroud)

然后使用搜索词在kibana中查询该行b.alpha:awesome.尼斯.

但是我现在有一个像这样的JSON日志行:

{
  "different":[
    {
      "this": "one",
      "that": "uno"
    },
    {
      "this": "two"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我希望能够找到像different.this:two (或different.this:one,或different.that:uno)这样的搜索行

如果我直接使用Lucene,我会遍历different数组,并为其中的每个哈希生成一个新的搜索索引,但Logstash目前似乎像这样摄取该行:

不同:{this:one,that:uno},{this:two}

这不会帮助我使用different.this或搜索日志行different.that.

我是否有任何关于编解码器,过滤器或代码更改的想法,我可以做到这一点?

json logstash

13
推荐指数
1
解决办法
1万
查看次数

Logstash过滤器入门

寻找一些帮助入门......我安装了Logstash(以及ElasticSearch),但我正在努力使用我的第一个过滤器.

作为测试,我将其配置为从包含6行的修剪日志文件中读取,每行以时间戳开头,例如[11/5/13 4:09:21:327 PST],然后是一堆其他数据.

现在我将我的conf文件设置为读取此文件,我正在尝试使用非常基本的grok过滤器来匹配行,可能是为了获取时间戳,然后是其余的数据(从那里我可以开始拆分它) ).

这是我有的:

input {
  file {
    type => "chris"
    path => "/home/chris/Documents/test.log" 
  }
}
filter {
  grok {
    type => "chris"
    pattern => "%{GREEDYDATA:logline}"
  }
}
output {
  stdout {debug => true debug_format => "json"}
}
Run Code Online (Sandbox Code Playgroud)

我有点期待(希望)当我运行Logstash它匹配每一行并输出它,然后我可以开始打破线并过滤我调整模式但是因为我无法得到这个第一个基本位工作我有点难过.

有没有人有类似的conf文件,他们可以分享?我能找到的大多数例子都比较先进,而且我似乎被困在试图走出大门.

谢谢,

克里斯.

logstash

12
推荐指数
1
解决办法
3万
查看次数

如何创建紧凑的配置文件

我在google搜索在Java 1.8中创建Compact配置文件的方法.是否有可能创建一个紧凑的配置文件,因为这里说它只适用于嵌入式版本

java java-8

10
推荐指数
1
解决办法
2746
查看次数

如何使用logstash读取tomcat日志

我正在尝试配置logstash.在wiki中,我发现我们可以读取apache或其他系统日志.读取tomcat日志的配置和步骤是什么.

tomcat logstash

5
推荐指数
1
解决办法
7127
查看次数

logstash文件输入配置

我的简单配置看起来像这样.我在我的主目录中创建了一个虚拟文件夹,并在其中创建了一些日志文件.我的配置文件看起来像这样.

input{
    file{
        type => "dummylog"
        path => [/home/rohit/dummy/*.log" ]
    }
}
output{
    elasticsearch{
        embedded => true
    }
}
Run Code Online (Sandbox Code Playgroud)

现在运行logstash后,我无法看到logstash的web ui中的任何文件.这些文件尚未进入elasticsearch.我正在使用嵌入式弹性搜索,因此无需运行单独的进程.任何人都可以帮助我犯错误吗?

elasticsearch logstash

5
推荐指数
2
解决办法
3万
查看次数

Elasticsearch - indices.fielddata.cache.size和indices.fielddata.breaker.limit之间的区别

Elasticsearch中不稳定的最大原因之一是fielddata:必须将字段值加载到内存中以使聚合,排序和脚本执行速度与它们一样快.

如上面关于Elasticsearch页面的描述,大型fielddata总是导致Elasticsearch内存不足(OOM).因此,我们可以设置indices.fielddata.cache.sizeindices.fielddata.breaker.limit来防止OOM.这两个设置有什么不同?他们有任何关系吗?

例如,My Elasticsearch JVM的总内存为2g.如果我将indices.fielddata.cache.size设置为1g但indices.fielddata.breaker.limit设置为60%(这意味着1.2g).允许加载到内存的fielddata超过fielddata缓存大小.它会导致任何错误吗?(参考Fielddata)

谢谢.

elasticsearch

5
推荐指数
1
解决办法
6093
查看次数

Lucene查询语法-如何添加时间?

我是 Luncene 查询语法的新手。我使用 elasticsearch/logstash 和 kibana 来存储日志文件。但我想按日期和时间过滤

这有效

@timestamp:[2014-10-01 至 2014-10-01 ]

但是如果我添加时间戳

@timestamp:[2014-10-01 16:34:09 至 2014-10-01 16:34:10]

这不起作用

任何帮助表示赞赏

谢谢

lucene elasticsearch kibana

4
推荐指数
1
解决办法
4017
查看次数

标签 统计

logstash ×4

elasticsearch ×3

java ×1

java-8 ×1

json ×1

kibana ×1

lucene ×1

tomcat ×1