Java Util Logging formatter to encode logging events as json events which can consumed by logstash.
Switch branches/tags
Nothing to show
Clone or download
kofrezo Merge pull request #13 from johnedo1234/master
Version 1.1 - fixes issues 10 and 11
Latest commit 43e3985 May 27, 2015
Failed to load latest commit information.
src Fixes issue 11 - expand %-style format strings May 21, 2015
.gitignore initial commit Apr 16, 2013
ASL2.0 initial commit Apr 16, 2013
LICENSE initial commit Apr 16, 2013 Add additonal tags. Jul 2, 2013
pom.xml Bumped version to 1.1 May 21, 2015

Java Util Logging JSON encoder for Logstash

Include as a dependency

First, add it to your project as a dependency.

Maven style:


Use it in your like this:


Use it in your logstash configuration like this:

input {
  file {
    type => "your-log-type"
    path => "/some/path/to/your/file.log"
    format => "json_event"

Example usage in Jenkins on Debian

  • Create a directory in JENKINS_HOME: mkdir /var/lib/jenkins/lib
  • Copy the shaded jar to this directory.
  • Create a in /var/lib/jenkins/lib:
handlers= java.util.logging.ConsoleHandler,java.util.logging.FileHandler
.level= INFO

java.util.logging.FileHandler.level = INFO
java.util.logging.FileHandler.formatter = net.logstash.logging.formatter.LogstashUtilFormatter
java.util.logging.FileHandler.pattern = /var/log/jenkins/logstash.log
java.util.logging.FileHandler.limit = 5000000
java.util.logging.FileHandler.count = 1

java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
  • Extend JAVA_ARGS in /etc/default/jenkins:
JAVA_ARGS="$JAVA_ARGS -Djava.endorsed.dirs=$JENKINS_HOME/lib -Djava.util.logging.config.file=$JENKINS_HOME/lib/"
JAVA_ARGS="$JAVA_ARGS -Dnet.logstash.logging.formatter.LogstashUtilFormatter.tags=master,mailer"
  • Use it in your logstash configuration like this:
input {
  file {
    type => "jenkins-server"
    path => "/var/log/jenkins/logstash.log"
    format => "json_event"
  • By setting the system propery net.logstash.logging.formatter.LogstashUtilFormatter.tags you may easily add tags, which let you differentiate between multiple instances running on the same host.