Hey! These docs are for version 6.3, which is no longer officially supported. Click here for the latest version, 6.7!

Performance Metrics Rest API endpoint

URL: /rest/status/performancemetric

  • GET - lists performance metrics with values and uoms
  • PUT, POST, DELETE - unimplemented

Filtering URL parameters:

  • hostgroupid - includes this host group in list. Can be repeated.
  • hostgroupname - includes this host group in list. If the name is associated with more than one host group, all will be included in the response. Can be repeated.
  • hostname - filter hosts by this host name. Can specify wildcards with %25. Can be repeated.
  • hostid - filter hosts by this host id number. Can be repeated.
  • servicename - filter services by this service check name. Can specify wildcards. Can be repeated.
  • serviceid - filter services by this service id number. Can be repeated.
  • metricname - filter metrics by this metric name. Can be repeated.
  • hs - filter based on this host service. Of the form hostname::servicename. Can be repeated.
  • hsm - filter based on this host service metric. Of the form hostname::servicename::metricname. Can be repeated.
  • convertuom - if set, will convert performance data into base units. Eg, if value=1500 and uom=MB, with this flag set, will return value=1500000000 uom=bytes.

Other URL parameters:

  • rows - limit results by this many rows. Note: if ordering by value, Opsview needs to check for all services before sorting, so we recommend you filter the list of performance metrics to have a smaller set first.
  • order - you can suffix with _desc to sort descending. If not specified, the order is indeterminate. You can specify multiple values to have secondary sorting (except when sorting by value):
    • host
    • service
    • metric
    • value - If this is set, will order by value, then hostname, servicename. Values of empty strings will be sorted to the bottom of the list, regardless of ascending or descending.

Example output:

{
    "list": [{
        "hostname": "opcollector",
        "metricname": "age",
        "servicename": "Opsview Housekeep Age",
        "servicestate": "critical",
        "uom": "",
        "value": "5"
    }, {
        "hostname": "opsview",
        "metricname": "rta",
        "servicename": "TCP/IP - LAN",
        "servicestate": "unknown",
        "uom": "ms",
        "value": "25"
    }, {
        "hostname": "winvpn",
        "metricname": "rta",
        "servicename": "TCP/IP - LAN",
        "servicestate": "unknown",
        "uom": "",
        "value": ""
    }],
    "rows": "3",
    "total": "5"
}

It is possible for the value to be the empty string - this means the value is not available (for instance, if the service has a response without any performance dat