Extracting a monitoring profile by using the administration REST API

You can use the IBM® App Connect Enterprise administration REST API to extract monitoring profiles of message flows that are running in applications and in integration solutions that have been developed by using the REST API or integration services.

Before you begin

Read the following topics:

About this task

The examples in this topic are based on the following resources:
  • An application: MonitoringApp
  • Message flows packaged with the application: MonitoringAppFlow1 and MonitoringAppFlow2
  • A library associated with the application: Monitoring Lib
  • A message flow in the library: MonitoringLibFlow
as shown in this example Integration Explorer pane excerpt:
The diagram shows a deployment topography that includes an application, 2 message flows that are packaged with the application, a library that is associated with the application, and a message flow that is in the library

Extracting the monitoring profile of a message flow in an application

Procedure

You can extract the monitoring profile of a message flow in an application.

  • For an independent integration server:
    POST http://hostname:port/apiv2/applications/applicationName/messageflows/messageflowName/extract-monitoring-profile

    For example, to extract the monitoring profile of the message flow MonitoringAppFlow1, use the following curl command:

    curl -X POST http://hostname:port/apiv2/applications/MonitoringApp/messageflows/MonitoringAppFlow1/extract-monitoring-profile
    A response similar to the following is returned:
    {
        "MonitoringProfile": {
            "HTTP Input.transaction.Start": {
                "bitstreamData": [
                    {
                        "Content": "none",
                        "Encoding": "none"
                    }
                ],
                "eventFilter": [
                    {
                        "Text": "true()",
                        "isXPath": true
                    }
                ],
                "eventName": [
                    {
                        "Text": "HTTP Input.TransactionStart",
                        "isXPath": false
                    }
                ],
                "eventType": "Transaction start"
            }
        }
    }
    

    If the message flow is in a library:

    POST http://hostname:port/apiv2/applications/applicationName/libraries/libraryName/messageflows/messageflowName/extract-monitoring-profile

    For example, to extract the monitoring profile of the message flow MonitoringLibFlow, use the following curl command:

    curl -X POST http://hostname:port/apiv2/applications/MonitoringApp/libraries/MonitoringLib/messageflows/MonitoringLibFlow/extract-monitoring-profile
    A response similar to the following is returned:
    {
        "MonitoringProfile": {
            "HTTP Input.transaction.Start": {
                "bitstreamData": [
                    {
                        "Content": "none",
                        "Encoding": "none"
                    }
                ],
                "eventFilter": [
                    {
                        "Text": "true()",
                        "isXPath": true
                    }
                ],
                "eventName": [
                    {
                        "Text": "HTTP Input.TransactionStart",
                        "isXPath": false
                    }
                ],
                "eventType": "Transaction start"
            },
            "HTTP Input.transaction.End": {
                "bitstreamData": [
                    {
                        "Content": "none",
                        "Encoding": "none"
                    }
                ],
                "eventFilter": [
                    {
                        "Text": "true()",
                        "isXPath": true
                    }
                ],
                "eventName": [
                    {
                        "Text": "HTTP Input.TransactionEnd",
                        "isXPath": false
                    }
                ],
                "eventType": "Transaction end"
            },
            "HTTP Reply.terminal.in": {
                "bitstreamData": [
                    {
                        "Content": "none",
                        "Encoding": "none"
                    }
                ],
                "eventFilter": [
                    {
                        "Text": "true()",
                        "isXPath": true
                    }
                ],
                "eventName": [
                    {
                        "Text": "HTTP Reply.InTerminal",
                        "isXPath": false
                    }
                ],
                "eventType": "In terminal"
            }
        }
    }
    
  • For an integration server that is managed by an integration node:
    POST http://hostname:port/apiv2/servers/integrationServerName/applications/applicationName/messageflows/messageflowName/extract-monitoring-profile

    For example, to extract the monitoring profile of the message flow MonitoringAppFlow1 that is deployed on integration server ACESERV1, use the following curl command:

    curl -X POST http://hostname:port/apiv2/servers/ACESERV1/applications/MonitoringApp/messageflows/MonitoringAppFlow1/extract-monitoring-profile

    If the message flow is in a library:

    POST http://hostname:port/apiv2/servers/integrationServerName/applications/applicationName/libraries/libraryName/messageflows/messageflowName/extract-monitoring-profile

    For example, to extract the monitoring profile of the message flow MonitoringLibFlow that is deployed on integration server ACESERV1, use the following curl command:

    curl -X POST http://hostname:port/apiv2/servers/ACESERV1/applications/MonitoringApp/libraries/MonitoringLib/messageflows/MonitoringLibFlow/extract-monitoring-profile

    If the command is successful, an HTTP status code 200 is returned.

Extracting the monitoring profile of a message flow in a REST API integration solution

Procedure

You can extract the monitoring profile of a message flow in a REST API integration solution.

  • For an independent integration server:
    POST http://hostname:port/apiv2/rest-apis/rest-apiName/messageflows/messageflowName/extract-monitoring-profile

    If the message flow is in a library:

    POST http://hostname:port/apiv2/rest-apis/rest-apiName/libraries/libraryName/messageflows/messageflowName/extract-monitoring-profile
  • For an integration server that is managed by an integration node:
    POST http://hostname:port/apiv2/servers/integrationServerName/rest-apis/rest-apiName/messageflows/messageflowName/extract-monitoring-profile

    If the message flow is in a library:

    POST http://hostname:port/apiv2/servers/integrationServerName/rest-apis/rest-apiName/libraries/libraryName/messageflows/messageflowName/extract-monitoring-profile

    If the command is successful, an HTTP status code 200 is returned.

Extracting the monitoring profile of a message flow in an integration services integration solution

Procedure

You can extract the monitoring profile of a message flow in an integration services integration solution.

  • For an independent integration server:
    POST http://hostname:port/apiv2/services/integrationServiceName/messageflows/messageflowName/extract-monitoring-profile

    If the message flow is in a library:

    POST http://hostname:port/apiv2/services/integrationServiceName/libraries/libraryName/messageflows/messageflowName/extract-monitoring-profile
  • For an integration server that is managed by an integration node:
    POST http://hostname:port/apiv2/servers/integrationServerName/services/integrationServiceName/messageflows/messageflowName/extract-monitoring-profile

    If the message flow is in a library:

    POST http://hostname:port/apiv2/servers/integrationServerName/services/integrationServiceName/libraries/libraryName/messageflows/messageflowName/extract-monitoring-profile

    If the command is successful, an HTTP status code 200 is returned.