Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Xavier
Product and Topic Expert
Product and Topic Expert
4,218
The FRUN AAI REST interface (available since SAP Focused Run 3.0 FP01) provides external access to most of the SAP Focused Run metrics in time-series format: A time series is a group of measurements on a single entity over time. (ex: average cpu for host for the last hour per minute).

This API is a generic time-series API using a concept called Data Provider:

The data provider is an abstract layer for accessing different SAP Focused RUN data sources with the same protocol:

This protocol include the following elements:

  • Time periods: Time period to apply to the time series.

  • Resolutions. The resolution of the time series.

  • Providers: The identifier of the data source.

  • Filters. The filters used to restrict the content of the time series.


The list of filters available depends on the selected provider.

The result of the API contains:

  1. Attributes: A set of key-values pair describing the entity for which the measurements have been observed.

  2. Data Points: A collection of data points indexed in time order.


 

Please note that the format of this API is compatible with the SAP Cloud ALM Analytics API documented SAP API Hub with the the following restrictions:

  • The columns attributes containing dimensions and metrics are not supported by the SAP Focused RUN implementation.

  • The table "format" is not supported by the SAP Focused RUN implementation.

  • The name of the series returned by the SAP Focused RUN implementation uses a different  naming rules:

    • Single Series: <name>-[<ATTRIBUTES>~]*

    • Multiple Series: the name of the series is formatted by the different data providers




 

Data Providers






In the following, you can find a description of existing data providers with their different filters available in SAP Focused Run:

  • System Monitoring

  • Health Monitoring Availability

  • Health Monitoring Application Check




 

DP Provider Name: DP_SYSMON


This provider retrieves data managed by the SAP Focused RUN System Monitoring use case.

 

Payload Example:

{"format":"time_series","timestampFormat":"unix","timeRange":{"semantic":"C2H","from":"20221104093015","to":"20221104113015"},"resolution":"R","timezone":"+01:00","queries":[{"name":"","provider":"DP_SYSMON","columns":{"dimensions":[],"metrics":[]},"filters":[{"key":"GUID","values":["98f2b203-2cd3-1eab-a010-c47df058b45a"]},{"key":"METRIC_NAMES","values":["CPU_USER_UTILIZATION"]}],"refId":"B"}]}

 

Filters:






































Filters Description Comment
GUID Extended ID of the system GUID of the system
METRIC_NAMES Name of the metrics
EVENT_NAMES Name of the events
CONTEXT_ID Managed Object ID GUID of the Managed Object
METHOD Aggregation method to apply to the metrics Possible values:
SUM,
MAX,
MIN,
COUNT
DRILLDOWN When applicable perform a drill-down on the managed object Possible values:
HOST,
INSTANCE

 

Example:


 

Request:
{
"request": {
"method": "POST",
"url": "<to be changed>",
"data": {
"format": "time_series",
"timestampFormat": "unix",
"timeRange": {
"semantic": "C6H",
"from": "20221130121512",
"to": "20221130181512"
},
"resolution": "H",
"timezone": "+01:00",
"queries": [
{
"name": "",
"provider": "DP_SYSMON",
"columns": {
"dimensions": [],
"metrics": []
},
"filters": [
{
"key": "GUID",
"values": [
"fa163e1b-092c-1eea-bd88-42acba4bdb86"
]
},
{
"key": "METRIC_NAMES",
"values": [
"CPU_SYSTEM_UTILIZATION"
]
},
{
"key": "DRILLDOWN",
"values": [
"HOST"
]
}
]
}
]
},
}

 

 

Response:
"response": [
[
{
"serieName": " -CLPCLM (ABAP)~spwdfvml3101~CPU System Utilization",
"attributes": [
{
"key": "METRIC_NAMES",
"value": "CPU_SYSTEM_UTILIZATION"
},
{
"key": "CONTEXT_ID",
"value": "FA163E1B092C1EDABDEB2BE08E9CDE83"
},
{
"key": "MANAGED_OBJ_NAME",
"value": "spwdfvml3101"
},
{
"key": "METRIC_ID",
"value": "0050568E6E9A02DE83C120FAB30649B9"
},
{
"key": "ROOT_CONTEXT_NAME",
"value": "CLPCLM (ABAP)"
},
{
"key": "ROOT_CONTEXT_ID",
"value": "fa163e1b-092c-1eea-bd88-42acba4bdb86"
},
{
"key": "DRILLDOWN",
"value": "DETAIL"
}
],
"dataPoints": [
[
1.01,
1669806900000
],
[
1.03,
1669810500000
],
[
1.05,
1669814100000
],
[
1.03,
1669817700000
],
[
1.01,
1669821300000
],
[
0.91,
1669824900000
]
]
},
{
"serieName": " -CLPCLM (ABAP)~spwdfvml3103~CPU System Utilization",
"attributes": [
{
"key": "METRIC_NAMES",
"value": "CPU_SYSTEM_UTILIZATION"
},
{
"key": "CONTEXT_ID",
"value": "FA163E1B092C1EEABD8842ACBA4EFB86"
},
{
"key": "MANAGED_OBJ_NAME",
"value": "spwdfvml3103"
},
{
"key": "METRIC_ID",
"value": "0050568E6E9A02DE83C120FAB30649B9"
},
{
"key": "ROOT_CONTEXT_NAME",
"value": "CLPCLM (ABAP)"
},
{
"key": "ROOT_CONTEXT_ID",
"value": "fa163e1b-092c-1eea-bd88-42acba4bdb86"
},
{
"key": "DRILLDOWN",
"value": "DETAIL"
}
],
"dataPoints": [
[
1.88,
1669806900000
],
[
1.95,
1669810500000
],
[
1.94,
1669814100000
],
[
1.88,
1669817700000
],
[
1.97,
1669821300000
],
[
1.88,
1669824900000
]
]
}
]
]
}

 

 

