Logstash--基于logstash转发器中设置的字段的动态索引

标签 logstash

我想从我在客户端计算机上的 logstash-forwarder 中设置的“应用程序”字段的值创建索引。
例如:
在 CRM 客户端上的 logstash-forwarder.conf 中,我写

{
"paths": [
"/var/log/crm/crmERROR.log"
],
"fields": {**"**Application**":"CRM"**,"Sub-System":"Mysystem", "type":"Error-logs "
}

in LSF config on sales client 2 I say 
{
"paths": [
"/var/log/sales/SalesERROR.log"
],
"fields": {**"Application":"Sales"**,"Sub-System":"Myststem", "type":"Error-logs "
}

所有这些日志都将通过 LS-shipper 发送到 redis。 LS-indexer 将从 redis 中提取它。
现在在 LS-Indexer 中,我想根据字段“应用程序”(CRM、销售)的值创建索引。如何获取 Application 字段的这些值,以便我可以在输出中使用它来创建 indexname。

br,
苏尼尔。

最佳答案

elasticsearch{} 输出允许您 specify the index name ,例如:

output {
    elasticsearch {
        index => "logstash-%{+YYYY.MM.dd}"
    }
}

您可以在索引名称中使用变量:
index => "%{my_field}-%{+YYYY.MM.dd}"

关于Logstash--基于logstash转发器中设置的字段的动态索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31260881/

相关文章:

elasticsearch - 多字可视化

elasticsearch - 我可以通过 elasticsearch-template.json 设置 logstash 默认的 elasticsearch 映射吗

elasticsearch - Kibana Elasticsearch 6.4基本安全性

elasticsearch - ELK堆栈中的Logstash和Filebeat

sql-server - 将 Logstash 连接到 SQL Server

docker - dockerized logstash正在生成巨大的日志文件

elasticsearch - Logstash 没有在 ES 上以正确的格式存储数据

elasticsearch - 只允许索引模板中的字段

regex - 使用正则表达式进行 GROK 解析

elasticsearch - logstash + Elasticsearch : reloads the same data