Waiting for engine...
Skip to main content

API Management Metrics

API Management Metrics services collect the metadata of API calls through the API Gateway or the Web Services Server and allows you to retrieve the data using a GraphQL client. Metrics services return information such as the count of calls per API, successful API requests, popular authentication types for APIs, and the quota status of a subscribed API.

Boomi retains metrics data for 540 days. If you require usage for a longer period of time, back up data as necessary.

If you have multi-node Gateways, runtime clusters, or Clouds, you can add the following to enable the Working Data Local Storage Directory: com.boomi.container.localDir

note

If the working data local storage directory is not configured, events are reported in <base_dir>/<localhost_id>/events.

note

Ensure that there is sufficient disk space available. Metrics requires approximately 1 KB per request, per day. Files roll over each day and removed when not needed.

Endpoint

https://api.boomi.com/graphql

Metrics Data Locations

Metrics data locations:

  • For Runtimes, the metrics data is written to the <installation>/events directory.
  • For Gateways, runtime clusters, and Clouds, the metrics data is written to the <local dir>/events directory.
note

You may need to verify that your network security settings are not blocking metrics reporting. Runtimes and Gateways hit the following endpoints for metrics reporting:

  • wss://atom.boomi.com/service/runtime-events/receiver
  • https://atom.boomi.com/service/runtime-events/receiver/1/process

Configure Metrics Data

All of the following properties can be configured on the Gateway or the container property.

Maximum File Size

You can configure the maximum file size for metrics events files. The default is 1 GB (1073741824 bytes) by default for Gateways and 4MB (4194304 bytes) for Runtimes. The value of this property must be defined in bytes.

  • For Gateways, configure the com.boomi.container.apigateway.metrics.maxFileSize container property.

  • For Runtimes, configure the com.boomi.container.sharedServer.http.metrics.maxFileSize container property.

Event Rollover Time

You can configure the event rollover time for Gateways and Runtimes. By default, this is set at six hours but can be changed to 24 hours or less.

  • For Gateways, configure the com.boomi.container.apigateway.metrics.maxFileAge container property.
  • For Runtimes, configure the com.boomi.container.sharedServer.http.metrics.maxFileAge container property.

404 Errors

You can configure if 404 errors are captured for metrics data. By default, this is set to false.

  • For Gateways, set the com.boomi.container.apigateway.metrics.reportNotFound container property to true.
  • For Runtimes, set the com.boomi.container.sharedServer.http.metrics.reportNotFound container property to true.

Event File Flushing

You can configure when an event file is flushed to disk. This is useful for low-traffic Runtimes or Gateways that are running on Windows. The default is 0, which means that flushing will be delegated to the OS. For example, if you set this property to 10, it would take a maximum of 10 events before the events are flushed to the disk and can then be reported and viewed in the metrics dashboard.

  • For Gateways, configure the com.boomi.container.apigateway.metrics.flushAfterEvents container property.
  • For Runtimes, configure the com.boomi.container.sharedServer.http.metrics.flushAfterEvents container property.

Query Syntax

There are two queries for API Management metrics:

  • deployedApiCallDetail: This query returns API request details that match the filters in the input object. 1000 results are returned by default and this is not configurable. If additional records exist, it populates the nextRequestTs and nextTransactionID fields in the return object.

    deployedApiCallDetail(input: DeployedApiCallDetailInput!): DeployedApiCallDetail!
  • deployedApiCallSummary: Returns grouped and aggregated API request info as specified by the request fields and applies the filters specified in the input object. You can optionally provide a field named TimeInterval for grouping data. TimeInterval should be given in a way such that the records can be grouped into 1000 or less groups.

    deployedApiCallSummary(input: DeployedApiCallSummaryInput!): DeployedApiCallSummary!

Using the filter attribute

You cannot filter the following fields from the platform:

  • Gateway
  • Runtime
  • deployedApi

To filter by API Key, use:

filter: "client.subscription.apiKeyId = 'f1xxxx77-fxxc-4e19-b144-6efxxxxxxxf6e' "

To filter using the like operator, use:

filter: "requestUrl like '%8077/wS%'"
note

The like operator does not work for date and can filter for string values only. Use >, < , and = to search.

On this Page