JMX REST connector settings
When we connect to a Liberty profile using JMX REST connectors, we can specify settings in the form of constants that have associated key values.
These keys are constants in the com.ibm.ws.jmx.connector.client.rest.ConnectorSettings interface, and each constant requires an integer value to specify an amount of time in milliseconds. The DISABLE_HOSTNAME_VERIFICATION constant is an exception, which accepts the boolean value only.
The com.ibm.ws.jmx.connector.client.rest.ConnectorSettings interface is a management interface. For more information about the management interface, see the Java API document for the Liberty profile. The Java API documentation for each Liberty profile API is detailed in the Programming Interfaces (APIs) section of the information center, and is also available as a separate .zip file in one of the javadoc subdirectories of the ${wlp.install.dir}/dev directory.
- DISABLE_HOSTNAME_VERIFICATION
- Boolean setting that disables hostname verification on the client connections when it is enabled. This can be useful for environments where the hostname used does not match the one specified in the server certificate. The key for constant DISABLE_HOSTNAME_VERIFICATION is the String com.ibm.ws.jmx.connector.client.disableURLHostnameVerification.
- MAX_SERVER_WAIT_TIME
- Amount of time that the client waits for the server to become available before the JMX connection fails and a new connection must be created. The key for constant MAX_SERVER_WAIT_TIME is the String com.ibm.ws.jmx.connector.client.rest.maxServerWaitTime. If the connection is restored, any previous notification listeners are registered again. To disable this behavior, set the value to zero.
- NOTIFICATION_DELIVERY_INTERVAL
- Maximum amount of time that the server waits for new notifications before responding to a request for notifications from the client. The key for constant NOTIFICATION_DELIVERY_INTERVAL is the String com.ibm.ws.jmx.connector.client.rest.notificationDeliveryInterval. A larger value results in better notification delivery times because less time is spent establishing new connections. Normally it is not necessary to adjust this value.
- NOTIFICATION_INBOX_EXPIRY
- Amount of time that the server waits before discarding notification registrations if the client has not checked for new notifications. The key for constant NOTIFICATION_INBOX_EXPIRY is the String com.ibm.ws.jmx.connector.client.rest.notificationInboxExpiry. Normally it is not necessary to adjust this value.
- NOTIFICATION_READ_TIMEOUT
- The value of timeout for notification fetching. Because the server might wait up to the value of the NOTIFICATION_DELIVERY_INTERVAL constant before responding, this value must be somewhat larger, though normally it is not necessary to adjust this value. The key for constant NOTIFICATION_READ_TIMEOUT is the String com.ibm.ws.jmx.connector.client.rest.notificationReadTimeout.
- READ_TIMEOUT
- The value of timeout for all client communications with the server, except notification fetching. Adjust this value if the client throws read timeout exceptions because of a slow connection or client or server process. The key for constant READ_TIMEOUT is the String com.ibm.ws.jmx.connector.client.rest.readTimeout.
- SERVER_STATUS_POLLING_INTERVAL
- Amount of time that the client waits between checks that the server is available again when the MAX_SERVER_WAIT_TIME value is non-zero. Normally it is not necessary to adjust this value. The key for constant SERVER_STATUS_POLLING_INTERVAL is the String com.ibm.ws.jmx.connector.client.rest.serverStatusPollingInterval.
- CUSTOM_SSLSOCKETFACTORY
- A custom SSL socket factory that can be used to obtain sockets. We can create our own SSLContext from our own KeyStores and then use the SocketFactory from that context with the REST connector.
We can enable the JMX REST connector options using the system properties. For example, for the MAX_SERVER_WAIT_TIME constant, we can use one of the following options:
- In the command prompt, set the system property -Dcom.ibm.ws.jmx.connector.client.rest.maxServerWaitTime=0
- In a JMX client program, add the setting environment.put("com.ibm.ws.jmx.connector.client.rest.maxServerWaitTime", 0);
Parent topic: Configure secure JMX connection to the Liberty profile