DP Provider Name: DP_OCMON


This provider retrieves data managed by the SAP Focused RUN Health Monitoring Availability use case.

Payload Example:

{"format":"time_series","timestampFormat":"unix","timeRange":{"semantic":"C6H","from":"20221201091650","to":"20221201151650"},"resolution":"H","timezone":"+01:00","queries":[{"name":"label","provider":"DP_OCMON","columns":{"dimensions":[],"metrics":[]},"filters":[{"key":"CUSTOMER_NETWORK","values":["CLM"]},{"key":"TYPE","values":["URL_AVAIL"]},{"key":"CONTEXT_METRIC","values":["FA163E1B092C1EDBBF87A90EE36A39EC~PROD - collector"]}]}]}

 

Filters:

































Filters Description Comment
CUSTOMER_NETWORK ID of the customer network GUID of the customer network
TYPE Type of application Possible Values:
HTTP Availability,
RFC Availability,
TCP Availability,
Windows Service,
OS Processes
DESTINATION Component to be validated
CONTEXT_METRIC ID of the destination GUID of the destination
METRIC Name of the metric Possible Values:
Availability Percentage,
Status Code,
Certificate Validity,
Response Time

 

Example:


 

 

Request:
{
"request": {
"method": "POST",
"url": "...",
"data": {
"format": "time_series",
"timestampFormat": "unix",
"timeRange": {
"semantic": "C6H",
"from": "20221201093607",
"to": "20221201153607"
},
"resolution": "H",
"timezone": "+01:00",
"queries": [
{
"name": "my serie",
"provider": "DP_OCMON",
"columns": {
"dimensions": [],
"metrics": []
},
"filters": [
{
"key": "CUSTOMER_NETWORK",
"values": [
"CLM"
]
},
{
"key": "TYPE",
"values": [
"URL_AVAIL"
]
},
{
"key": "METRIC",
"values": [
"RESP"
]
},
{
"key": "CONTEXT_METRIC",
"values": [
"FA163E1B092C1EDBBF87A90EE36A39EC~PROD - collector (EU10)"
]
}
]
}
]
}
}

 

Response:
"response": [
[
{
"serieName": "my serie",
"attributes": [
{
"key": "CUSTOMER",
"value": "Cloud ALM (CLM)"
},
{
"key": "METRIC_NAME",
"value": "PROD - collector (EU10)"
},
{
"key": "DESTINATION",
"value": "PROD - collector (EU10)"
},
{
"key": "TYPE",
"value": "HTTP Availabilty"
},
{
"key": "METRIC",
"value": "Response time"
}
],
"dataPoints": [
[
264.67,
1669881600000
],
[
168.9,
1669885200000
],
[
148.87,
1669888800000
],
[
421.45,
1669892400000
],
[
243.72,
1669896000000
],
[
143.78,
1669899600000
],
[
169.11,
1669903200000
]
]
}
]
]
}

 

 

DP Provider Name: DP_HEALTHMONITORING


This provider retrieves data managed by the SAP Focused RUN Health Monitoring Application Check use case.

Payload Example:

