Elasticsearch

The runtime events and metrics payload generated by webMethods API Gateway at run-time is published to the configured Elasticsearch destination. The columns that make up the events and metrics data model for Elasticsearch are listed.

Transactional Events

Column Description
apiId The unique identifier for the API. Example: af70b2de-c9c5-4f40-94be-7d8622743e42
apiName Name of the API in which the event occurred. Example: SampleAPI
apiVersion The system-assigned version identifier for the API. Example: 1.0
applicationId The unique identifier for the application associated with the API invocation. Example: c0f84954-9732-11e5-b9f4-f159eafe47b2
applicationIp IP address of the application associated with the API invocation. Example: 10.60.37.42
applicationName Name of the application associated with the API invocation. An application name is populated as unknown when webMethods API Gateway is unable to identify the application using a security policy that is configured for the API. Example: SampleApplication
cachedResponse Indicates whether the response is sent to the client from the cached data present in webMethods API Gateway through the Service result caching policy or the response is received from Native service and sent to client. Possible values are: Cached, Not-Cached
correlationID The unique identifier that is automatically generated for every request coming to webMethods API Gateway and can be used to query the log. Example: MED38e9cfa4-2348-408b-9462-124b2181c1a6:656
isCallbackRequest Indicates whether the event is generated for a callback request. Possible values are:
  • true. This denotes that the event is generated for a callback request.
  • false. This denotes that the event is generated for a normal response.
