Skip to main content
Version: NG-2.13

AWS API Gateway

Introduction

Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the "front door" for applications to access data, business logic, or functionality from backend services.

Getting Started

Compatibility

vuSmartMaps supports monitoring HTTP and REST APIs in your AWS API Gateway

Data Collection Method

vuSmartMaps collects AWS API Gateway data using an internal data collector. This agent collects data based on the source configuration.

Prerequisites

Dependent Configuration

To configure this O11ySource, create a 'credential' of type 'aws' under the 'Definition' tab.

Inputs for Configuring Data Source

  • API Gateway Name: The API gateway name to uniquely identify the source.
  • AWS Region: AWS Region where the instance of this component is running. For eg: Asia Pacific (Mumbai), the region would be ap-south-1.
  • AWS Credential: AWS credential that provides Access key and Secret key to access Cloudwatch.
  • Period (in minutes): Specifies the interval in minutes at which data is collected. Data collection occurs once every specified period. The period should be between 1 - 60 minutes.

Firewall Requirement

To collect data from this O11ySource, ensure the following ports are opened:

Source IPDestination IPDestination PortProtocolDirection
vuSmartMaps IPAWS CloudWatch IPs443*TCPOutbound

*Before providing the firewall requirements, please update the port based on the customer environment.

Configuring the Target

Health and Performance metrics of AWS API Gateway is collected through AWS CloudWatch Service. So AWS CloudWatch services must be enabled in your AWS account. AWS API Gateway should have APIs configured for which monitoring is enabled. Please enable detailed metrics if you want to see resource and method level metrics for HTTP APIs.

An IAM role or user with the following permissions is required to access CloudWatch metrics.

  • cloudwatch:GetMetricData
  • cloudwatch:ListMetrics

Configuration Steps

  • Enable the AWS API Gateway O11ySource.
  • Select the sources tab and press the + button to add a new instance that has to be monitored.
  • Provide the required configurations:
  • *Source Name
  • *AWS Region
  • *Credential
  • *Period
  • Click Save to close the data source window.

Metrics Collected

NameDescriptionData Type
Total RequestsTotal number of requestsUInt64
Total 4XX ErrorTotal No of client-side errors for HTTP APIs for the given time period.UInt64
Total 5XX ErrorTotal number of server-side errors for HTTP APIsUInt64
Total 4XX ErrorTotal No of client-side errors for REST APIs for the given time period.UInt64
Total 5XX ErrorTotal number of server-side errors for REST APIs.UInt64
Total cache Hit CountThe total number of requests served from the API cache. This is available for REST APIs.UInt64
Total cache Miss CountThe total number of requests served from the back end. This is available for REST APIs.UInt64
Maximum Integration LatencyThe maximum time between when API Gateway relays a request to the back end and when it receives a response from the back end.Float64
Average Integration LatencyThe average time between when API Gateway relays a request to the back end and when it receives a response from the back end.Float64
Maximum LatencyThe maximum time between when requests are received and when responses are returned.Float64
Average LatencyThe time between when API Gateway receives a request from a client and when it returns a response to the client. The latency includes the integration_latency and other API Gateway overhead.Float64
DataProcessedThe total amount of data processed in bytes. This is available for HTTP and Web Socket APIsUInt64
TimestampTime the data is generated in the target machineDateTime64
targetTarget - Could be API_Id or API_NameString
targetHost - Data collection hostString
Tenant IdTenant IdLowCardinality(String)
BU IdBU IdLowCardinality(String)
Document TypeDocument TypeLowCardinality(String)
API NameAPI NameString
API IdAPI IdString
RegionAWS RegionLowCardinality(String)
ResourceResource URI in HTTP API.String
HTTP MethodHTTP Method configured for the HTTP API for which request came in.String