Managed Service for Prometheus
Terraform module to create AWS Managed Service for Prometheus (AMP) resources
Inputs
20
alert_manager_definitionoptionalstringThe alert manager definition that you want to be applied. See more in the [AWS Docs](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-alert-manager.html)
alertmanager_config: |
route:
receiver: 'default'
receivers:
- name: 'default'
cloudwatch_log_group_classoptionalstringSpecified the log class of the log group. Possible values are: `STANDARD` or `INFREQUENT_ACCESS`
nullcloudwatch_log_group_kms_key_idoptionalstringIf a KMS Key ARN is set, this key will be used to encrypt the corresponding log group. Please be sure that the KMS Key has an appropriate key policy (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)
nullcloudwatch_log_group_nameoptionalstringCustom name of CloudWatch log group for a service associated with the container definition
nullcloudwatch_log_group_retention_in_daysoptionalnumberNumber of days to retain log events. Set to `0` to keep logs indefinitely
30cloudwatch_log_group_use_name_prefixoptionalboolDetermines whether the log group name should be used as a prefix
falsecreateoptionalboolDetermines whether a resources will be created
truecreate_alert_manageroptionalboolControls whether an Alert Manager definition is created along with the AMP workspace
truecreate_resource_policyoptionalboolControls whether a resource policy is created along with the AMP workspace
truecreate_workspaceoptionalboolDetermines whether a workspace will be created or to use an existing workspace
truekms_key_arnoptionalstringThe ARN of the KMS Key to for encryption at rest
nulllimits_per_label_setoptionallist(object({ label_set = map(string) limits = object({ max_series = number }) }…Configuration block for setting limits on metrics with specific label sets
nulllogging_configurationoptionalobject({ create_log_group = optional(bool, true) log_group_arn = optional(string…The logging configuration of the prometheus workspace.
nullregionoptionalstringRegion where the resource(s) will be managed. Defaults to the Region set in the provider configuration
nullresource_policy_statementsoptionalmap(object({ sid = optional(string) actions = optional(list(string)) not_actions…A map of IAM policy [statements](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document#statement) for custom permission usage
nullretention_period_in_daysoptionalnumberNumber of days to retain metric data in the workspace
nullrule_group_namespacesoptionalmap(object({ name = string data = string }))A map of one or more rule group namespace definitions
nulltagsoptionalmap(string)A map of tags to add to all resources
{}workspace_aliasoptionalstringThe alias of the prometheus workspace. See more in the [AWS Docs](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-onboard-create-workspace.html)
nullworkspace_idoptionalstringThe ID of an existing workspace to use when `create_workspace` is `false`
""All 20 are optional — the module deploys with none of them set.
Outputs
3
workspace_arnAmazon Resource Name (ARN) of the workspace
workspace_idIdentifier of the workspace
workspace_prometheus_endpointPrometheus endpoint available for this workspace
What the agent wires into the next module. An edge on the architecture diagram is one of these consumed by something else.