creationDate Date and time when the event was generated in webMethods API Gateway. Example: 1501671101509
customFields The custom fields an API Provider can provide to log a new field and value for a transaction event. Example: {"customfield":"customvalue"}
errorOrigin The origin of error. Example: Nativeservice
eventType The type of event that occurred. Example: Transactional
externalCalls List the external calls from webMethods API Gateway. These external calls can be to a native service or service registry. Example: [{"externalCallType":"SERVICE_REGISTRY_CALL","externalURL":"http://service.registry.com","callDuration":49,"callStartTime":1562244570486,"callEndTime":1562244570535,"responseCode": "200"},{"externalCallType":"NATIVE_SERVICE_CALL","externalURL":"https://petstore.swagger.io/v2/store/inventory","callDuration":1285,"callStartTime":1562244569252,"callEndTime":1562244570537,"responseCode":"200"}]
httpMethod The HTTP method used to invoke the API. For example, GET
messageType This is applicable only for WebSocket APIs. This indicates the type of a WebSocket message. Possible values are binary, text
nativeHttpMethod The HTTP method used to invoke the native service. For example, GET.
nativeRequestHeaders Request header in the incoming request from the webMethods API Gateway to native service. For example, {"Authorization":"**************","Accept": "*/*","Authorization": "**************", "Accept":"*/*","Cache-Control": "no-cache","User-Agent": "PostmanRuntime/7.13.0","Postman-Token":"381424fa-e3b3-4058-8df9-4abf9d72c899", "postmanHeader": "hello","accept-encoding": "gzip, deflate", "Content-Type": "application/x-www-form-urlencoded"}
nativeReqPayload The native service request data. For example, {"param1" : "value1", "param2" : 10}
nativeResponseHeaders Response header in the outgoing response from the native service to API Gateway. For example, {"Server":"Jetty(9.2.9.v20150224)","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods": "GET, POST, DELETE,PUT","Connection":"close","Date": "Fri, 07 Jun 2019 12:44:13 GMT","Access-Control-Allow-Headers": "Content-Type,api_key, Authorization","Content-Type": "application/json"}
nativeResPayload The native service response data. For example, {"id":2,"category":{ "id":2, "name":"string"},"name":"pysen","photoUrls":["string"],"tags":[{"id":0, name":"string"}],"status":"available"}
nativeURL URL of the native service. For example, http://petstore.swagger.io/v2/pet/2
operationName Name of the API operation that is invoked. For example, /pet/{petId}
origin This is applicable only for WebSocket APIs. The origin of the request. Possible values are client, server
packageId The unique identifier for the API package. For example, c0f84954-9732-11e5-b9f4-f159eafe47b2
packageName Name of the API package. For example, Travel Package
planId The unique identifier for the API plan. For example, d0f84954-9732-11e5-b9f4-f159eafe47b2
planName Name of the API plan. For example, Gold Plan
providerTime Time in milliseconds required for webMethods API Gateway to invoke a native provider and receive a response. This time includes the overhead incurred by webMethods API Gateway. Overhead includes the time it takes for a provider to process a request and return a response, plus any network latency to or from the provider. Subtracting total time from provider time must give a rough indicator of the webMethods API Gateway overhead. For example, 1367
queryParameteres This is applicable only for REST APIs. Query parameters present in the incoming REST request. For example, {"status":"available"}
reqPayload The API request payload data. For example, <RequestPayload>
requestHeaders Request header in the incoming request from the client. Example: {"Cache-Control":"max-age=0","Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","Upgrade-Insecure-Requests":"1","Connection":"keep-alive","User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36","Host":"mcdaso02:5555","Accept-Encoding":"gzip, deflate","Accept-Language":"en-US,en;q=0.9,ta;q=0.8","Content-Type":"application/x-www-form-urlencoded"}
resPayload The API response payload data. For example, <ResponsePayload>
responseCode The HTTP response status code that indicates success or failure of the requested operation. Example: 404
responseHeaders Response header in the outgoing response. For example, {"Server":"Jetty(9.2.9.v20150224)","Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, DELETE, PUT","Connection":"close","Date":"Fri, 30 Mar 2018 08:25:45 GMT","Access-Control-Allow-Headers":"Content-Type, api_key, Authorization","Content-Type":"application/xml"}
serverID The webMethods API Gateway server on which the transaction event occurred. This column is currently not used. It appears as NULL or as an empty string. For example, SampleHost:80
sourceGatewayDetails Details of events generated only from Microgateway. The details include Microgateway Id, Source Gateway Host, Source Gateway Port, Source Gateway Version, Microgateway pool.
sourceGatewayNode Source webMethods API Gateway's IP address. For example, 10.0.75.1
sourceGateway Source of event generation. Possible values are APIGateway or Microgateway.
status Status of the API request. Possible values are SUCCESS, FAILURE
totalDataSize The total combined size of request and response payloads in bytes. For example, 51
totalTime Time in milliseconds required to invoke the API provider. This time includes the overhead incurred by webMethods API Gateway. Overhead includes security overhead for encryption, decryption, and load-balance retries. For example, 1401

Error Events

Column Description
apiId The unique identifier for the API. For example, af70b2de-c9c5-4f40-94be-7d8622743e42
apiName Name of the API in which the event occurred. For example, SampleAPI
apiVersion The system-assigned version identifier for the API. For example, 1.0
applicationId The unique identifier for the application associated with the API invocation. For example, c0f84954-9732-11e5-b9f4-f159eafe47b2
applicationIp IP address of the application associated with the API invocation. For example, 10.60.37.42
applicationName Name of the application associated with the API invocation. An application name is populated as unknown when webMethods API Gateway is unable to identify the application using a security policy that is configured for the API. For example, SampleApplication
correlationID The unique identifier that is automatically generated for every request coming to webMethods API Gateway and can be used to query the log. For example, MED38e9cfa4-2348-408b-9462-124b2181c1a6:656
creationDate Date and time when the event was generated in webMethods API Gateway. For example, 1501671101509
errorDesc Message that describes the error that occurred. For example, Native service provider error. Code : 404
eventSource The source where the event occurred. For example, API_Gateway_Instance
eventType The type of event that occurred. For example, Error
httpMethod The HTTP method used to invoke the API. For example, GET
operationName Name of the API operation that is invoked.For example, /pet/{petId}
responseCode The HTTP response status code that indicates success or failure of the requested operation. For example, 404
sourceGatewayDetails Details of events generated only from Microgateway. The details include Microgateway Id, Source Gateway Host, Source Gateway Port, Source Gateway Version, Microgateway pool.
sourceGatewayNode Source webMethods API Gateway's IP address. For example, 10.0.75.1
sourceGateway Source of event generation. Possible values are APIGateway or Microgateway.

Monitoring Events

Column Description
alertDesc Text of the alert message sent to a configured destination when the performance conditions are violated. The alert message is specified in the policy definition of an API. For example, EnforcePolicy-HardLimit
alertSource Name of the webMethods API Gateway policy that generated the alert message. For example, Monitorpolicy
alertType The type of alert generated for the event. For example, Monitor
apiId The unique identifier for the API. For example, af70b2de-c9c5-4f40-94be-7d8622743e42
apiName Name of the API in which the event occurred. For example, SampleAPI
apiVersion The system-assigned version identifier for the API. For example, 1.0
applicationId The unique identifier for the application associated with the API invocation. For example, c0f84954-9732-11e5-b9f4-f159eafe47b2
applicationIp IP address of the application associated with the API invocation. For example, 10.60.37.42
applicationName Name of the application associated with the API invocation. An application name is populated as unknown when webMethods API Gateway is unable to identify the application using a security policy that is configured for the API. For example, SampleApplication
creationDate Date and time when the event was generated in webMethods API Gateway. For example, 1501671101509
eventSource The source where the event occurred. For example, API_Gateway_Instance
eventType The type of event that occurred. For example, Monitor
httpMethod The HTTP method used to request the API access. For example, GET
monitorAttr The monitored attribute which has breached the configured SLA. For example, AVGRESPONSETIME GT 1.0, SUCCESSCOUNT EQ 3, REQUESTCOUNT GT 10
operationName Name of the API operation that is invoked. For example, /pet/{petId}
responseCode The HTTP response status code that indicates success or failure of the requested operation. For example, 200
sourceGateway Source of event generation. Possible values are APIGateway or Microgateway.
sourceGatewayDetails Details of events generated only from Microgateway. The details include Microgateway Id, Source Gateway Host, Source Gateway Port, Source Gateway Version, Microgateway pool.

Policy Violation Events

Column Description
alertDesc Text of the alert message sent to a configured destination when the performance conditions are violated. The alert message is specified in the policy definition of an API. For example, A violation was detected for policy (Unknown-Policyuser ): application could not be identified. Anonymous access is not allowed for this service!
alertSource Name of the webMethods API Gateway policy that generated the alert message. For example, Unknown-Policy
alertType The type of alert generated for the event. For example, PolicyViolation
apiId The unique identifier for the API. For example, af70b2de-c9c5-4f40-94be-7d8622743e42
apiName Name of the API in which the event occurred. For example, SampleAPI
apiVersion The system-assigned version identifier for the API. For example, 1.0
applicationId The unique identifier for the application associated with the API invocation. For example, 9434e90d-65c3-4e37-8ccb-595b8df3e645
applicationIp IP address of the application associated with the API invocation. For example, 10.60.37.42
applicationName Name of the application associated with the API invocation. An application name is populated as unknown when webMethods API Gateway is unable to identify the application using a security policy that is configured for the API. For example, SampleApplication
creationDate Date and time when the event was generated in webMethods API Gateway. For example, 1501671101509
eventSource The source where the event occurred. For example, API_Gateway_Instance
eventType The type of event that occurred. For example, PolicyViolation
httpMethod The HTTP method used to request the API access. For example, GET
operationName Name of the API operation that is invoked. For example, /pet/{petId}
responseCode The HTTP response status code that indicates success or failure of the requested operation. For example, 503
sourceGateway Source of event generation. Possible values are APIGateway or Microgateway.
sourceGatewayDetails Details of events generated only from Microgateway. The details include Microgateway Id, Source Gateway Host, Source Gateway Port, Source Gateway Version, Microgateway pool.

Performance Metrics

Column Description
apiId The unique identifier for the API. For example, af70b2de-c9c5-4f40-94be-7d8622743e42
apiName Name of the API in which the event occurred. For example, SampleAPI
apiVersion The system-assigned version identifier for the API.For example, 1.0
availability The percentage of time that an API was available during the current interval. A value of 100 indicates that the API was always available. If invocations fail due to policy violations, this parameter could still be as high as 100. For example, 100.0
avgResponseTime The average amount of time it took the API to complete each invocation in the current interval. Response time is measured from the moment webMethods API Gateway receives the request until the moment it returns the response to the caller. For example, 1376
creationDate Date and time when the event was generated in webMethods API Gateway. For example, 1501671101509
eventType The type of event that occurred. For example, PerformanceData
faultCount The number of failed API invocations in the current interval. Example: 1
includeFaults Includes failed API invocations. Possible values are true, false
intervalStart The starting date and time from which you want to examine metrics. For example, 02 Aug 2017 10:51:31 GMT
intervalStop The ending date and time until which you want to examine metrics. For example, 02 Aug 2017 10:52:31 GMT
maxResponseTime The maximum amount of time (in milliseconds) it took for the API to complete an invocation in the current interval. For example, 1401
minResponseTime The minimum amount of time (in milliseconds) it took for the API to complete an invocation in the current interval. For example, 1352
sourceGatewayDetails Details of events generated only from Microgateway. The details include Microgateway Id, Source Gateway Host, Source Gateway Port, Source Gateway Version, Microgateway pool.
sourceGateway Source of event generation. Possible values are APIGateway or Microgateway.
operationName Name of the API operation that is invoked. For example, /pet/{petId}
successCount The number of successful API invocations in the current interval. For example, 1
totalCount The total number of API invocations (successful and unsuccessful) in the current interval. For example, 2