manage_template:用来设置是否开启logstash自动管理模板功能,如果设置为false将关闭自动管理模板功能。如果我们自定义了模板,那么应该设置为false。 template_name:这个配置项用来设置在Elasticsearch中模板的名称。 __EOF__
template=>”” 有效的filepath 设置自己的template文件路径,不设置就用已有的 template_name=>”logstash” 在es内部模板的名字。 配置格式 output { elasticsearch { hosts => "xxx:9200" manage_template => true index => "%{[fields][logIndex]}-%{+YYYY.MM.dd}" document_type => "%{[fields][d...
1hello,this is first line in test.log!2hello,my name is xingoo!3goodbye.this is last line in test.log!4 1. 2. 3. 4. 注意最后有一个空行。 执行命令得到如下信息: 细心的会发现,这个日志输出与上面的logstash -e "" 并不相同,这是因为上面的命令默认指定了返回的格式是json形式。
之后,在logstash的output里的elasticsearch配置部分对template模板进行指定: index =>"nginx_req_log_wireless-%{+YYYY.MM.dd}"manage_template =>truetemplate_name =>"nginx_req_log_wireless"template_overwrite =>truetemplate =>"/usr/local/logstash-5.4.3/template/nginx_req_log_wireless.json" 1 2 3 ...
然后运行curl -XPUT http://localhost:9200/_template/template_newid -d '@/path/to/your/tmpl.json'即可。 logstash 默认的模板, order 是 0,id 是 logstash,通过 logstash/outputs/elasticsearch 的配置选项template_name修改。你的新模板就不要跟这个名字冲突了。
template_name=>"es-template.json" template_overwrite=>true } action=>”index” #es要执行的动作 index, delete, create, update l index:将logstash.时间索引到一个文档 l delete:根据id删除一个document(这个动作需要一个id) l create:建立一个索引document,如果id存在 动作失败. ...
"template_name" => "nginx_access" } } 上述配置需要先在/path/to路径下存放一个json格式的模板配置文件,template_name如果不指定的话,会使用默认值logstash. 注意此种情况不能在output设置manage_template参数为false, 否则logstash将不会调用Elasticsearch API创建模板。
manage_template=>true 一个默认的es mapping 模板将启用(除非设置为false 用自己的template) template=>”” 有效的filepath 设置自己的template文件路径,不设置就用已有的 template_name=>”logstash” 在es内部模板的名字 这里需要十分注意的一个问题是,document_id尽量保证值得唯一,这样会解决你面即将面临的ES数据...
} } }, "aliases": {} } 3.修改同步的配置文件/usr/local/logstash-6.4.3/sync/logstash-db-sync.conf 定义模板名称 template_name => "myik"模板所在位置 ...
template_name对应的是模板名称,template这是比较关键的,因为决定了索引是否能够匹配到模板配置,这里应该与index相匹配。比如固定的 index 名称,这里就可以是固定名称。对于按日期分隔的,可以使用通配符,例如logstash-*。 我就是因为没搞明白这几个属性的对应关系,导致自己的配置没有生效查了很长时间。