You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/pages/references/configuration.mdx
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -41,6 +41,7 @@ Global configurations are provided through env variables or a YAML file. ConfigM
41
41
|`AZURE_SERVICEBUS_RESOURCE_GROUP`| Azure resource group name |`nil`| Yes |
42
42
|`AZURE_SERVICEBUS_SUBSCRIPTION_ID`| Azure subscription ID |`nil`| Yes |
43
43
|`AZURE_SERVICEBUS_TENANT_ID`| Azure Active Directory tenant ID |`nil`| Yes |
44
+
|`DELIVERY_IDEMPOTENCY_KEY_TTL`| Time-to-live in seconds for delivery queue idempotency keys. Controls how long processed deliveries are remembered to prevent duplicate delivery attempts. Default: 86400 (24 hours). |`86400`| No |
44
45
|`DELIVERY_MAX_CONCURRENCY`| Maximum number of delivery attempts to process concurrently. |`1`| No |
45
46
|`DELIVERY_TIMEOUT_SECONDS`| Timeout in seconds for HTTP requests made during event delivery to webhook destinations. |`5`| No |
46
47
|`DEPLOYMENT_ID`| Optional deployment identifier for multi-tenancy. Enables multiple deployments to share the same infrastructure while maintaining data isolation. |`nil`| No |
@@ -105,6 +106,7 @@ Global configurations are provided through env variables or a YAML file. ConfigM
105
106
|`PUBLISH_GCP_PUBSUB_SERVICE_ACCOUNT_CREDENTIALS`| JSON string or path to a file containing GCP service account credentials for the Pub/Sub publish topic. Required if GCP Pub/Sub is chosen and not using implicit credentials. |`nil`| Conditional |
106
107
|`PUBLISH_GCP_PUBSUB_SUBSCRIPTION`| Name of the GCP Pub/Sub subscription to read published events from. Required if GCP Pub/Sub is the chosen publish MQ provider. |`nil`| Conditional |
107
108
|`PUBLISH_GCP_PUBSUB_TOPIC`| Name of the GCP Pub/Sub topic for publishing events. Required if GCP Pub/Sub is the chosen publish MQ provider. |`nil`| Conditional |
109
+
|`PUBLISH_IDEMPOTENCY_KEY_TTL`| Time-to-live in seconds for publish queue idempotency keys. Controls how long processed events are remembered to prevent duplicate processing. Default: 86400 (24 hours). |`86400`| No |
108
110
|`PUBLISH_MAX_CONCURRENCY`| Maximum number of messages to process concurrently from the publish queue. |`1`| No |
109
111
|`PUBLISH_RABBITMQ_EXCHANGE`| Name of the RabbitMQ exchange for the publish queue. |`nil`| No |
110
112
|`PUBLISH_RABBITMQ_QUEUE`| Name of the RabbitMQ queue for publishing events. Required if RabbitMQ is the chosen publish MQ provider. |`nil`| Conditional |
@@ -166,6 +168,9 @@ alert:
166
168
# Enables or disables audit logging for significant events.
167
169
audit_log: true
168
170
171
+
# Time-to-live in seconds for delivery queue idempotency keys. Controls how long processed deliveries are remembered to prevent duplicate delivery attempts. Default: 86400 (24 hours).
172
+
delivery_idempotency_key_ttl: 86400
173
+
169
174
# Maximum number of delivery attempts to process concurrently.
170
175
delivery_max_concurrency: 1
171
176
@@ -451,6 +456,9 @@ portal:
451
456
# Required: Y
452
457
postgres: ""
453
458
459
+
# Time-to-live in seconds for publish queue idempotency keys. Controls how long processed events are remembered to prevent duplicate processing. Default: 86400 (24 hours).
460
+
publish_idempotency_key_ttl: 86400
461
+
454
462
publishmq:
455
463
# Configuration for using AWS SQS as the publish message queue. Only one publish MQ provider should be configured.
Copy file name to clipboardExpand all lines: internal/config/config.go
+6Lines changed: 6 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -83,6 +83,10 @@ type Config struct {
83
83
MaxDestinationsPerTenantint`yaml:"max_destinations_per_tenant" env:"MAX_DESTINATIONS_PER_TENANT" desc:"Maximum number of destinations allowed per tenant/organization." required:"N"`
84
84
DeliveryTimeoutSecondsint`yaml:"delivery_timeout_seconds" env:"DELIVERY_TIMEOUT_SECONDS" desc:"Timeout in seconds for HTTP requests made during event delivery to webhook destinations." required:"N"`
85
85
86
+
// Idempotency
87
+
PublishIdempotencyKeyTTLint`yaml:"publish_idempotency_key_ttl" env:"PUBLISH_IDEMPOTENCY_KEY_TTL" desc:"Time-to-live in seconds for publish queue idempotency keys. Controls how long processed events are remembered to prevent duplicate processing. Default: 86400 (24 hours)." required:"N"`
88
+
DeliveryIdempotencyKeyTTLint`yaml:"delivery_idempotency_key_ttl" env:"DELIVERY_IDEMPOTENCY_KEY_TTL" desc:"Time-to-live in seconds for delivery queue idempotency keys. Controls how long processed deliveries are remembered to prevent duplicate delivery attempts. Default: 86400 (24 hours)." required:"N"`
89
+
86
90
// Destination Registry
87
91
DestinationMetadataPathstring`yaml:"destination_metadata_path" env:"DESTINATION_METADATA_PATH" desc:"Path to the directory containing custom destination type definitions. Overrides 'destinations.metadata_path' if set." required:"N"`
0 commit comments