{"format":"time_series","timestampFormat":"unix","timeRange":{"semantic":"C6H","from":"20221201095755","to":"20221201155755"},"resolution":"H","timezone":"+01:00","queries":[{"name":"my serie","provider":"DP_HEALTH_MONITORING","columns":{"dimensions":[],"metrics":[]},"filters":[{"key":"CUSTOMER_ID","values":["LOCALNETWORK"]},{"key":"DESTINATION","values":["FA163E1B092C1EDB9ACB383D252D7CA5"]},{"key":"METRIC_ID","values":["cf.memory.usage"]},{"key":"LABEL","values":["Application:aos-srv;InstanceNumber:instance#0"]},{"key":"KPI","values":["LIMIT"]}],"refId":"A"}]}

 

Filters:

































Filters Description Comment
CUSTOMER_ID ID of the customer network
DESTINATION ID of the application
METRIC_ID Metric GUID of the Metric
LABEL Label of the destination
KPI KPI of the metric Possible values:
Value,
Limit,
Usage,
Calculated Rating

 

Example:


 

 

Requests:
{
"request": {
"method": "POST",
"url": "...",
"data": {
"format": "time_series",
"timestampFormat": "unix",
"timeRange": {
"semantic": "C6H",
"from": "20221201110840",
"to": "20221201170840"
},
"resolution": "H",
"timezone": "+01:00",
"queries": [
{
"name": "my serie",
"provider": "DP_HEALTH_MONITORING",
"columns": {
"dimensions": [],
"metrics": []
},
"filters": [
{
"key": "CUSTOMER_ID",
"values": [
"LOCALNETWORK"
]
},
{
"key": "DESTINATION",
"values": [
"FA163E1B092C1EDB9ACB383D252D7CA5"
]
},
{
"key": "METRIC_ID",
"values": [
"cf.memory.usage"
]
},
{
"key": "LABEL",
"values": [
"Application:aos-srv;InstanceNumber:instance#0"
]
},
{
"key": "KPI",
"values": [
"VALUE"
]
}
],
}
]
}
}

 

Responses:
"response": [
[
{
"serieName": "my serie",
"attributes": [
{
"key": "DESTINATION",
"value": "SAP Cloud ALM:PROD"
},
{
"key": "METRIC_NAME",
"value": "cf.memory.usage"
},
{
"key": "VALUES",
"value": "Application:aos-srv;InstanceNumber:instance#0"
},
{
"key": "KPI",
"value": "VALUE"
},
{
"key": "CUSTOMER",
"value": "LOCALNETWORK"
},
{
"key": "LABEL",
"value": "Application:aos-srv;InstanceNumber:instance#0"
}
],
"dataPoints": [
[
701.94,
1669888800000
],
[
892.35,
1669892400000
],
[
882.65,
1669896000000
],
[
872.63,
1669899600000
],
[
873.01,
1669903200000
],
[
906.88,
1669906800000
]
]
}
]
]
}

 

 

Thanks for reading.

 
5 Comments
0 Kudos
Hello Xavier DUPEYRAT,  Thanks for the details in the blog very helpful. Can you give one scenario where you have called this API to create dashboards etc.
Xavier
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hello,

We are using the Focused RUN REST API to build Operation Control Center, Monitoring Console and/or Service Level Report with external dashboarding tools.

Xavier.
rene_van_der_peijl
Discoverer
0 Kudos
Hi Xavier,

In this article, you only talk about data providers DP_SYSMON, DP__HEALTH_MONITORING and DP_OCMON. Is it also possible to deploy it for data provider DP_ALERT ?. If so ? Then what should the body (payload) be like ?.

Kind Regards,

Rene van der Peijl
andrea_campo
Product and Topic Expert
Product and Topic Expert
Hello Rene,

 

You can try this to get, for example, all the Alerts Created for Managed Objects of type "Application Server ABAP with a Drilldown on "Managed Object Name".

It is important to select the DAILY resolution as this DP doesn't support HOURLY (or less).
{
"format": "time_series",
"timestampFormat": "unix",
"timeRange": {
"semantic": "C2D",
"from": "20230612143536",
"to": "20230614143536"
},
"resolution": "D",
"timezone": "+02:00",
"queries": [
{
"name": "",
"provider": "DP_ALERT",
"columns": {
"dimensions": [],
"metrics": []
},
"filters": [
{
"key": "KPI_NAME",
"values": [
"ALERTS_CREATED"
]
},
{
"key": "CONTEXT_TYPE",
"values": [
"ABAP"
]
},
{
"key": "DRILLDOWN",
"values": [
"MO_NAME"
]
}
]
}
]
}

 

