https://www.digitalocean.com/community/tutorials/how-to-install-elasticsearch-logstash-and-kibana-elk-stack-on-centos-7経由でELKサーバーをインストールしました
filebeat 接続以外は機能しているようです。filebeat は何も転送していないように見えます。少なくとも、何かが起こっていることを示すログが見つかりません。
私のファイルビート構成は次のとおりです。
filebeat:
prospectors:
-
paths:
- /var/log/*.log
- /var/log/messages
- /var/log/secure
encoding: utf-8
input_type: log
timeout: 30s
idle_timeout: 30s
registry_file: /var/lib/filebeat/registry
output:
logstash:
hosts: ["my_elk_fqdn:5044"]
bulk_max_size: 1024
compression_level: 3
worker: 1
tls:
certificate_authorities: ["/etc/pki/tls/certs/logstash-forwarder.crt"]
shipper:
logging:
to_files: true
files:
path: /var/log/filebeat
name: filebeat.log
rotateeverybytes: 10485760 # = 10MB
keepfiles: 7
level: debug
filebeat から取得し続けるログ ファイル出力は、あまり役に立ちません。
2016-07-14T17:32:21-04:00 DBG Start next scan
2016-07-14T17:32:31-04:00 DBG Start next scan
2016-07-14T17:32:41-04:00 DBG Start next scan
2016-07-14T17:32:46-04:00 DBG Flushing spooler because of timeout. Events flushed: 0
2016-07-14T17:32:51-04:00 DBG Start next scan
構成ファイルに何か問題がありますか?
ELK サーバーでテストして、何かが得られるかどうかを確認すると、次のようになります。
[root@my_elk_server ~]# curl -XGET 'http://localhost:9200/filebeat-*/_search?pretty'
{
"took" : 1,
"timed_out" : false,
"_shards" : {
"total" : 0,
"successful" : 0,
"failed" : 0
},
"hits" : {
"total" : 0,
"max_score" : 0.0,
"hits" : [ ]
}
}
ああ、filebeats のログスタッシュ構成:
input {
beats {
port => 5044
ssl => true
ssl_certificate => "/etc/pki/tls/certs/logstash-forwarder.crt"
ssl_key => "/etc/pki/tls/private/logstash-forwarder.key"
}
}
更新: ファイルビートではありません。メッセージが実際に渡されていることにいくらか安心しましたが、追跡できない問題がまだあります。
問題を引き起こしているのは filebeat ではないことを発見しました。質問に示されているように、elasticsearch に送信する logstash の構成ファイルがインデックス (およびタイプ) を適切にラベル付けして検索可能にしていないようです。インデックス名に filebeat を入れる代わりに、次のような結果が得られます。
"_index" : "%{[@metadata][beat]}-2016.07.14",
ファイルに入れられたelasticsearchの出力は、
output {
elasticsearch {
hosts => "my_elk_fqdn:9200"
sniffing => true
manage_template => false
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
}
どうやら、この @metadata が正しく渡されていません。_index フィールドと _type フィールドを正しく設定できた人はいますか?
これは filebeat のバグでしょうか?? https://github.com/logstash-plugins/logstash-input-beats/issues/6