Sto tentando di configurare logstash. Nel wiki ho scoperto che possiamo leggere apache o altri registri di sistema. Qual è la configurazione e i passaggi per leggere i registri di tomcat.Come leggere i registri di tomcat con logstash
risposta
Come documentato here, è possibile utilizzare QUALSIASI file di registro, non importa da quale origine proviene. Dovrai usare l'input come file e configurare di conseguenza altre cose!
Questo dipenderà probabilmente dalla scelta del framework di registrazione Java e da come viene formattato l'output dal framework di registrazione.
La documentazione logstash Segue un esempio parser di ingresso log4j: http://logstash.net/docs/1.1.9/inputs/log4j
input {
log4j {
add_field => ... # hash (optional), default: {}
charset => ... # string, one of ["ASCII-8BIT", "UTF-8", "US-ASCII", ...] (optional), default: "UTF-8"
data_timeout => ... # number (optional), default: 5
debug => ... # boolean (optional), default: false
format => ... # string, one of ["plain", "json", "json_event"] (optional)
host => ... # string (optional), default: "0.0.0.0"
message_format => ... # string (optional)
mode => ... # string, one of ["server", "client"] (optional), default: "server"
port => ... # number (required)
tags => ... # array (optional)
type => ... # string (required)
}
}
Tomcat utilizza Java Util-registrazione.
È possibile utilizzare un appender GELF diretto per inviare registri da Tomcat a logstash.
avete bisogno di qualche cambiamento nella vostra startup-script e la configurazione logger (e due vasetti):
/conf/logging.properties:
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, biz.paluch.logging.gelf.jul.GelfLogHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, biz.paluch.logging.gelf.jul.GelfLogHandler
biz.paluch.logging.gelf.jul.GelfLogHandler.host=udp:localhost
biz.paluch.logging.gelf.jul.GelfLogHandler.port=12201
biz.paluch.logging.gelf.jul.GelfLogHandler.level=INFO
/bin/catalina.sh:
if [ -r "$CATALINA_BASE/bin/logstash-gelf-1.4.2.jar" ] ; then
CLASSPATH=$CLASSPATH:$CATALINA_BASE/bin/logstash-gelf-1.4.2.jar:$CATALINA_BASE/bin/json-simple-1.1.jar:$CATALINA_BASE/bin/jedis-2.5.1.jar:$CATALINA_BASE/bin/commons-pool2-2.0.jar
fi
logstash-GELF: logstash-gelf-1.5.2-logging-module.zip
Vedi anche Changes for logstash-gelf with Tomcat