The following sections describe the components and the data that can be monitored:
Jobs are administrative functions that can be scheduled for processing at some future date or on a recurring basis. You can monitor the configuration details of jobs at driver set and driver level such as job CN, status of a job, and when a job is scheduled to run.
To view information about the jobs configured in Identity Manager, perform a search on the following entry:
cn=job_stats,cn=idm,cn=monitor
To view information about all jobs configured at a driver set level, perform a search on the following entries:
cn=driverset,cn=job_stats,cn=idm,cn=monitor
To view information about a specific job configured at a driver set level, perform a search on the following entry:
cn=<Name of the job>,cn=driverset,cn=job_stats,cn=idm,cn=monitor
For example, cn=StatisticsJob,cn=driverset,cn=job_stats,cn=idm,cn=monitor
To view information about jobs configured for all drivers in a driver set, perform a search on the following entry:
cn=drivers,cn=job_stats,cn=idm,cn=monitor
To view information about jobs configured for a driver, perform a search on the following entry:
cn=<Name of the driver>,cn=drivers,cn=job_stats,cn=idm,cn=monitor
To view information about a specific job configured for a driver, perform a search on the following entry:
cn=<CN of the job>,cn=<CN of the driver>,cn=drivers,cn=job_stats,cn=idm,cn=monitor
A sample LDAP search output is below. The search displays nextScheduledRun timestamp in the epoch format.
dn: cn=StatisticsJob,cn=DriverSet,cn=JOB_STATS,cn=IDM,cn=Monitor nextScheduledRun:1485631800 configuration: enabled status: stopped containment: DirXML-DriverSet JobDN: CN=StatisticsJob,CN=driverset1,O=system objectclass: Top objectclass: extensibleObject dn: cn=PermissionOnboarding,cn=Active Directory Driver,cn=drivers,cn=JOB_STATS,cn=IDM,cn=Monitor nextScheduledRun: 0 configuration: enabled status: stopped containment: DirXML-Driver JobDN: CN=PermissionOnboarding,CN=Active Directory Driver,CN=driverset1,O=system objectclass: Top objectclass: extensibleObject
In this example, nextScheduledRun: 0 means that the job is not scheduled to run.
You can monitor the current state of the JVM such as memory, thread, runtime, class loader, and garbage collection. This information helps you debug or troubleshoot Java issues such as threading, classpath, and memory buildup. To view this information, perform a search operation on the following entry:
cn=jvm_stats,cn=idm,cn=monitor
You can view your operating system’s information such as name, version, architecture, processors, and the load it can take. To monitor this information, perform a search operation on the following entry:
cn=operating_system_stats,cn=jvm_stats,cn=idm,cn=monitor
For information about the current memory allocation of the JVM, perform a search operation on the following entry:
cn=memory_stats,cn=jvm_stats,cn=idm,cn=monitor
To view the class loader of the JVM, perform a search operation on the following entry:
cn=classloader_stats,cn=jvm_stats,cn=idm,cn=monitor
For information about garbage collection of the JVM, perform a search operation on the following entry:
cn=garbage_collection_stats,cn=jvm_stats,cn=idm,cn=monitor
For information about thread statistics of the JVM, perform a search operation on the following entry:
cn=thread_stats,cn=jvm_stats,cn=idm,cn=monitor
For information about runtime statistics of the JVM, perform a search operation on the following entry:
cn=runtime_stats,cn=jvm_stats,cn=idm,cn=monitor
NOTE:For certain objects, Identity Manager restricts the search only to the parent object. For example, thread_stats object has only one child node as thread_info. Searching under thread_info is restricted. This implies that you should not construct a search string such as cn=thread_info,cn=thread_stats,cn=jvm_stats,cn=idm,cn=monitor, which will not return you the expected result. Similarly, the runtime_stats object contains system_properties. Identity Manager does not allow you to separately search for system_properties. To monitor these details, you must search for runtime_stats.
A sample LDAP search output is below.
dn: cn=classloader_stats,cn=jvm_stats,cn=idm,cn=monitor total_loaded_class_count: 2393 unloaded_class_count: 0 loaded_class_count: 2393 objectclass: Top objectclass: extensibleObject dn: cn=Copy,cn=collectors,cn=garbage_collection_stats,cn=jvm_stats,cn=idm,cn=monitor collection_time: 54 ms collection_count: 4 objectclass: Top objectclass: extensibleObject dn: cn=MarkSweepCompact,cn=collectors,cn=garbage_collection_stats,cn=jvm_stats,cn=IDM,cn=Monitor collection_time: 0 ms collection_count: 0 objectclass: Top objectclass: extensibleObject dn: cn=heap,cn=memory_stats,cn=jvm_stats,cn=idm,cn=monitor total: 494.94 MB used: 16.188 MB comitted: 123.75 MB initial: 128.00 MB objectclass: Top objectclass: extensibleObject dn: cn=non_heap,cn=memory_stats,cn=jvm_stats,cn=idm,cn=monitor total: -1.0000 Bytes used: 22.064 MB comitted: 22.688 MB initial: 2496.0 KB objectclass: Top objectclass: extensibleObject dn: cn=operating_system_stats,cn=jvm_stats,cn=idm,cn=monitor average_load: 1.0 processors: 1 arch: amd64 version: 3.0.76-0.11-default name: Linux objectclass: Top objectclass: extensibleObject dn: cn=runtime_stats,cn=jvm_stats,cn=idm,cn=monitor uptime: 36 days 4 hours 27 minutes 1 seconds 8 milliseconds start_time: 1478854892218 objectclass: Top objectclass: extensibleObject dn: cn=system_properties,cn=runtime_stats,cn=jvm_stats,cn=idm,cn=monitor sun.boot.class.path: ... ...
You can monitor a driver set’s information such as driver set DN, the number of drivers the driver set holds, the running state of drivers, and how they are configured to run.
cn=driverset_stats,cn=idm,cn=monitor
To monitor information about all the drivers in a driver set, perform a search operation on the following entries:
cn=drivers,cn=driverset_stats,cn=idm,cn=monitor
To monitor the statistics of a specific driver such as driver CN, the state of the driver, driver start option, and if the driver is running or down, perform a search operation on the following entries:
cn=<CN of the driver>,cn=drivers,cn=driverset_stats,cn=idm,cn=monitor
Identity Manager does not allow you to separately search for ProcessedOperationsCount under a driver. To monitor this attribute, perform a subtree search on the driver.
A sample LDAP search output is below.
dn: cn=driverset_stats,cn=IDM,cn=Monitor Startupoption_auto-start_count: 0 Startupoption_manual_count: 10 Startupoption_disabled_count: 1 shutdownpending: 0 starting: 0 running: 0 stopped: 11 numberofdrivers: 11 driversetdn: CN=driverset1,O=system objectclass: Top objectclass: extensibleObject dn: cn=Active Directory Driver,cn=drivers,cn=driverset_stats,cn=IDM,cn=Monitor startoption: manual type: remote downtime: 6 days 4 hours 27 minutes 2 seconds 9 milliseconds driver-state: stopped driverdn: CN=Active Directory Driver,CN=driverset1,O=system objectclass: Top objectclass: extensibleObject dn: cn=publisher,cn=ProcessedOperationsCount,cn=Active Directory Driver,cn=drivers,cn=driverset_stats,cn=IDM,cn=Monitor check-password: 14 add: 1 query: 70 modify: 98 objectclass: Top objectclass: extensibleObject
You can monitor information about the health of the User Application such as currently running threads, memory consumption, and cache information.
To view the health statistics of the User Application, perform a search on the following entry:
cn=userapp_stats,cn=idm,cn=monitor
To monitor the system memory and memory consumed by the JVM, perform a search on the following entry:
cn=memory_info,cn=userapp_stats,cn=idm,cn=monitor
NOTE:memory_info contains several child objects such as jvmmemoryusage and javamemorypool. However, Identity Manager restricts the search to the parent object (memory_info)only.
To monitor the threads that cause heavy utilization of the CPU, perform a search on the following entry:
cn=thread_info,cn=userapp_stats,cn=idm,cn=monitor
To view the cache information, perform a search on the following entry:
cn=cache_info,cn=userapp_stats,cn=idm,cn=monitor
To view the current number of live threads, perform a search on the following entry:
cn=thread_count,cn=thread_info,cn=userapp_stats,cn=idm,cn=monitor
A sample output looks like this:
dn: cn=RUNNABLE,cn=threadStateCounts,cn=thread_count,cn=thread_info,cn=userapp_stats,cn=idm,cn=Monitor count: 21 objectclass: Top objectclass: extensibleObject dn: cn=TIMED_WAITING,cn=threadStateCounts,cn=thread_count,cn=thread_info,cn=userapp_stats,cn=IDM,cn=Monitor count: 46 objectclass: Top objectclass: extensibleObject dn: cn=WAITING,cn=threadStateCounts,cn=thread_count,cn=thread_info,cn=userapp_stats,cn=IDM,cn=Monitor count: 51 objectclass: Top objectclass: extensibleObject dn: cn=SSPR--1-LocalDBLogger-writer-pool-161-thread-1,cn=topMostCPUConsumingThread,cn=thread_count,cn=thread_info,cn=userapp_stats,cn=IDM,cn=Monitor state: TIMED_WAITING objectclass: Top objectclass: extensibleObject
A sample LDAP search output is below.
dn: cn=cache_info,cn=userapp_stats,cn=idm,cn=monitor cachearraysize: 19 objectclass: Top objectclass: extensibleObject dn: cn=Authorization.AdminLevelsCacheHolder,cn=cacheHolders,cn=cache_info,cn=userapp_stats,cn=idm,cn=monitor objectcount: 1 objectclass: Top objectclass: extensibleObject dn: cn=DirectoryAbstractLayerDefinitions,cn=cacheHolders,cn=cache_info,cn=userapp_stats,cn=idm,cn=monitor objectcount: 105 objectclass: Top objectclass: extensibleObject dn: cn=Workflow.Model.Request,cn=cacheHolders,cn=cache_info,cn=userapp_stats,cn=idm,cn=monitor objectcount: 0 objectclass: Top objectclass: extensibleObject dn: cn=MEMORY_INFO,cn=userapp_stats,cn=idm,cn=monitor commitedvirtualmemory: 2972792 objectclass: Top objectclass: extensibleObject dn: cn=Code Cache,cn=javaMemoryPool,cn=memory_info,cn=userapp_stats,cn=idm,cn=monitor freeMemory: 163010 usedMemory: 82750 maxMemory: 245760 objectclass: Top objectclass: extensibleObject dn: cn=HeapMemoryUsage,cn=jvmMemoryUsage,cn=memory_info,cn=userapp_stats,cn=idm,cn=monitor freememory: 514910 usedmemory: 498722 maxmemory: 1013632 objectclass: Top objectclass: extensibleObject dn: cn=NonHeapMemoryUsage,cn=jvmMemoryUsage,cn=memory_info,cn=userapp_stats,cn=idm,cn=monitor freeMemory: 0 usedMemory: 280211 maxMemory: 0 objectclass: Top objectclass: extensibleObject dn: cn=physicalMemory,cn=systemMemoryUsage,cn=memory_info,cn=userapp_stats,cn=idm,cn=monitor freeMemory: 888852 usedMemory: 2972036 maxMemory: 3860888 objectclass: Top objectclass: extensibleObject dn: cn=swapMemory,cn=systemMemoryUsage,cn=memory_info,cn=userapp_stats,cn=idm,cn=monitor freeMemory: 688020 usedMemory: 1415272 maxMemory: 2103292 objectclass: Top objectclass: extensibleObject dn: cn=RUNNABLE,cn=threadStateCounts,cn=thread_info,cn=userapp_stats,cn=idm,cn=monitor count: 27 objectclass: Top objectclass: extensibleObject dn: cn=ContainerBackgroundProcessor[StandardEngine[Catalina]],cn=topMostCPUConsumingThread,cn=thread_info,cn=userapp_stats,cn=idm,cn=monitor state: TIMED_WAITING objectclass: Top objectclass: extensibleObject dn: cn=SSPR--1-LocalDBLogger-writer-pool-161-thread-1,cn=topMostCPUConsumingThread,cn=thread_info,cn=userapp_stats,cn=idm,cn=monitor state: TIMED_WAITING objectclass: Top objectclass: extensibleObject