sematext/app-agent
Application Monitoring Agent capable of collecting metrics from a number of sources
1M+
Sematext App Agent can be used to collect application metrics from multiple data sources. The data sources and the metrics to be collected can be defined in Metrics Configuration YAML files. There are number of built-in integrations available for various applications in sematext-agent-integrations repo.
The currently supported data sources are:
Sematext App Agent uses Influx Line Protocol to ship the metrics. The metrics collected by the agent can be shipped to any Influx Line Protocol compatible endpoints like InfluxDB or Sematext Cloud. In the future, we will add support for other output formats like HTTP, Graphite, etc.
You'll need a valid Monitoring App token to ship metrics to Sematext Cloud. Use the image as follows to spin up a new container for monitoring Solr, for example:
sudo docker run -i -t --name solr-app-agent -e MONITORING_TOKEN=<YOUR_MONITORING-TOKEN> -e AGENT_TYPE=standalone -e APP_TYPE=solr -e JMX_PARAMS=-Dspm.remote.jmx.url=172.17.0.4:3000 sematext/app-agent:latest
Note that it's necessary to enable JMX connection in Solr JVM options as well as ensure container is reachable at the specified IP address.
If the app you want to monitor exposes protected JMX connector (either via password file or truststore) it is necessary to set a couple of environment variables for the Sematext App Agent container:
JMX_HOST
and JMX_PORT
to indicate the JMX connection stringJMX_PASS_FILE
that should contain the location of the password file. It's required to previously mount this file from the host into container file system.JMX_TRUSTSTORE
and JMX_TRUSTSTORE_PASS
to specify JMX truststore file path and truststore password respectively. As for the password file, you first need to mount the truststore file into container.Example:
sudo docker run -i -t --name solr-app-agent -v <YOUR_PASSWORD_FILE>:/etc/jmxremote.password -e MONITORING_TOKEN=<YOUR_MONITORING-TOKEN> -e AGENT_TYPE=standalone -e APP_TYPE=solr -e JMX_HOST=localhost -e JMX_PORT=3000 -e JMX_PASS_FILE=/etc/jmxremote.password sematext/app-agent:latest
docker pull sematext/app-agent