tree: 760a646825c4074d9714188da9b0e420e1b3ccab [path history] [tgz]
  1. conf/
  2. src/
  3. docker-compose.yml
  4. pom.xml
  5. README.md
third-party/elasticsearch/README.md

ElasticSearch metric extension for Apache James

Exports Apache James metrics directly to ElasticSearch that can later be queried using Grafana.

WARNING: A separate ElasticSearch server is required, as an ElasticSearch 6.3 is needed, which is not compatible with ElasticSearch 7.10 release line, and not compatible with OpenSearch currently used by Apache James.

To run this metric exporter register it in extensions.properties:

guice.extension.module=org.apache.james.metrics.es.v7.ESMetricReporterModule
guice.extension.startable=org.apache.james.metrics.es.v7.ESMetricReporter

For configuring the metric reporting on ElasticSearch edit elasticsearch.properties content:

Property nameexplanation
elasticsearch.http.hostOptional. Host to report metrics on. Defaults to master host. Must be specified if metric export to ElasticSearch is enabled.
elasticsearch.http.portOptional. Http port to use for publishing metrics. Must be specified if metric export to ElasticSearch is enabled.
elasticsearch.metrics.reports.enabledOptional. Boolean value. Enables metrics reporting. Defaults to false.
elasticsearch.metrics.reports.periodOptional. Seconds between metric reports. Defaults to 60 seconds.
elasticsearch.metrics.reports.indexOptional. Index to publish metrics on. Defaults to james-metrics.

We provide a docker-compose of this set up.

In order to run it...

    1. Compile this project: mvn clean install -DskipTests --pl org.apache.james:apache-james-elasticsearch --am
    1. Then start James:
docker-compose up