The Instrumentation solution comes in two flavors:
On premises: the customer installs and configures Prometheus and Grafana from Magnolia. Prometheus collects monitoring data from Magnolia.
Connected services: the customer configures Magnolia to use Prometheus and Grafana running the Connected Service cloud. Magnolia sends monitoring data to the Connected Service Prometheus instance.
This page describes the Connected Services option, how to install the instrumentation export module, and how to configure it to send monitoring data to Connected Services.
The instrumentation exporter is bundled in a separate module from the base instrumentation module and the base instrumentation configuration module.
You should include the following dependency in your web app pom.xml:
<dependency> <groupId>info.magnolia.services</groupId> <artifactId>instrumentation-exporter</artifactId> <version>1.0</version> </dependency>
The module includes:
A push command to collect monitoring metrics and sends them to one (or several) Connected Service server destinations
Glue code to launch periodic executions of the push command
Prometheus works via "pull" to collect monitoring metrics. It expects to call the Magnolia instance to collect monitor metrics that it then saves. However, on the Connected Services platform, Prometheus won’t have (and shouldn’t have) direct access to the Magnolia instance being monitored.
The instrumentation exporter module uses the Scheduler module to execute the push command at configured intervals. However, it is does not use the Scheduler module’s "cron" capabilities; it uses simple interval triggers execute the push command.