diff --git a/README.md b/README.md
index 92b40d4..82e9734 100644
--- a/README.md
+++ b/README.md
@@ -185,6 +185,7 @@ No modules.
| [tags](#input\_tags) | A map of tags to add to all resources | `map(string)` | `{}` | no |
| [topic\_policy](#input\_topic\_policy) | An externally created fully-formed AWS policy as JSON | `string` | `null` | no |
| [topic\_policy\_statements](#input\_topic\_policy\_statements) | 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 | `any` | `{}` | no |
+| [tracing\_config](#input\_tracing\_config) | Tracing mode of an Amazon SNS topic. Valid values: PassThrough, Active. | `string` | `null` | no |
| [use\_name\_prefix](#input\_use\_name\_prefix) | Determines whether `name` is used as a prefix | `bool` | `false` | no |
## Outputs
diff --git a/examples/complete/main.tf b/examples/complete/main.tf
index 6a1ffd1..9f6997b 100644
--- a/examples/complete/main.tf
+++ b/examples/complete/main.tf
@@ -58,6 +58,7 @@ module "complete_sns" {
use_name_prefix = true
display_name = "complete"
kms_master_key_id = module.kms.key_id
+ tracing_config = "Active"
# SQS queue must be FIFO as well
fifo_topic = true
diff --git a/main.tf b/main.tf
index f9e0cbe..4efe304 100644
--- a/main.tf
+++ b/main.tf
@@ -19,6 +19,7 @@ resource "aws_sns_topic" "this" {
display_name = var.display_name
fifo_topic = var.fifo_topic
signature_version = var.fifo_topic ? null : var.signature_version
+ tracing_config = var.tracing_config
firehose_failure_feedback_role_arn = try(var.firehose_feedback.failure_role_arn, null)
firehose_success_feedback_role_arn = try(var.firehose_feedback.success_role_arn, null)
diff --git a/variables.tf b/variables.tf
index 485f2b7..ca5460d 100644
--- a/variables.tf
+++ b/variables.tf
@@ -128,6 +128,12 @@ variable "signature_version" {
default = null
}
+variable "tracing_config" {
+ description = "Tracing mode of an Amazon SNS topic. Valid values: PassThrough, Active."
+ type = string
+ default = null
+}
+
################################################################################
# Topic Policy
################################################################################
diff --git a/wrappers/main.tf b/wrappers/main.tf
index 88a6b19..448c9eb 100644
--- a/wrappers/main.tf
+++ b/wrappers/main.tf
@@ -19,6 +19,7 @@ module "wrapper" {
topic_policy = try(each.value.topic_policy, var.defaults.topic_policy, null)
sqs_feedback = try(each.value.sqs_feedback, var.defaults.sqs_feedback, {})
signature_version = try(each.value.signature_version, var.defaults.signature_version, null)
+ tracing_config = try(each.value.tracing_config, var.defaults.tracing_config, null)
create_topic_policy = try(each.value.create_topic_policy, var.defaults.create_topic_policy, true)
source_topic_policy_documents = try(each.value.source_topic_policy_documents, var.defaults.source_topic_policy_documents, [])
override_topic_policy_documents = try(each.value.override_topic_policy_documents, var.defaults.override_topic_policy_documents, [])