System Monitoring
JMX Monitoring
Self-Managed Commerce exposes application metrics via JMX (Java Monitoring Extensions). The following JMX metrics are available:
-
Camel statistics for asynchronous messaging
org.apache.camel -
Core caching configuration and statistics - for both application and OpenJPA data caches
net.sf.ehcacheCacheConfiguration<context>-CacheManagerCacheStatistics<context>-CacheManager -
Cortex combined transaction statistics - counts, response times, rates
EP-RelOSEP-RelOS.<host>.COMBINED.ALL.<scope>EP-RelOS.<host>.COMBINED.CREATE.<scope>EP-RelOS.<host>.COMBINED.DELETE.<scope>EP-RelOS.<host>.COMBINED.READ.<scope>EP-RelOS.<host>.COMBINED.UPDATE.<scope> -
Cortex per-resource transaction statistics - counts, response times, rates
EP-RelOSEP-RelOS.<host>.resource.<resourceName>.ALL.<scope>EP-RelOS.<host>.resource.<resourceName>.CREATE.<scope>EP-RelOS.<host>.resource.<resourceName>.DELETE.<scope>EP-RelOS.<host>.resource.<resourceName>.READ.<scope>EP-RelOS.<host>.resource.<resourceName>.UPDATE.<scope> -
Cortex request scope caching
EP-RelOSEP-RelOS.<host>.RequestCache.* -
Cortex executor statistics
EP-RelOSEP-RelOS.<host>.executorService.* -
Quartz jobs in Batch Server and Search Server
quartzQuartzSchedulerBatchJMXSchedulerSearchServerJmxScheduler -
Search Server indexing
com.elasticpath.search -
Solr indexes
solr/<indexName>
Enabling JMX Remote Connections
To enable JMX remote connections to your production server:
-
Open your server’s startup script with a text editor.
-
Modify JAVA_OPTS to include the following:
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=6969 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=falseThis will allow a JMX client to connect to port
6969. -
Restart the server.
Server Health Monitoring
The following URIs can be used for server health monitoring. They are not intended for use by client endpoints.
/cortex/healthcheck
Checks that all resource bundles have started. Different 5XX status codes are returned to indicate the nature of the problem. The standard health check URI of /cortex/status can also be used for an extended health check.
-
Server(s): Cortex
-
Success Response:
200 OK -
Failure Response:
5xx
/context/status
Reponses with human and machine readable information can be obtained using these URIs:
-
/<context>/status/info.html -
/<context>/status/info.json -
Server(s):
- Cortex
- Batch Server
- Search Server
- Integration Server
-
Success Response:
200 OK -
Failure Response:
503
/cm/?servicehandler=status
-
Server(s): Commerce Manager
-
Success Response:
200 OK -
Failure Response:
503