aws_api_gateway_method_settings
Provides an API Gateway Method Settings, e.g. logging or monitoring.
Example Usage
resource "aws_api_gateway_method_settings" "s" { rest_api_id = "${aws_api_gateway_rest_api.test.id}" stage_name = "${aws_api_gateway_stage.test.stage_name}" method_path = "${aws_api_gateway_resource.test.path_part}/${aws_api_gateway_method.test.http_method}" settings { metrics_enabled = true logging_level = "INFO" } } resource "aws_api_gateway_rest_api" "test" { name = "MyDemoAPI" description = "This is my API for demonstration purposes" } resource "aws_api_gateway_deployment" "test" { depends_on = ["aws_api_gateway_integration.test"] rest_api_id = "${aws_api_gateway_rest_api.test.id}" stage_name = "dev" } resource "aws_api_gateway_stage" "test" { stage_name = "prod" rest_api_id = "${aws_api_gateway_rest_api.test.id}" deployment_id = "${aws_api_gateway_deployment.test.id}" } resource "aws_api_gateway_resource" "test" { rest_api_id = "${aws_api_gateway_rest_api.test.id}" parent_id = "${aws_api_gateway_rest_api.test.root_resource_id}" path_part = "mytestresource" } resource "aws_api_gateway_method" "test" { rest_api_id = "${aws_api_gateway_rest_api.test.id}" resource_id = "${aws_api_gateway_resource.test.id}" http_method = "GET" authorization = "NONE" } resource "aws_api_gateway_integration" "test" { rest_api_id = "${aws_api_gateway_rest_api.test.id}" resource_id = "${aws_api_gateway_resource.test.id}" http_method = "${aws_api_gateway_method.test.http_method}" type = "MOCK" request_templates { "application/xml" = <<EOF { "body" : $input.json('$') } EOF } }
Argument Reference
The following arguments are supported:
-
rest_api_id
- (Required) The ID of the REST API -
stage_name
- (Required) The name of the stage -
method_path
- (Required) Method path defined as{resource_path}/{http_method}
for an individual method override, or*/*
for overriding all methods in the stage. -
settings
- (Required) The settings block, see below.
settings
-
metrics_enabled
- (Optional) Specifies whether Amazon CloudWatch metrics are enabled for this method. -
logging_level
- (Optional) Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The available levels areOFF
,ERROR
, andINFO
. -
data_trace_enabled
- (Optional) Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs. -
throttling_burst_limit
- (Optional) Specifies the throttling burst limit. -
throttling_rate_limit
- (Optional) Specifies the throttling rate limit. -
caching_enabled
- (Optional) Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. -
cache_ttl_in_seconds
- (Optional) Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. -
cache_data_encrypted
- (Optional) Specifies whether the cached responses are encrypted. -
require_authorization_for_cache_control
- (Optional) Specifies whether authorization is required for a cache invalidation request. -
unauthorized_cache_control_header_strategy
- (Optional) Specifies how to handle unauthorized requests for cache invalidation. The available values areFAIL_WITH_403
,SUCCEED_WITH_RESPONSE_HEADER
,SUCCEED_WITHOUT_RESPONSE_HEADER
.
© 2018 HashiCorpLicensed under the MPL 2.0 License.
https://www.terraform.io/docs/providers/aws/r/api_gateway_method_settings.html