Applications Analytics and Health

Overview

A list of applications managed by the BIG-IPs that are connected to BIG-IQ. This API provides health and statistics information for each application.

REST Endpoint: /mgmt/ap/query/v1/tenants/default/reports/ApplicationsList

Requests

GET /mgmt/ap/query/v1/tenants/default/reports/ApplicationsList

Query Parameters

Name Type Required Description
$filter string False Specifies a string or integer used to filter the results. You can filter based on one or more parameters.
$from string False Specifies time to start results. The default uses the values of “-5m” for from and “now” for to, which starts from 5 minutes before the current time and ends at the current time.
$to string False Specifies time to end results. The default uses the values of “-5m” for from and “now” for to, which starts from 5 minutes before the current time and ends at the current time.
$orderby string False Specifies the sorting parameter and order to apply to results. The sort order can be ascending (asc) or descending (desc). The default value is “health desc”, which sorts by health in descending order.
$skip number False Specifies the number of results in the ordered list to skip. The default value of skip is 0, meaning none are skipped and the results range from 1 to the top value.
$top number False Specify the maximum number of results in the ordered list. The default value is 10.

Response

HTTP/1.1 200 OK

Name Type Description
items object The items that appear in the query.
     id string The application’s unique identifier.
     selfLink string The application’s BIG-IQ link.
     name string The application’s readable name.
     serviceCount number The number of application services grouped under the application.
     health HealthEnum The application’s health. Possible values “Critical”, “Moderate”, “Good” or “Other”.
     lastActivity number The last time the configuration of this application changed.
     protectionMode string The application’s protection mode. Possible values: “notProtected”, “transparent”, “blocking”, “mixed” or “NA”.
     notProtectedExists boolean Indicates that there at least one application service contained in the application that has no configured protection.
     badTrafficGrowthExists boolean Indicates that there at least one application service contained in the application that displays bad traffic growth.
     falsePositiveAttacksExists boolean Indicates that there at least one application service contained in the application that displays false positives attacks.
     potentiallyHarmfulAttackExists boolean Indicates that there at least one application service contained in the application that displays potentially harmful attacks.
     responseTime number The response time of the contained HTTP application services.
     httpTransactionsPerSecond number The number of HTTP transactions per second of the contained application services.
     connections number The number of opened connections.
     newConnectionsPerSecond number New connection creation rate.
     dnsTotalRps number The number of DNS requests per second of the contained application services.
itemsPerPage number The number of items per page.
pageIndex number The chronological page number as of which to display query results.
startIndex number The chronological item number as of which to display query results.
total number The total number of items queried.
totalPages number The total number of pages in the query result.

Permissions

Role Allow
Application Viewer Yes
Application Manager Yes
Application Creator Yes
Application Editor Yes
Global Application Viewer Yes
Global Application Manager Yes

Examples

GET to retrieve a List of the existing applications

The following example returns the top 50 items ordered by the health in ascending order.

GET https://<BIG-IQ>/mgmt/ap/query/v1/tenants/default/reports/ApplicationsList?$orderby=health asc&$skip=0&$top=50

Response

  {
  "kind": "ap:compose:Report",
  "lastUpdateMicros": 206510213340,
  "result": {
      "totalItems": 3,
      "items": [
          {
              "id": "5d99b862-eab8-3bea-af1e-414dccf61617",
              "selfLink": "https://localhost/mgmt/cm/global/global-apps/5d99b862-eab8-3bea-af1e-414dccf61617",
              "name": "myWebApp_UI",
              "serviceCount": 3,
              "lastActivity": 1563589499859,
              "httpTransactionsPerSecond": 0.4740740740740741,
              "connections": 0.0,
              "newConnectionsPerSecond": 0.2,
              "responseTime": 0.0,
              "protectionMode": "Not Protected",
              "health": "Critical",
              "notProtectedExists": true
          },
          {
              "id": "7439f32a-8cc6-3cb3-8e6a-aee4e71a4191",
              "selfLink": "https://localhost/mgmt/cm/global/global-apps/7439f32a-8cc6-3cb3-8e6a-aee4e71a4191",
              "name": "myWebApp_API",
              "serviceCount": 3,
              "lastActivity": 1563586606282,
              "httpTransactionsPerSecond": 0.3333333333333333,
              "connections": 0.027777777777777776,
              "newConnectionsPerSecond": 0.32592592592592595,
              "responseTime": 0.14444444444444443,
              "protectionMode": "Not Protected",
              "health": "Moderate",
              "notProtectedExists": true,
              "dnsTotalRps": 0.007407407407407408
          },
          {
              "id": "69cf49ad-de27-3540-b38f-9773d06ca1c4",
              "selfLink": "https://localhost/mgmt/cm/global/global-apps/69cf49ad-de27-3540-b38f-9773d06ca1c4",
              "name": "Unknown Applications",
              "serviceCount": 1,
              "lastActivity": 1563579504992,
              "httpTransactionsPerSecond": 0.044444444444444446,
              "connections": 0.0,
              "newConnectionsPerSecond": 0.0,
              "responseTime": 0.0,
              "protectionMode": "Not Protected",
              "health": "Good",
              "notProtectedExists": true
          }
      ],
      "itemsPerPage": 50,
      "startIndex": 0,
      "totalPages": 1,
      "pageIndex": 0,
      "currentItemCount": 3
  },
  "requestDurationInMillis": 440
}

To order the response using orderby

Base expression format of orderby:

$orderby: <property name> <asc|desc>

For example:

$orderby: responseTime desc
$orderby: protectionMode asc

To filter the response using filter

Base expression format :

$filter <property name> eq <value>

Complex expression format:

$filter <expression> <and|or> <expression>
$filter: health eq 'Critical'
$filter: badTrafficGrowth eq 'true'
$filter: (health eq 'Critical') or (health eq 'Moderate') or (health eq 'Other')
$filter: (findings eq 'Successful Attack') or (findings eq 'Blocking Valid Traffic') or (badTrafficGrowth eq 'true') or (protectionMode eq 'Not Protected')