Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Create benchmark harness for file-based rules/pipelines (#107)
* initial wip version of a parameterized jmh runner for rules and pipelines * implement in-memory rule service to be able to use guice in the benchmarks, so we can reuse the production bindings, we need in-memory variants of the services we have in order to avoid benchmarking database access the mongodb backed services have been renamed and are bound by default * [wip] adding in-memory rule service use in-memory grok service from #2914 add some license headers some in-memory services are still missing and the pom packaging needs work * add in-memory pipeline and stream connections service dummy stream service implementation because upstream will change this anyway in the near future use in-memory module instead of anonymous module * make in-memory services singletons so we can load data into them actually read benchmarks from disk and populate the stores etc see `match_all_rule` `benchmark.toml` for an example of how to set up a benchmark * split pipeline plugin into parent, benchmarks and actual plugin lots of refactoring needed because the benchmarks need to be build as a separate module due to jmh requirements explicit mention of jmh annotation processing necessary because something overrides the setting, making classpath autodetection barf this requires an updated manifest to work with graylog-project, will push separately slight tweaks to the benchmark class * support no-fork mode (-Dprofile) and running a single benchark (-Dbenchmark.name) for debugging/profiling add yourkit profiling commands as comments (useful to enable when digging into why a benchmark is slow) (manually include the yourkit -redist jar to classpath to use) add another multi-stage benchmark as baseline for stage performance * make build work again another web-parent artifact: we need to disable the globally enabled frontend plugin * add benchmark * move misplaced files due to rebasing madness * move eslint file * remove old files left by improper rebase
- Loading branch information
Showing
271 changed files
with
1,709 additions
and
523 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.