Response:

 
[
[
{
"serieName": "AlertsCreated-ETX200",
"attributes": [
{
"key": "DRILLDOWN",
"value": "MO_NAME"
},
{
"key": "MO_TYPE",
"value": "ABAP"
},
{
"key": "USE_CASE",
"value": ""
},
{
"key": "CATEGORY",
"value": ""
},
{
"key": "RATING",
"value": ""
},
{
"key": "DRILLDOWN",
"value": "ETX200"
}
],
"dataPoints": [
[
1.00,
1686693600000
]
]
},
{
"serieName": "AlertsCreated-FSTTMO",
"attributes": [
{
"key": "DRILLDOWN",
"value": "MO_NAME"
},
{
"key": "MO_TYPE",
"value": "ABAP"
},
{
"key": "USE_CASE",
"value": ""
},
{
"key": "CATEGORY",
"value": ""
},
{
"key": "RATING",
"value": ""
},
{
"key": "DRILLDOWN",
"value": "FSTTMO"
}
],
"dataPoints": [
[
3.00,
1686693600000
],
[
12.00,
1686607200000
]
]
},
{
"serieName": "AlertsCreated-FADTMO",
"attributes": [
{
"key": "DRILLDOWN",
"value": "MO_NAME"
},
{
"key": "MO_TYPE",
"value": "ABAP"
},
{
"key": "USE_CASE",
"value": ""
},
{
"key": "CATEGORY",
"value": ""
},
{
"key": "RATING",
"value": ""
},
{
"key": "DRILLDOWN",
"value": "FADTMO"
}
],
"dataPoints": [
[
10.00,
1686693600000
]
]
},
{
"serieName": "AlertsCreated-ABDTMO",
"attributes": [
{
"key": "DRILLDOWN",
"value": "MO_NAME"
},
{
"key": "MO_TYPE",
"value": "ABAP"
},
{
"key": "USE_CASE",
"value": ""
},
{
"key": "CATEGORY",
"value": ""
},
{
"key": "RATING",
"value": ""
},
{
"key": "DRILLDOWN",
"value": "ABDTMO"
}
],
"dataPoints": [
[
3.00,
1686607200000
],
[
3.00,
1686520800000
]
]
},
{
"serieName": "AlertsCreated-ABDADM",
"attributes": [
{
"key": "DRILLDOWN",
"value": "MO_NAME"
},
{
"key": "MO_TYPE",
"value": "ABAP"
},
{
"key": "USE_CASE",
"value": ""
},
{
"key": "CATEGORY",
"value": ""
},
{
"key": "RATING",
"value": ""
},
{
"key": "DRILLDOWN",
"value": "ABDADM"
}
],
"dataPoints": [
[
8.00,
1686693600000
],
[
12.00,
1686607200000
],
[
3.00,
1686520800000
]
]
},
{
"serieName": "AlertsCreated-AAXTMO",
"attributes": [
{
"key": "DRILLDOWN",
"value": "MO_NAME"
},
{
"key": "MO_TYPE",
"value": "ABAP"
},
{
"key": "USE_CASE",
"value": ""
},
{
"key": "CATEGORY",
"value": ""
},
{
"key": "RATING",
"value": ""
},
{
"key": "DRILLDOWN",
"value": "AAXTMO"
}
],
"dataPoints": [
[
7.00,
1686693600000
]
]
}
]
]

Please remember you can use a POST on  /sap/frun/fi/dp/providers/filters to get the list of filter values using this payload:

 
{
"providerName":"DP_ALERT", "providerVersion":""
}

 

