Similar to SNMP, JMX technology represents a Java-centric approach to application management and monitoring. JMX exposes instrumented code in the form of MBeans. Application management systems that support JMX technology (for example, JConsole) may request runtime information from the PingFederate JMX server.
Authentication is required for JMX-client access to PingFederate runtime data (see Configuring service authentication).
PingFederate JMX server reports monitoring data for SSO and SLO transactions. In addition, as with SNMP monitoring, numerous Jetty-standard MBeans are available to the PingFederate server's JMX clients.
SSO and SLO monitoring
For SSO/SLO transaction processing, PingFederate provides these MBeans:
-
pingfederate:type=TOTAL_FAILED_TRANSACTIONS
-
pingfederate:type=TOTAL_TRANSACTIONS
Each type contains a single attribute, Count
, which reports the same
information as an SNMP Get
.
Sample Jetty metrics
The following table describes examples of Jetty MBean metrics, available via JMX, that administrators may find useful to supplement information provided via the PingFederate-specific MBeans.
MBean | Attributes |
---|---|
org.eclipse.jetty.server: connectorstatistics
(For Jetty connectors including the primary and secondary PingFederate runtime server ports) |
connections – The total number of TCP connections accepted
by the server.
connectionsOpen – The current number of open connections.
Maximum is also available (connectionsOpenMax ). |
org.eclipse.jetty.server.handler: statisticshandler
|
requests – Total number of requests received.
requestTime – Request duration. Maximum, mean, standard
deviation, and total accumulated time are available.
|
org.eclipse.jetty.util.thread: queuedthreadpool
(Two pools: one for the runtime server, with 200 maximum threads; one for the administrative console, with 20 maximum threads) |
idleThreads – Number of idle threads currently available.
minThreads – Minimum number of threads in the pool.
lowOnThreads – A boolean flag indicating whether the pool
is running low on threads. |
java.lang: Memory
|
Various attributes measuring CPU usage and memory. |
Advanced JMX configuration
PingFederate uses port 1099 for its JMX server. To change the port or other JMS configuration items, if needed, modify the jmx-remote-config.xml configuration file in the <pf_install>/pingfederate/server/default/conf directory.
When connecting to the JMX service using SSL (the default), ensure that the client trusts the PingFederate SSL server certificate presented (see Managing SSL server certificates).