No commit activity in last 3 years
No release in over 3 years
Logstash filter that computes a digest of Java stack traces.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

 Project Readme

Logstash Plugin

This is a filter plugin for Logstash that enables computing a stable digest (MD5) from a Java stack trace.

It is fully free and fully open source. The license is Apache 2.0, meaning you are pretty much free to use it however you want in whatever way.

Documentation

Goal and principles are described in the project GitHub pages.

You'll also find an online debugger to help you configure and debug your plugin options.

Install in Logstash

gem install logstash-filter-java_stack_digest
  • Install the plugin from the Logstash home
bin/logstash-plugin install logstash-filter-java_stack_digest.gem
  • Configure the plugin in Logstash configuration
  • Start Logstash and proceed to test the plugin

Configuration

This plugin supports the following configuration options:

  • source (type string): the name of the field containing the Java stack trace option (default value: "stack_trace")
  • target (type string): the name of the field to assign the computed stack trace digest (default value: "stack_digest")
  • exclude_no_source (type boolean): whether stack trace elements without source info (no filename or line number) should be excluded from the digest (default value: true)
  • includes (type array of string): RegExp patterns determining whether stack trace elements should be included from digest (defaults to none - exclusion patterns only)
  • excludes (type array of string): RegExp patterns determining whether stack trace elements should be excluded from digest (defaults to standard dynamic Java reflection and generated classes patterns)

Filter configuration example:

  filter {
    java_stack_digest {
      source => 'java_stack'
      target => 'error_digest'
      exclude_no_source => true
      includes => ['^com\\.xyz\\.', '^java\\.']
      excludes => ['\\$\\$FastClassByCGLIB\\$\\$', '\\$\\$EnhancerBySpringCGLIB\\$\\$']
    }
  }

Contributing

All contributions are welcome: ideas, patches, documentation, bug reports, complaints, and even something you drew up on a napkin.

Programming is not a required skill. Whatever you've seen about open source and maintainers or community members saying "send patches or die" - you will not see that here.

It is more important to the community that you are able to contribute.

For more information about contributing, see the CONTRIBUTING file.