---
title: Monitoring the server using JConsole
description: Monitor the PingDirectory server with JConsole as a remote process after enabling the JMX Connection Handler.
component: pingdirectory
version: 11.1
page_id: pingdirectory:monitoring_the_pingdirectory_suite_of_products:pd_ds_monitor_dir_server_jconsole
canonical_url: https://docs.pingidentity.com/pingdirectory/11.1/monitoring_the_pingdirectory_suite_of_products/pd_ds_monitor_dir_server_jconsole.html
llms_txt: https://docs.pingidentity.com/pingdirectory/llms.txt
docs_for_agents: https://developer.pingidentity.com/build-with-ai/docs-for-agents.md
revdate: 2026-08-19T00:00:00Z
section_ids:
  steps: Steps
  example: Example:
  example-2: Example:
  example-3: Example:
---

# Monitoring the server using JConsole

Set up JConsole to monitor the server using a remote process.

## Steps

1. Start the server.

   ### Example:

   ```shell
   $ bin/start-server
   ```

2. Enable the Java Management Extensions (JMX) Connection handler using `dsconfig` with the `set-connection-handler-prop` option.

   |   |                                                                                                                               |
   | - | ----------------------------------------------------------------------------------------------------------------------------- |
   |   | The handler is disabled by default.Include the LDAP connection parameters, such as host name, port, bindDN, and bindPassword. |

   ### Example:

   ```shell
   $ bin/dsconfig set-connection-handler-prop \
     --handler-name "JMX Connection Handler" --set enabled:true
   ```

3. Assign privileges to a regular user account with the `ldapmodify` tool.

   |   |                                                                                        |
   | - | -------------------------------------------------------------------------------------- |
   |   | Do not use a root user account, as using a root user account would be a security risk. |

   ### Example:

   This example grants `jmx-read`, `jmx-write`, and `jmx-notify` privileges to the user.

   ```shell
   $ bin/ldapmodify --hostname server1.example.com --port 1389 \
     --bindDN "cn=Directory Manager" --bindPassword secret
   dn: uid=admin,dc=example,dc=com
   changetype: modify
   replace: ds-privilege-name
   ds-privilege-name: jmx-read
   ds-privilege-name: jmx-write
   ds-privilege-name: jmx-notify
   ```

4. In **Java Monitoring & Administrative Console**, click **Remote Process**, and enter the following JMX URL using the host and port of your server.

   ```
   service:jmx:rmi:///jndi/rmi://<host>:<port>/com.unboundid.directory.server.protocols.jmx.client-unknown
   ```

5. In the **Username** and **Password** fields, enter the bind distinguished name (DN) and password for a user that has at least the `jmx-read` privilege.

6. Click **Connect**.

7. Click **com.unboundid.directory.server**, and expand the `rootDSE` node and the `cn-monitor` sub-node.

8. Select a monitoring entry.
