ログエントリを直接elasticsearch
(logstashではなく)に配置するにはどうしたらいいですか?これまで私はログをリモートホストに送ることを可能にするいくつかのアペンダ(log4j.appender.SocketAppender
、log4j.appender.server
など)を見つけました。また、ConversionPattern
の可能性もログを「弾力的な」形式に変換する可能性があります。または私は間違っていますか?ログをelastic
に送信する方法の1つですか?Log4jをelasticsearchサーバーに直接ログ
これまでのところ、私は、そのような設定があります。
log4j.rootLogger=DEBUG, server
log4j.appender.server=org.apache.log4j.net.SocketAppender
log4j.appender.server.Port=9200
log4j.appender.server.RemoteHost=localhost
log4j.appender.server.ReconnectionDelay=10000
log4j.appender.server.layout.ConversionPattern={"debug_level":"%p","debug_timestamp":"%d{ISO8601}","debug_thread":"%t","debug_file":"%F", "debug_line":"%L","debug_message":"%m"}%n
をしかし、私はエラーを取得する:
log4j:WARN Detected problem with connection: java.net.SocketException: Broken pipe (Write failed)
私は何をしますか理解できないので、私は任意の有用な例を見つけることができません間違って、それを修正する方法。ありがとう。
ことはできません。それにはLogstashが必要です。推奨されていないlog4jプラグイン(https://www.elastic.co/guide/en/logstash/current/plugins-inputs-log4j.html)を使用したい場合は問題ありませんが、log4jログをファイルに書き出し、Filebeatそれを拾ってElasticsearchに送ってください。 –
この質問を参照してください:https://stackoverflow.com/questions/32302421/logging-from-java-app-to-elk-without-need-for-parsing-logs – diginoise
@diginoise 'もしあなたがこのファイルにlogstashを向けるならば、 ..これは私がファイルにログを書き込むことを意味し、それは私が必要とするものではありません – Daria