{"type":"model","meta":{"id":"/apps/pubhub/media/crosswork-network-controller-7-1/f445c17e25a1120e8fbde4bd413083d0fd88b2b3/42552ab7-d679-37b0-afe0-7313ad2e8c01","info":{"title":"Service Health Heuristic Packages APIs","description":"APIs for requesting rule and metric data stored by the Crosswork Service Health application.","termsOfService":"terms-of-service","contact":{"name":"Crosswork Team, Cisco","email":"support@cisco.com"},"license":{"name":"Cisco Software License Agreement","url":"http://www.cisco.com/public/sw-license-agreement.html"},"version":"7.1.0"},"security":[{"bearerAuth":[]}],"x-parser-conf":{"overview":{"markdownPath":"reference/ServiceHealth/sh_heuristic_packages_overview.md"}},"openapi":"3.0.1","servers":[{"url":"/crosswork/aa/hpmgr"}],"securitySchemes":{"bearerAuth":{"type":"apiKey","description":"Security token for authorizing requests for these APIs.","name":"Authorization","in":"header"}}},"spec":{"type":"object","description":"Use this object when a Subservice needs to report live (not necessarily real-time) metrics in addition to its overall health status. For example: A Subservice monitoring the health of SR Policies needs to report latency, jitter and packet loss. It also needs to report its consolidated health status, computed by comparing these metrics against threshold values. SubserviceClassLiveMetric allows a set of metrics to be identified as live metrics. The feed for these metrics will be reported periodically by Expression Tracker. These metrics will be persisted by Subservice instances to aid subsequent queries. If these metrics need to be aggregated at the service level, then you can do this by setting the service_level_aggregation_method. Aggregation is supported for metrics of the same type. In other words, if Latency is specified as a SubserviceClassLiveMetric and aggregation_method is set to, say, Average, then the average of Latency metrics is taken across all instances of this Subservice Class that belong to a given service instance.\n!! Caution: Please use Live Metrics sparingly as they can put significant stress on the system's CPU and memory resources. !!","properties":{"metric_label":{"description":"Metric label","type":"string"},"description":{"description":"Description","type":"string"},"threshold":{"type":"string","description":"Threshold"},"aggr_logic":{"type":"string","description":"Used to provide a benchmark reference to the user looking at the metric value. For example: threshold = 'LATENCY_MAX_THRESHOLD'. Similar to the constants specified in the eval_expression strings, this constant too should be resolvable by the respective nConfig Profile associated with the service. This field is optional and can be left empty.","default":"NONE","enum":["NONE","AVERAGE","MEDIAN","MODE"],"$$ref":"#/components/schemas/LiveMetricServiceLevelAggrLogic"}},"$$ref":"#/components/schemas/SubserviceClassLiveMetric","title":"SubserviceClassLiveMetric"}}