Response

 
[
{
"key": "CONTEXT_TYPE",
"name": "Managed Object Type",
"description": "",
"isAttribute": true,
"type": "attribute",
"values": [
{
"key": "ABAP",
"label": "Application Server ABAP"
},
{
"key": "RCA_JOB",
"label": "Background Job"
},
{
"key": "NETWORK",
"label": "Customer Network"
},
{
"key": "DBMS",
"label": "Database"
},
{
"key": "DBINSTANCE",
"label": "Database Instance"
},
{
"key": "DBCLUSTER",
"label": "Database Replication Group"
},
{
"key": "EXT_SERV",
"label": "External Service"
},
{
"key": "EXT_SRV",
"label": "External Service"
},
{
"key": "FIREWALL",
"label": "Firewall"
},
{
"key": "SCENARIO",
"label": "Generic Managed Object Type"
},
{
"key": "HOST",
"label": "Host (Server)"
},
{
"key": "ABAP_H",
"label": "Job Monitoring"
},
{
"key": "RCA_OPEN_K",
"label": "OpenKPI Sender"
},
{
"key": "HANADB",
"label": "SAP HANA Database"
},
{
"key": "SUM_SCRIPT",
"label": "SUM Scenario"
},
{
"key": "TECHN_COMP",
"label": "Technical Component"
},
{
"key": "INSTANCE",
"label": "Technical Instance"
},
{
"key": "T_SYSTEM",
"label": "Technical System"
},
{
"key": "DBTENANT",
"label": "Tenant Database Instance"
},
{
"key": "TEST_MOT",
"label": "Test managed object type"
},
{
"key": "UNSPECIFIC",
"label": "Unspecified Managed Object"
},
{
"key": "RUM Group",
"label": "User Request Group"
}
],
"isMultiple": null,
"triggerRefresh": true,
"group": "Scope Selection"
},
{
"key": "TECHSCEN",
"name": "Monitoring Use Case",
"description": "",
"isAttribute": true,
"type": "attribute",
"values": [
{
"key": "CSA",
"label": "Configuration & Security Analysis"
},
{
"key": "ADVMON",
"label": "Health Monitoring"
},
{
"key": "AIM",
"label": "Integration & Cloud Monitoring"
},
{
"key": "JOB_A_MON",
"label": "Job & Automation Monitoring"
},
{
"key": "JOBMON",
"label": "Job Monitoring"
},
{
"key": "NETMON",
"label": "Network Monitoring"
},
{
"key": "RUM",
"label": "Real User Monitoring"
},
{
"key": "SELF_MON",
"label": "Self Monitoring"
},
{
"key": "SUM",
"label": "Synthetic User Monitoring"
},
{
"key": "RCA",
"label": "System Analysis"
},
{
"key": "T_SYS_MON",
"label": "Technical System Monitoring"
},
{
"key": "TEST_MON",
"label": "Test for Monitoring Infrastructure"
}
],
"isMultiple": null,
"triggerRefresh": true,
"group": "Scope Selection"
},
{
"key": "KPI_NAME",
"name": "KPI",
"description": "",
"isAttribute": true,
"type": "attribute",
"values": [
{
"key": "ALERTS_CREATED",
"label": "Alerts Created"
},
{
"key": "ALERTS_CONFIRMED",
"label": "Confirmed Alerts"
}
],
"isMultiple": null,
"triggerRefresh": null,
"group": "Alert KPI"
},
{
"key": "CATEGORY",
"name": "Category",
"description": "",
"isAttribute": true,
"type": "attribute",
"values": [
{
"key": "AVAIL",
"label": "Availability"
},
{
"key": "PERFORM",
"label": "Performance"
},
{
"key": "EXCEPTION",
"label": "Exceptions"
},
{
"key": "CONFIGURE",
"label": "Configuration"
},
{
"key": "SELFMON",
"label": "Self-Monitoring"
}
],
"isMultiple": null,
"triggerRefresh": null,
"group": "Filters"
},
{
"key": "RATING",
"name": "Current Rating",
"description": "",
"isAttribute": true,
"type": "attribute",
"values": [
{
"key": "3",
"label": "Critical"
},
{
"key": "2",
"label": "Warning"
},
{
"key": "1",
"label": "Okay"
},
{
"key": "0",
"label": "Unknown"
}
],
"isMultiple": null,
"triggerRefresh": null,
"group": "Filters"
},
{
"key": "DRILLDOWN",
"name": "Drilldown",
"description": "",
"isAttribute": true,
"type": "attribute",
"values": [
{
"key": "ALERT_NAME",
"label": "Alert Name"
},
{
"key": "CATEGORY",
"label": "Category"
},
{
"key": "CURRENT_RATING",
"label": "Current Rating"
},
{
"key": "CUST_NETWORK",
"label": "Customer network"
},
{
"key": "MO_NAME",
"label": "Managed Object Name"
},
{
"key": "SYS_TYPE",
"label": "System Type"
}
],
"isMultiple": null,
"triggerRefresh": true,
"group": "Drilldown"
}
]

 

Best Regards,

 

Andrea
Pieter-O
Newcomer
0 Kudos

Hi Xavier

Thanks for the info above.

We have issues accessing the Data Providers, the correct Service is activated in SICF (/sap/frun/fi/dp) and a test for the service returns '200 - OK'.

However when trying to access any DP (eg DP_SYSMON) after calling the cUrl, we get '404 Not Found'.  

Are any additional steps required to activate / expose the Data Providers for AAI?  (Apart from executing the AAI Use Case via STC01)

Thanks