Disabling cloud native analytics self monitoring

The cloud native analytics self_monitoring service is enabled by default. Follow this procedure if you wish to disable this feature.

When enabled, the cloud native analytics self_monitoring policy causes Netcool®/OMNIbus to create an event every minute, with an Identifier field value of Event Analytics Service Monitoring. This heartbeat event follows the usual pathway of an event through the backend services of cloud native analytics. At the end of the pathway, the Grade field value of the event is set to the time at which the event was processed by the cloud native analytics self_monitoring policy. The heartbeat event is visible in the Alert Viewer, and when cloud native analytics is functioning correctly the time-stamp value in its Grade field increases every minute. If cloud native analytics self_monitoring is enabled and the time-stamp in the Grade field of the heartbeat event is not incrementing after a few minutes, then there might be a failure in one of the cloud native analytics services.

To disable cloud native analytics self_monitoring, you can either use the API or the GUI procedures.

Using the GUI

  1. Open the Policies page and click Filter and Apply the Self Monitoring filter to the policy table.
  2. Toggle the policy to Disabled.

Using the API

  1. Retrieve the password that is required to access the policy registry.

    kubectl get secret release_name-systemauth-secret -o=jsonpath='{.data.password}'
    Where <release_name> is the name of your deployment, as specified by the value used for name (Operator Lifecycle Manager UI Form view), or name in the metadata section of the noi.ibm.com_noihybrids_cr.yaml or noi.ibm.com_nois_cr.yaml files (YAML view).
  2. Decode the password.

    echo encoded_password | base64 --decode
    Where encoded_password is the output from step 1.
  3. Find the ingress point for the policy registry service by running the following command on Red Hat® OpenShift®:

    kubectl get routes
    The value in the HOSTS/PORT column is the ingress point.
  4. Run the following command to list all the policies. Then, find the policy ID of the policy that has a group_id value of self_monitoring.

    curl -u system:password --insecure -X GET "https://ingress-point/api/policies/system/v1/cfd95b7e-3bc7-4006-a4a8-a73a79c71255/policies/system" -H "accept: application/json" -H "Content-Type: application/json" | grep -i self
    Where
    • password is the decoded password output from step 2.
    • ingress-point is the ingress point for the policy registry, as found in step 3.
  5. Update the self_monitoring policy by using the policy_id you found in step 4 to set the deployed state to false in the following command:
    curl -u system:password --insecure -X PUT "https://ingress-point/api/policies/system/v1/cfd95b7e-3bc7-4006-a4a8-a73a79c71255/policies/system/self_monitoring_policy_id" -H "accept: application/json" -H "Content-Type: application/json" -d "{"policyid":"policy_id","groupid":"self_monitoring","type":"enrich","dynamic":true,"configuration":{"deployed":false},"metadata":{"model":{"analytic":"self_monitoring","type":"analytic"}},"resolver":{"stub":"com.ibm.itsm.inference.resolver.SelfMonitoringResolver","version":"1.0.1"},"user":false}"
    Where
    • password is the decoded password output from step 2.
    • ingress-point is the ingress point for the policy registry, as found in step 3.
    • policy_id is the ID of the self_monitoring policy that you want to delete, as found in step 4.