API Metrics

Metrics accessed at the api endpoint (such as those consumed by the Dropwizard dashboard widget) use dot notation for their metric names; for example, recon.target-phase. The following table lists the API metrics available in IDM:

API Metrics Available in IDM
API Metric NameTypeDescription
audit.audit-topicSummary Count of all audit events generated of a given topic type.
field.augmentation.edgeTimer Rate of reading response objects, to fulfill the _fields requested (when the fields were not populated by the initial repo query).
field.augmentation.vertexTimer Rate of reading response objects, to fulfill the _fields requested (when the fields were not populated by the initial repo query).
filter.filter-type.action.script-nameTimer Rate at which filter scripts are executed, per action. Monitors scripted filters and delegated admin.
icf.system-identifier.objectClass.query._queryExpressionTimer Rate of ICF query executions with queryExpression, and time taken to perform this operation.
icf.system-identifier.objectClass.query._queryFilterTimer Rate of ICF query executions with queryFilter, and time taken to perform this operation.
icf.system-identifier.objectClass.query._queryId.queryIdTimer Rate of ICF query executions with queryId, and time taken to perform this operation.
icf.system-identifier.objectClass.query._UNKNOWNTimer Rate of ICF query executions when the query type is UNKNOWN, and time taken to perform this operation.
internal.managed-object.operationTimer Rate of operations on internal objects.
internal.managed-object.relationship.fetch-relationship-fieldsTimer Rate of fetch operations of relationship fields for internal objects.
internal.managed-object.relationship.get-relationship-value-for-resourceTimer Query rate on relationship values for internal objects.
internal.managed-object.script.script-nameTimer Rate of script executions on internal object.
internal.managed-object.relationship.validate-relationship-fieldsTimer Rate of validate operations of relationship fields for internal objects.
managed.field.augmentationTimer Rate of responses requiring field augmentation. When the repository cannot retrieve all data in a single call, IDM performs additional read operations to complete (augment) the missing data.
managed.managed-object.operationTimer Rate of operations on a managed object.
managed.managed-object.relationship.fetch-relationship-fieldsTimer Rate of fetches of relationship fields of a managed object.
managed.managed-object.relationship.get-relationship-value-for-resourceTimer Rate of queries to get relationship values for a resource on a managed object.
managed.managed-object.relationship.validate-relationship-fieldsTimer Rate of validations of relationship fields of a managed object.
managed.managed-object.script.script-nameTimer Rate of executions of a script on a managed object.
managed.object.handle-temporal-constraints-on-createTimer Latency of enforcing temporal constraints on role objects during object creation.
managed.object.handle-temporal-constraints-on-deleteTimer Latency of enforcing temporal constraints on role objects during object deletion.
managed.object.handle-temporal-constraints-on-updateTimer Latency of enforcing temporal constraints on role objects during object update.
managed.relationship.handle-temporal-constraints-on-createTimer Latency of enforcing temporal constraints on relationship grants during edge creation.
managed.relationship.handle-temporal-constraints-on-deleteTimer Latency of enforcing temporal constraints on relationship grants during edge deletion.
managed.relationship.handle-temporal-constraints-on-updateTimer Latency of enforcing temporal constraints on relationship grants during edge update.
managed.relationship.validate.read-relationship-endpoint-edgesTimer Rate of reads on relationship endpoint edges for validation.
null_array_filter.augmentationrequestTypeTimer Time spent in filter which maps non-nullable, null-valued array fields to an empty array. This filter is traversed for all repo access relating to internal and managed objects.
reconTimer Rate of executions of a full reconciliation, and time taken to perform this operation.
recon-assoc-entry.merged-query.merge-resultsTimer Rate of merge operations after source and/or target objects have been retrieved during a merged query of recon association entries.
recon-assoc-entry.merged-query.page-assoc-entriesTimer Rate of individual paged recon association entry queries during a merged query. More than one page of entries might be requested to build a single page of merged results.
recon-assoc-entry.merged-query.query-sourceTimer Rate of source object retrieval via query when merging source objects to recon association entries.
recon-assoc-entry.merged-query.query-targetTimer Rate of target object retrieval via query when merging target objects to recon association entries.
recon.association-persistence.recon-id-operationTimer The time taken to persist association data. The operation can be source, target, or amendsource, depending on whether data is being produced for a source-phase or target-phase recon association, or to amend the association for a specific source.
recon.id-queries-phaseTimer Rate of executions of the id query phase of a reconciliation, and time taken to perform this operation.
recon.source-phaseTimer Rate of executions of the source phase of a reconciliation, and time taken to perform this operation.
recon.source-phase.pageTimer Rate of pagination executions of the source phase of a reconciliation, and time taken to perform this operation.
recon.target-phaseTimer Rate of executions of the target phase of a reconciliation, and time taken to perform this operation.
repo.jdbc.relationship.edge.execute.joinedToVertexTimer Time (ms) spent running the Edge->Vertex relationship join query on the database and collecting the result set.
repo.jdbc.relationship.executeTimer Rate of relationship graph query execution times.
repo.jdbc.relationship.processTimer Rate of relationship graph query result processing times.
repo.raw._queryId.queryIdTimer Rate of executions of a query with queryId at a repository level, and time taken to perform this operation.
repo.repo-type.cache.objecttypes.event.resource-mappingCount Counts the usage statistics of the objecttypeid cache, which maps an object type to its objecttypeid. The expected count is a small number of misses (sometimes, only one) and the remainder of hits.
repo.repo-typeget-connectionTimer Rate of retrievals of a repository connection.
repo.repo-type.operation.action_name.command.resource-mappingTimer Rate of actions to a repository datasource for a generic/explicit mapped table.
repo.repo-type.operation._adhoc-expression.relationshipTimer Rate of filtered queries (using native query expressions) on the relationship table. This metric measures the time spent making the query (in ms), and the number of times the query is invoked.
repo.repo-type.operation._adhoc-filter.relationshipTimer Rate of filtered queries (using the _queryFilter parameter) on the relationship table. This metric measures the time spent making the query (in ms), and the number of times the query is invoked.
repo.repo-type.create_properties.execute.resource-mappingTimer Rate of execution time on the JDBC database for the create_properties operations. This operation is performed for every generic object create when it persists the searchable properties. The rate measured here does not include the time taken to obtain a connection to the database from the connection pool. The physical connections to the database have already been established inside the connection pool.
repo.repo-type.operation.execute.resource-mappingTimer Rate of execution time on the JDBC database for CRUD operations. This rate does not include the time taken to obtain a connection to the database from the connection pool. The physical connections to the database have already been established inside the connection pool.
repo.repo-type.query.execute.resource-mapping[.queryType.] Timer Rate of execution time on the JDBC database for queries (either queryFilter or queryId). This rate does not include the time taken to obtain a connection to the database from the connection pool. The physical connections to the database have already been established inside the connection pool.
repo.repo-type.operation.relationshipTimer Rate of CRUDPAQ operations to a repository datasource for a generic/explicit/relationship mapped table.
repo.repo-type.operation.relationship.stage.origin_typeTimer Time (ms) spent in the various phases to retrieve relationship expanded data referenced by queried objects.
repo.repo-type.operation.resource-mappingTimer Rate of initiations of a CRUDPAQ operation to a repository datasource.
router.path-name.action.action-typeTimer Rate of actions over the router, and time taken to perform this operation.
router.path-name.createTimer Rate of creates over the router, and time taken to perform this operation.
router.path-name.deleteTimer Rate of deletes over the router, and time taken to perform this operation.
router.path-name.patchTimer Rate of patches over the router, and time taken to perform this operation.
router.path-name.query.queryExpressionTimer Rate of queries with queryExpression completed over the router, and time taken to perform this operation.
router.path-name.query.queryFilterTimer Rate of queries with queryFilter completed over the router, and time taken to perform this operation.
router.path-name.readTimer Rate of reads over the router, and time taken to perform this operation.
router.path-name.updateTimer Rate of updates over the router, and time taken to perform this operation.
scheduler.job-store.repo.operation.scheduler-objectTimer Time spent storing scheduled jobs in the repository.
scheduler.type.operationTimer Execution rate of scheduler requests.
script.script-name.request-typeTimer Rate of calls to a script and time taken to complete.
selfservice.user.password.resetSummary Count of all successful user self-service password resets.
selfservice.user.registration.registration-typeSummary Count of all successful user self-service registrations by registration type.
selfservice.user.registration.registration-type.providerSummary Count of all successful user self-service registrations by registration type and provider.
sync.create-objectTimer Rate of requests to create a target object, and time taken to perform the operation.
sync.delete-targetTimer Rate of requests to delete a target object, and time taken to perform the operation.
sync.objectmapping.mapping-nameTimer Rate of configurations applied to a mapping.
sync.queue.mapping-name.action.acquireTimer Rate of acquisition of queued synchronization events from the queue.
sync.queue.mapping-name.action.discardTimer Rate of deletion of synchronization events from the queue.
sync.queue.mapping-name.action.executionTimer Rate at which queued synchronization operations are executed.
sync.queue.mapping-name.action.failedSummary Number of queued synchronization operations that failed.
sync.queue.mapping-name.action.precondition-failedSummary Number of queued synchronization events that were acquired by another node in the cluster.
sync.queue.mapping-name.action.rejected-executionsSummary Number of queued synchronization events that were rejected because the backing thread-pool queue was at full capacity and the thread-pool had already allocated its maximum configured number of threads.
sync.queue.mapping-name.action.releaseTimer Rate at which queued synchronization events are released.
sync.queue.mapping-name.action.release-for-retryTimer Times the release of queued synchronization events after a failure and before exceeding the retry count.
sync.queue.mapping-name.action.submitTimer Rate of insertion of synchronization events into the queue.
sync.queue.mapping-name.poll-pending-eventsTimer The latency involved in polling for synchronization events.
sync.raw-read-objectTimer Rate of reads of an object.
sync.source.assess-situationTimer Rate of assessments of a synchronization situation.
sync.source.correlate-targetTimer Rate of correlations between a target and a given source, and time taken to perform this operation.
sync.source.determine-actionTimer Rate of determinations done on a synchronization action based on its current situation.
sync.source.perform-actionTimer Rate of completions of an action performed on a synchronization operation.
sync.target.assess-situationTimer Rate of assessments of a target situation.
sync.target.determine-actionTimer Rate of determinations done on a target action based on its current situation.
sync.target.perform-actionTimer Rate of completions of an action performed on a target sync operation.
sync.update-targetTimer Rate of requests to update an object on the target, and the time taken to perform this operation.
user.login.user-typeSummary Count of all successful logins by user type.
user.login.user-type.providerSummary Count of all successful logins by user type and provider.
virtual-properties-from-relationships.not-found.virtual_properties.resource_collection_relationship_fieldSummary Number of 404 responses encountered when querying the resource_collection/relationship_field specified in the traversal_depthX tag for the most recent X.
virtual-properties-from-relationships.unsatisified-temp-constraint.virtual_properties.resource_collection_relationship_fieldSummary Number of edges skipped due to an unsatisfied temporal constraint on either the edge or the referred-to vertex. Encountered when querying the resource collection and relationship field at the traversal_depthX tag for the most recent X.
virtual-properties-from-relationships.virtual_properties.resource_collection_relationship_fieldTimer Time spent traversing relationship fields to calculate the specified virtual properties. The managed objects linked to by the traversal relationship fields define a tree, whose root is the virtual property host. This object tree is traversed depth-first, with the traversal_depthX corresponding to the latency involved with each relationship traversal. Traversal_depth0 corresponds to the first relationship field traversed. Because the tree is traversed depth-first, traversal_depthX will subsume all of the traversal latencies for all traversal_depth Y, where Y>X.

Read a different version of :