cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Task completion rules and task metrics

Task completion rules and task metrics

In IdentityIQ, a task completion rule is an optional rule that runs at the end of a task.

It may be used for a variety of purposes, such as saving task statistics in a time-series database for subsequent monitoring, analysis, and visualization using other tools.

 

Influx and Prometheus are popular time-series databases that are well suited for storing task metrics.

 

Attached is an example task completion rule that sends metrics to Influx.

 

It sends each of the numeric attributes in the task result as a measurement value. Note: You do not need to define these attributes in the database beforehand, as Influx is schema-less.

 

Once you've collected some data, Grafana is an easy to use tool for visualizing it in a dashboard.

 

The example graphs below show statistics for full aggregation tasks over a 14 day period. The first graph shows how long the aggregations took, the second graph shows how many account changes were detected.

 

To use the rule for Influx:

  1. Download, install and configure Influx.
  2. Modify the "Task Completion Influx Statistics" rule with the URL for your Influx database, and import the rule.
  3. Edit your System Configuration object to enable the rule:
        <entry key="taskCompletionRule" value="Task Completion Influx Statistics"/>

 

Prometheus is a bit more work to configure, but I can provide example code for it if there is interest.

grafana.png

Labels (1)
Attachments
Comments

paul.hilchey

Hi,

How did you configure above GRAFANA dashboard to show each aggregation task details over certain time period ?

Thanks,

Pooja

Hi Pooja,

I'll attach a screenshot showing the Grafana settings for the elapsed time graph.  Note that the "where" clause selects tasks in our "prod" environment, that have a name matching the pattern "/Full_Aggregation/".  You will likely need to change those to match your deployment.

Other settings you should specify:

  •   the Y axis units of "duration (s)"
  •   display draw mode "Bars", with "Stack" enabled
  •   time range: 21d

The time range setting is important: you'll get an error message "Datapoints outside time range" if the range is too small.

metrics.png

Paul,

I would be interested in seeing the code for the Prometheus integration.

 

Anthony

Version history
Revision #:
2 of 2
Last update:
‎Jul 25, 2023 06:56 PM
Updated by: