Logstashサーバーのログ閲覧と設定
Page content
内部ログ
Logstashのログは以下いずれかの配下に吐かれる。
- /var/log/logstash
- ${LS_HOME}/logs
logstash-plain.log
が通常のログ。
logstash-slowlog-plain.log
が時間のかかった処理のログとなっている。
ログ設定閲覧
外部からGET
で見ることが出来る。
curl -XGET 'localhost:9600/_node/logging?pretty'
以下例のようなレスポンスが返る。
{
...
"loggers" : {
"logstash.agent" : "INFO",
"logstash.api.service" : "INFO",
"logstash.basepipeline" : "INFO",
"logstash.codecs.plain" : "INFO",
"logstash.codecs.rubydebug" : "INFO",
"logstash.filters.grok" : "INFO",
"logstash.inputs.beats" : "INFO",
"logstash.instrument.periodicpoller.jvm" : "INFO",
"logstash.instrument.periodicpoller.os" : "INFO",
"logstash.instrument.periodicpoller.persistentqueue" : "INFO",
"logstash.outputs.stdout" : "INFO",
"logstash.pipeline" : "INFO",
"logstash.plugins.registry" : "INFO",
"logstash.runner" : "INFO",
"logstash.shutdownwatcher" : "INFO",
"org.logstash.Event" : "INFO",
"slowlog.logstash.codecs.plain" : "TRACE",
"slowlog.logstash.codecs.rubydebug" : "TRACE",
"slowlog.logstash.filters.grok" : "TRACE",
"slowlog.logstash.inputs.beats" : "TRACE",
"slowlog.logstash.outputs.stdout" : "TRACE"
}
}
ログ設定変更
外部からPUT
で変更出来る。
curl -XPUT 'localhost:9600/_node/logging?pretty' -H 'Content-Type: application/json' -d'
{
"logger.logstash.outputs.elasticsearch" : "DEBUG"
}
'
リセットする際は_node/logging/reset
を叩く。
curl -XPUT 'localhost:9600/_node/logging/reset?pretty'
(おまけ)/var/logへのログ出力
初期設定のままだと、val/log/messages
にもlogstashのログを出力する。
これを防ぎたければ。systemctl
の設定ファイル(/etc/systemd/system/logstash.service
)でStandardOutput
とStandardError
をnullに設定する。
...
[Service]
...
StandardOutput=null
StandardError=null
...