pulumi-digitalocean 4.32.0a1726481189__py3-none-any.whl → 4.33.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-digitalocean might be problematic. Click here for more details.

@@ -0,0 +1,1035 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+
12
+ __all__ = ['DatabaseKafkaConfigArgs', 'DatabaseKafkaConfig']
13
+
14
+ @pulumi.input_type
15
+ class DatabaseKafkaConfigArgs:
16
+ def __init__(__self__, *,
17
+ cluster_id: pulumi.Input[str],
18
+ auto_create_topics_enable: Optional[pulumi.Input[bool]] = None,
19
+ group_initial_rebalance_delay_ms: Optional[pulumi.Input[int]] = None,
20
+ group_max_session_timeout_ms: Optional[pulumi.Input[int]] = None,
21
+ group_min_session_timeout_ms: Optional[pulumi.Input[int]] = None,
22
+ log_cleaner_delete_retention_ms: Optional[pulumi.Input[int]] = None,
23
+ log_cleaner_min_compaction_lag_ms: Optional[pulumi.Input[str]] = None,
24
+ log_flush_interval_ms: Optional[pulumi.Input[str]] = None,
25
+ log_index_interval_bytes: Optional[pulumi.Input[int]] = None,
26
+ log_message_downconversion_enable: Optional[pulumi.Input[bool]] = None,
27
+ log_message_timestamp_difference_max_ms: Optional[pulumi.Input[str]] = None,
28
+ log_preallocate: Optional[pulumi.Input[bool]] = None,
29
+ log_retention_bytes: Optional[pulumi.Input[str]] = None,
30
+ log_retention_hours: Optional[pulumi.Input[int]] = None,
31
+ log_retention_ms: Optional[pulumi.Input[str]] = None,
32
+ log_roll_jitter_ms: Optional[pulumi.Input[str]] = None,
33
+ log_segment_delete_delay_ms: Optional[pulumi.Input[int]] = None,
34
+ message_max_bytes: Optional[pulumi.Input[int]] = None):
35
+ """
36
+ The set of arguments for constructing a DatabaseKafkaConfig resource.
37
+ :param pulumi.Input[str] cluster_id: The ID of the target Kafka cluster.
38
+ :param pulumi.Input[bool] auto_create_topics_enable: Enable auto creation of topics.
39
+ :param pulumi.Input[int] group_initial_rebalance_delay_ms: The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
40
+ :param pulumi.Input[int] group_max_session_timeout_ms: The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
41
+ :param pulumi.Input[int] group_min_session_timeout_ms: The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
42
+ :param pulumi.Input[int] log_cleaner_delete_retention_ms: How long are delete records retained?
43
+ :param pulumi.Input[str] log_cleaner_min_compaction_lag_ms: The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
44
+ :param pulumi.Input[str] log_flush_interval_ms: The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
45
+ :param pulumi.Input[int] log_index_interval_bytes: The interval with which Kafka adds an entry to the offset index.
46
+ :param pulumi.Input[bool] log_message_downconversion_enable: This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
47
+ :param pulumi.Input[str] log_message_timestamp_difference_max_ms: The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
48
+ :param pulumi.Input[bool] log_preallocate: Controls whether to preallocate a file when creating a new segment.
49
+ :param pulumi.Input[str] log_retention_bytes: The maximum size of the log before deleting messages.
50
+ :param pulumi.Input[int] log_retention_hours: The number of hours to keep a log file before deleting it.
51
+ :param pulumi.Input[str] log_retention_ms: The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
52
+ :param pulumi.Input[str] log_roll_jitter_ms: The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
53
+ :param pulumi.Input[int] log_segment_delete_delay_ms: The amount of time to wait before deleting a file from the filesystem.
54
+ :param pulumi.Input[int] message_max_bytes: The maximum size of message that the server can receive.
55
+ """
56
+ pulumi.set(__self__, "cluster_id", cluster_id)
57
+ if auto_create_topics_enable is not None:
58
+ pulumi.set(__self__, "auto_create_topics_enable", auto_create_topics_enable)
59
+ if group_initial_rebalance_delay_ms is not None:
60
+ pulumi.set(__self__, "group_initial_rebalance_delay_ms", group_initial_rebalance_delay_ms)
61
+ if group_max_session_timeout_ms is not None:
62
+ pulumi.set(__self__, "group_max_session_timeout_ms", group_max_session_timeout_ms)
63
+ if group_min_session_timeout_ms is not None:
64
+ pulumi.set(__self__, "group_min_session_timeout_ms", group_min_session_timeout_ms)
65
+ if log_cleaner_delete_retention_ms is not None:
66
+ pulumi.set(__self__, "log_cleaner_delete_retention_ms", log_cleaner_delete_retention_ms)
67
+ if log_cleaner_min_compaction_lag_ms is not None:
68
+ pulumi.set(__self__, "log_cleaner_min_compaction_lag_ms", log_cleaner_min_compaction_lag_ms)
69
+ if log_flush_interval_ms is not None:
70
+ pulumi.set(__self__, "log_flush_interval_ms", log_flush_interval_ms)
71
+ if log_index_interval_bytes is not None:
72
+ pulumi.set(__self__, "log_index_interval_bytes", log_index_interval_bytes)
73
+ if log_message_downconversion_enable is not None:
74
+ pulumi.set(__self__, "log_message_downconversion_enable", log_message_downconversion_enable)
75
+ if log_message_timestamp_difference_max_ms is not None:
76
+ pulumi.set(__self__, "log_message_timestamp_difference_max_ms", log_message_timestamp_difference_max_ms)
77
+ if log_preallocate is not None:
78
+ pulumi.set(__self__, "log_preallocate", log_preallocate)
79
+ if log_retention_bytes is not None:
80
+ pulumi.set(__self__, "log_retention_bytes", log_retention_bytes)
81
+ if log_retention_hours is not None:
82
+ pulumi.set(__self__, "log_retention_hours", log_retention_hours)
83
+ if log_retention_ms is not None:
84
+ pulumi.set(__self__, "log_retention_ms", log_retention_ms)
85
+ if log_roll_jitter_ms is not None:
86
+ pulumi.set(__self__, "log_roll_jitter_ms", log_roll_jitter_ms)
87
+ if log_segment_delete_delay_ms is not None:
88
+ pulumi.set(__self__, "log_segment_delete_delay_ms", log_segment_delete_delay_ms)
89
+ if message_max_bytes is not None:
90
+ pulumi.set(__self__, "message_max_bytes", message_max_bytes)
91
+
92
+ @property
93
+ @pulumi.getter(name="clusterId")
94
+ def cluster_id(self) -> pulumi.Input[str]:
95
+ """
96
+ The ID of the target Kafka cluster.
97
+ """
98
+ return pulumi.get(self, "cluster_id")
99
+
100
+ @cluster_id.setter
101
+ def cluster_id(self, value: pulumi.Input[str]):
102
+ pulumi.set(self, "cluster_id", value)
103
+
104
+ @property
105
+ @pulumi.getter(name="autoCreateTopicsEnable")
106
+ def auto_create_topics_enable(self) -> Optional[pulumi.Input[bool]]:
107
+ """
108
+ Enable auto creation of topics.
109
+ """
110
+ return pulumi.get(self, "auto_create_topics_enable")
111
+
112
+ @auto_create_topics_enable.setter
113
+ def auto_create_topics_enable(self, value: Optional[pulumi.Input[bool]]):
114
+ pulumi.set(self, "auto_create_topics_enable", value)
115
+
116
+ @property
117
+ @pulumi.getter(name="groupInitialRebalanceDelayMs")
118
+ def group_initial_rebalance_delay_ms(self) -> Optional[pulumi.Input[int]]:
119
+ """
120
+ The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
121
+ """
122
+ return pulumi.get(self, "group_initial_rebalance_delay_ms")
123
+
124
+ @group_initial_rebalance_delay_ms.setter
125
+ def group_initial_rebalance_delay_ms(self, value: Optional[pulumi.Input[int]]):
126
+ pulumi.set(self, "group_initial_rebalance_delay_ms", value)
127
+
128
+ @property
129
+ @pulumi.getter(name="groupMaxSessionTimeoutMs")
130
+ def group_max_session_timeout_ms(self) -> Optional[pulumi.Input[int]]:
131
+ """
132
+ The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
133
+ """
134
+ return pulumi.get(self, "group_max_session_timeout_ms")
135
+
136
+ @group_max_session_timeout_ms.setter
137
+ def group_max_session_timeout_ms(self, value: Optional[pulumi.Input[int]]):
138
+ pulumi.set(self, "group_max_session_timeout_ms", value)
139
+
140
+ @property
141
+ @pulumi.getter(name="groupMinSessionTimeoutMs")
142
+ def group_min_session_timeout_ms(self) -> Optional[pulumi.Input[int]]:
143
+ """
144
+ The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
145
+ """
146
+ return pulumi.get(self, "group_min_session_timeout_ms")
147
+
148
+ @group_min_session_timeout_ms.setter
149
+ def group_min_session_timeout_ms(self, value: Optional[pulumi.Input[int]]):
150
+ pulumi.set(self, "group_min_session_timeout_ms", value)
151
+
152
+ @property
153
+ @pulumi.getter(name="logCleanerDeleteRetentionMs")
154
+ def log_cleaner_delete_retention_ms(self) -> Optional[pulumi.Input[int]]:
155
+ """
156
+ How long are delete records retained?
157
+ """
158
+ return pulumi.get(self, "log_cleaner_delete_retention_ms")
159
+
160
+ @log_cleaner_delete_retention_ms.setter
161
+ def log_cleaner_delete_retention_ms(self, value: Optional[pulumi.Input[int]]):
162
+ pulumi.set(self, "log_cleaner_delete_retention_ms", value)
163
+
164
+ @property
165
+ @pulumi.getter(name="logCleanerMinCompactionLagMs")
166
+ def log_cleaner_min_compaction_lag_ms(self) -> Optional[pulumi.Input[str]]:
167
+ """
168
+ The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
169
+ """
170
+ return pulumi.get(self, "log_cleaner_min_compaction_lag_ms")
171
+
172
+ @log_cleaner_min_compaction_lag_ms.setter
173
+ def log_cleaner_min_compaction_lag_ms(self, value: Optional[pulumi.Input[str]]):
174
+ pulumi.set(self, "log_cleaner_min_compaction_lag_ms", value)
175
+
176
+ @property
177
+ @pulumi.getter(name="logFlushIntervalMs")
178
+ def log_flush_interval_ms(self) -> Optional[pulumi.Input[str]]:
179
+ """
180
+ The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
181
+ """
182
+ return pulumi.get(self, "log_flush_interval_ms")
183
+
184
+ @log_flush_interval_ms.setter
185
+ def log_flush_interval_ms(self, value: Optional[pulumi.Input[str]]):
186
+ pulumi.set(self, "log_flush_interval_ms", value)
187
+
188
+ @property
189
+ @pulumi.getter(name="logIndexIntervalBytes")
190
+ def log_index_interval_bytes(self) -> Optional[pulumi.Input[int]]:
191
+ """
192
+ The interval with which Kafka adds an entry to the offset index.
193
+ """
194
+ return pulumi.get(self, "log_index_interval_bytes")
195
+
196
+ @log_index_interval_bytes.setter
197
+ def log_index_interval_bytes(self, value: Optional[pulumi.Input[int]]):
198
+ pulumi.set(self, "log_index_interval_bytes", value)
199
+
200
+ @property
201
+ @pulumi.getter(name="logMessageDownconversionEnable")
202
+ def log_message_downconversion_enable(self) -> Optional[pulumi.Input[bool]]:
203
+ """
204
+ This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
205
+ """
206
+ return pulumi.get(self, "log_message_downconversion_enable")
207
+
208
+ @log_message_downconversion_enable.setter
209
+ def log_message_downconversion_enable(self, value: Optional[pulumi.Input[bool]]):
210
+ pulumi.set(self, "log_message_downconversion_enable", value)
211
+
212
+ @property
213
+ @pulumi.getter(name="logMessageTimestampDifferenceMaxMs")
214
+ def log_message_timestamp_difference_max_ms(self) -> Optional[pulumi.Input[str]]:
215
+ """
216
+ The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
217
+ """
218
+ return pulumi.get(self, "log_message_timestamp_difference_max_ms")
219
+
220
+ @log_message_timestamp_difference_max_ms.setter
221
+ def log_message_timestamp_difference_max_ms(self, value: Optional[pulumi.Input[str]]):
222
+ pulumi.set(self, "log_message_timestamp_difference_max_ms", value)
223
+
224
+ @property
225
+ @pulumi.getter(name="logPreallocate")
226
+ def log_preallocate(self) -> Optional[pulumi.Input[bool]]:
227
+ """
228
+ Controls whether to preallocate a file when creating a new segment.
229
+ """
230
+ return pulumi.get(self, "log_preallocate")
231
+
232
+ @log_preallocate.setter
233
+ def log_preallocate(self, value: Optional[pulumi.Input[bool]]):
234
+ pulumi.set(self, "log_preallocate", value)
235
+
236
+ @property
237
+ @pulumi.getter(name="logRetentionBytes")
238
+ def log_retention_bytes(self) -> Optional[pulumi.Input[str]]:
239
+ """
240
+ The maximum size of the log before deleting messages.
241
+ """
242
+ return pulumi.get(self, "log_retention_bytes")
243
+
244
+ @log_retention_bytes.setter
245
+ def log_retention_bytes(self, value: Optional[pulumi.Input[str]]):
246
+ pulumi.set(self, "log_retention_bytes", value)
247
+
248
+ @property
249
+ @pulumi.getter(name="logRetentionHours")
250
+ def log_retention_hours(self) -> Optional[pulumi.Input[int]]:
251
+ """
252
+ The number of hours to keep a log file before deleting it.
253
+ """
254
+ return pulumi.get(self, "log_retention_hours")
255
+
256
+ @log_retention_hours.setter
257
+ def log_retention_hours(self, value: Optional[pulumi.Input[int]]):
258
+ pulumi.set(self, "log_retention_hours", value)
259
+
260
+ @property
261
+ @pulumi.getter(name="logRetentionMs")
262
+ def log_retention_ms(self) -> Optional[pulumi.Input[str]]:
263
+ """
264
+ The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
265
+ """
266
+ return pulumi.get(self, "log_retention_ms")
267
+
268
+ @log_retention_ms.setter
269
+ def log_retention_ms(self, value: Optional[pulumi.Input[str]]):
270
+ pulumi.set(self, "log_retention_ms", value)
271
+
272
+ @property
273
+ @pulumi.getter(name="logRollJitterMs")
274
+ def log_roll_jitter_ms(self) -> Optional[pulumi.Input[str]]:
275
+ """
276
+ The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
277
+ """
278
+ return pulumi.get(self, "log_roll_jitter_ms")
279
+
280
+ @log_roll_jitter_ms.setter
281
+ def log_roll_jitter_ms(self, value: Optional[pulumi.Input[str]]):
282
+ pulumi.set(self, "log_roll_jitter_ms", value)
283
+
284
+ @property
285
+ @pulumi.getter(name="logSegmentDeleteDelayMs")
286
+ def log_segment_delete_delay_ms(self) -> Optional[pulumi.Input[int]]:
287
+ """
288
+ The amount of time to wait before deleting a file from the filesystem.
289
+ """
290
+ return pulumi.get(self, "log_segment_delete_delay_ms")
291
+
292
+ @log_segment_delete_delay_ms.setter
293
+ def log_segment_delete_delay_ms(self, value: Optional[pulumi.Input[int]]):
294
+ pulumi.set(self, "log_segment_delete_delay_ms", value)
295
+
296
+ @property
297
+ @pulumi.getter(name="messageMaxBytes")
298
+ def message_max_bytes(self) -> Optional[pulumi.Input[int]]:
299
+ """
300
+ The maximum size of message that the server can receive.
301
+ """
302
+ return pulumi.get(self, "message_max_bytes")
303
+
304
+ @message_max_bytes.setter
305
+ def message_max_bytes(self, value: Optional[pulumi.Input[int]]):
306
+ pulumi.set(self, "message_max_bytes", value)
307
+
308
+
309
+ @pulumi.input_type
310
+ class _DatabaseKafkaConfigState:
311
+ def __init__(__self__, *,
312
+ auto_create_topics_enable: Optional[pulumi.Input[bool]] = None,
313
+ cluster_id: Optional[pulumi.Input[str]] = None,
314
+ group_initial_rebalance_delay_ms: Optional[pulumi.Input[int]] = None,
315
+ group_max_session_timeout_ms: Optional[pulumi.Input[int]] = None,
316
+ group_min_session_timeout_ms: Optional[pulumi.Input[int]] = None,
317
+ log_cleaner_delete_retention_ms: Optional[pulumi.Input[int]] = None,
318
+ log_cleaner_min_compaction_lag_ms: Optional[pulumi.Input[str]] = None,
319
+ log_flush_interval_ms: Optional[pulumi.Input[str]] = None,
320
+ log_index_interval_bytes: Optional[pulumi.Input[int]] = None,
321
+ log_message_downconversion_enable: Optional[pulumi.Input[bool]] = None,
322
+ log_message_timestamp_difference_max_ms: Optional[pulumi.Input[str]] = None,
323
+ log_preallocate: Optional[pulumi.Input[bool]] = None,
324
+ log_retention_bytes: Optional[pulumi.Input[str]] = None,
325
+ log_retention_hours: Optional[pulumi.Input[int]] = None,
326
+ log_retention_ms: Optional[pulumi.Input[str]] = None,
327
+ log_roll_jitter_ms: Optional[pulumi.Input[str]] = None,
328
+ log_segment_delete_delay_ms: Optional[pulumi.Input[int]] = None,
329
+ message_max_bytes: Optional[pulumi.Input[int]] = None):
330
+ """
331
+ Input properties used for looking up and filtering DatabaseKafkaConfig resources.
332
+ :param pulumi.Input[bool] auto_create_topics_enable: Enable auto creation of topics.
333
+ :param pulumi.Input[str] cluster_id: The ID of the target Kafka cluster.
334
+ :param pulumi.Input[int] group_initial_rebalance_delay_ms: The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
335
+ :param pulumi.Input[int] group_max_session_timeout_ms: The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
336
+ :param pulumi.Input[int] group_min_session_timeout_ms: The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
337
+ :param pulumi.Input[int] log_cleaner_delete_retention_ms: How long are delete records retained?
338
+ :param pulumi.Input[str] log_cleaner_min_compaction_lag_ms: The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
339
+ :param pulumi.Input[str] log_flush_interval_ms: The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
340
+ :param pulumi.Input[int] log_index_interval_bytes: The interval with which Kafka adds an entry to the offset index.
341
+ :param pulumi.Input[bool] log_message_downconversion_enable: This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
342
+ :param pulumi.Input[str] log_message_timestamp_difference_max_ms: The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
343
+ :param pulumi.Input[bool] log_preallocate: Controls whether to preallocate a file when creating a new segment.
344
+ :param pulumi.Input[str] log_retention_bytes: The maximum size of the log before deleting messages.
345
+ :param pulumi.Input[int] log_retention_hours: The number of hours to keep a log file before deleting it.
346
+ :param pulumi.Input[str] log_retention_ms: The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
347
+ :param pulumi.Input[str] log_roll_jitter_ms: The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
348
+ :param pulumi.Input[int] log_segment_delete_delay_ms: The amount of time to wait before deleting a file from the filesystem.
349
+ :param pulumi.Input[int] message_max_bytes: The maximum size of message that the server can receive.
350
+ """
351
+ if auto_create_topics_enable is not None:
352
+ pulumi.set(__self__, "auto_create_topics_enable", auto_create_topics_enable)
353
+ if cluster_id is not None:
354
+ pulumi.set(__self__, "cluster_id", cluster_id)
355
+ if group_initial_rebalance_delay_ms is not None:
356
+ pulumi.set(__self__, "group_initial_rebalance_delay_ms", group_initial_rebalance_delay_ms)
357
+ if group_max_session_timeout_ms is not None:
358
+ pulumi.set(__self__, "group_max_session_timeout_ms", group_max_session_timeout_ms)
359
+ if group_min_session_timeout_ms is not None:
360
+ pulumi.set(__self__, "group_min_session_timeout_ms", group_min_session_timeout_ms)
361
+ if log_cleaner_delete_retention_ms is not None:
362
+ pulumi.set(__self__, "log_cleaner_delete_retention_ms", log_cleaner_delete_retention_ms)
363
+ if log_cleaner_min_compaction_lag_ms is not None:
364
+ pulumi.set(__self__, "log_cleaner_min_compaction_lag_ms", log_cleaner_min_compaction_lag_ms)
365
+ if log_flush_interval_ms is not None:
366
+ pulumi.set(__self__, "log_flush_interval_ms", log_flush_interval_ms)
367
+ if log_index_interval_bytes is not None:
368
+ pulumi.set(__self__, "log_index_interval_bytes", log_index_interval_bytes)
369
+ if log_message_downconversion_enable is not None:
370
+ pulumi.set(__self__, "log_message_downconversion_enable", log_message_downconversion_enable)
371
+ if log_message_timestamp_difference_max_ms is not None:
372
+ pulumi.set(__self__, "log_message_timestamp_difference_max_ms", log_message_timestamp_difference_max_ms)
373
+ if log_preallocate is not None:
374
+ pulumi.set(__self__, "log_preallocate", log_preallocate)
375
+ if log_retention_bytes is not None:
376
+ pulumi.set(__self__, "log_retention_bytes", log_retention_bytes)
377
+ if log_retention_hours is not None:
378
+ pulumi.set(__self__, "log_retention_hours", log_retention_hours)
379
+ if log_retention_ms is not None:
380
+ pulumi.set(__self__, "log_retention_ms", log_retention_ms)
381
+ if log_roll_jitter_ms is not None:
382
+ pulumi.set(__self__, "log_roll_jitter_ms", log_roll_jitter_ms)
383
+ if log_segment_delete_delay_ms is not None:
384
+ pulumi.set(__self__, "log_segment_delete_delay_ms", log_segment_delete_delay_ms)
385
+ if message_max_bytes is not None:
386
+ pulumi.set(__self__, "message_max_bytes", message_max_bytes)
387
+
388
+ @property
389
+ @pulumi.getter(name="autoCreateTopicsEnable")
390
+ def auto_create_topics_enable(self) -> Optional[pulumi.Input[bool]]:
391
+ """
392
+ Enable auto creation of topics.
393
+ """
394
+ return pulumi.get(self, "auto_create_topics_enable")
395
+
396
+ @auto_create_topics_enable.setter
397
+ def auto_create_topics_enable(self, value: Optional[pulumi.Input[bool]]):
398
+ pulumi.set(self, "auto_create_topics_enable", value)
399
+
400
+ @property
401
+ @pulumi.getter(name="clusterId")
402
+ def cluster_id(self) -> Optional[pulumi.Input[str]]:
403
+ """
404
+ The ID of the target Kafka cluster.
405
+ """
406
+ return pulumi.get(self, "cluster_id")
407
+
408
+ @cluster_id.setter
409
+ def cluster_id(self, value: Optional[pulumi.Input[str]]):
410
+ pulumi.set(self, "cluster_id", value)
411
+
412
+ @property
413
+ @pulumi.getter(name="groupInitialRebalanceDelayMs")
414
+ def group_initial_rebalance_delay_ms(self) -> Optional[pulumi.Input[int]]:
415
+ """
416
+ The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
417
+ """
418
+ return pulumi.get(self, "group_initial_rebalance_delay_ms")
419
+
420
+ @group_initial_rebalance_delay_ms.setter
421
+ def group_initial_rebalance_delay_ms(self, value: Optional[pulumi.Input[int]]):
422
+ pulumi.set(self, "group_initial_rebalance_delay_ms", value)
423
+
424
+ @property
425
+ @pulumi.getter(name="groupMaxSessionTimeoutMs")
426
+ def group_max_session_timeout_ms(self) -> Optional[pulumi.Input[int]]:
427
+ """
428
+ The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
429
+ """
430
+ return pulumi.get(self, "group_max_session_timeout_ms")
431
+
432
+ @group_max_session_timeout_ms.setter
433
+ def group_max_session_timeout_ms(self, value: Optional[pulumi.Input[int]]):
434
+ pulumi.set(self, "group_max_session_timeout_ms", value)
435
+
436
+ @property
437
+ @pulumi.getter(name="groupMinSessionTimeoutMs")
438
+ def group_min_session_timeout_ms(self) -> Optional[pulumi.Input[int]]:
439
+ """
440
+ The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
441
+ """
442
+ return pulumi.get(self, "group_min_session_timeout_ms")
443
+
444
+ @group_min_session_timeout_ms.setter
445
+ def group_min_session_timeout_ms(self, value: Optional[pulumi.Input[int]]):
446
+ pulumi.set(self, "group_min_session_timeout_ms", value)
447
+
448
+ @property
449
+ @pulumi.getter(name="logCleanerDeleteRetentionMs")
450
+ def log_cleaner_delete_retention_ms(self) -> Optional[pulumi.Input[int]]:
451
+ """
452
+ How long are delete records retained?
453
+ """
454
+ return pulumi.get(self, "log_cleaner_delete_retention_ms")
455
+
456
+ @log_cleaner_delete_retention_ms.setter
457
+ def log_cleaner_delete_retention_ms(self, value: Optional[pulumi.Input[int]]):
458
+ pulumi.set(self, "log_cleaner_delete_retention_ms", value)
459
+
460
+ @property
461
+ @pulumi.getter(name="logCleanerMinCompactionLagMs")
462
+ def log_cleaner_min_compaction_lag_ms(self) -> Optional[pulumi.Input[str]]:
463
+ """
464
+ The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
465
+ """
466
+ return pulumi.get(self, "log_cleaner_min_compaction_lag_ms")
467
+
468
+ @log_cleaner_min_compaction_lag_ms.setter
469
+ def log_cleaner_min_compaction_lag_ms(self, value: Optional[pulumi.Input[str]]):
470
+ pulumi.set(self, "log_cleaner_min_compaction_lag_ms", value)
471
+
472
+ @property
473
+ @pulumi.getter(name="logFlushIntervalMs")
474
+ def log_flush_interval_ms(self) -> Optional[pulumi.Input[str]]:
475
+ """
476
+ The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
477
+ """
478
+ return pulumi.get(self, "log_flush_interval_ms")
479
+
480
+ @log_flush_interval_ms.setter
481
+ def log_flush_interval_ms(self, value: Optional[pulumi.Input[str]]):
482
+ pulumi.set(self, "log_flush_interval_ms", value)
483
+
484
+ @property
485
+ @pulumi.getter(name="logIndexIntervalBytes")
486
+ def log_index_interval_bytes(self) -> Optional[pulumi.Input[int]]:
487
+ """
488
+ The interval with which Kafka adds an entry to the offset index.
489
+ """
490
+ return pulumi.get(self, "log_index_interval_bytes")
491
+
492
+ @log_index_interval_bytes.setter
493
+ def log_index_interval_bytes(self, value: Optional[pulumi.Input[int]]):
494
+ pulumi.set(self, "log_index_interval_bytes", value)
495
+
496
+ @property
497
+ @pulumi.getter(name="logMessageDownconversionEnable")
498
+ def log_message_downconversion_enable(self) -> Optional[pulumi.Input[bool]]:
499
+ """
500
+ This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
501
+ """
502
+ return pulumi.get(self, "log_message_downconversion_enable")
503
+
504
+ @log_message_downconversion_enable.setter
505
+ def log_message_downconversion_enable(self, value: Optional[pulumi.Input[bool]]):
506
+ pulumi.set(self, "log_message_downconversion_enable", value)
507
+
508
+ @property
509
+ @pulumi.getter(name="logMessageTimestampDifferenceMaxMs")
510
+ def log_message_timestamp_difference_max_ms(self) -> Optional[pulumi.Input[str]]:
511
+ """
512
+ The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
513
+ """
514
+ return pulumi.get(self, "log_message_timestamp_difference_max_ms")
515
+
516
+ @log_message_timestamp_difference_max_ms.setter
517
+ def log_message_timestamp_difference_max_ms(self, value: Optional[pulumi.Input[str]]):
518
+ pulumi.set(self, "log_message_timestamp_difference_max_ms", value)
519
+
520
+ @property
521
+ @pulumi.getter(name="logPreallocate")
522
+ def log_preallocate(self) -> Optional[pulumi.Input[bool]]:
523
+ """
524
+ Controls whether to preallocate a file when creating a new segment.
525
+ """
526
+ return pulumi.get(self, "log_preallocate")
527
+
528
+ @log_preallocate.setter
529
+ def log_preallocate(self, value: Optional[pulumi.Input[bool]]):
530
+ pulumi.set(self, "log_preallocate", value)
531
+
532
+ @property
533
+ @pulumi.getter(name="logRetentionBytes")
534
+ def log_retention_bytes(self) -> Optional[pulumi.Input[str]]:
535
+ """
536
+ The maximum size of the log before deleting messages.
537
+ """
538
+ return pulumi.get(self, "log_retention_bytes")
539
+
540
+ @log_retention_bytes.setter
541
+ def log_retention_bytes(self, value: Optional[pulumi.Input[str]]):
542
+ pulumi.set(self, "log_retention_bytes", value)
543
+
544
+ @property
545
+ @pulumi.getter(name="logRetentionHours")
546
+ def log_retention_hours(self) -> Optional[pulumi.Input[int]]:
547
+ """
548
+ The number of hours to keep a log file before deleting it.
549
+ """
550
+ return pulumi.get(self, "log_retention_hours")
551
+
552
+ @log_retention_hours.setter
553
+ def log_retention_hours(self, value: Optional[pulumi.Input[int]]):
554
+ pulumi.set(self, "log_retention_hours", value)
555
+
556
+ @property
557
+ @pulumi.getter(name="logRetentionMs")
558
+ def log_retention_ms(self) -> Optional[pulumi.Input[str]]:
559
+ """
560
+ The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
561
+ """
562
+ return pulumi.get(self, "log_retention_ms")
563
+
564
+ @log_retention_ms.setter
565
+ def log_retention_ms(self, value: Optional[pulumi.Input[str]]):
566
+ pulumi.set(self, "log_retention_ms", value)
567
+
568
+ @property
569
+ @pulumi.getter(name="logRollJitterMs")
570
+ def log_roll_jitter_ms(self) -> Optional[pulumi.Input[str]]:
571
+ """
572
+ The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
573
+ """
574
+ return pulumi.get(self, "log_roll_jitter_ms")
575
+
576
+ @log_roll_jitter_ms.setter
577
+ def log_roll_jitter_ms(self, value: Optional[pulumi.Input[str]]):
578
+ pulumi.set(self, "log_roll_jitter_ms", value)
579
+
580
+ @property
581
+ @pulumi.getter(name="logSegmentDeleteDelayMs")
582
+ def log_segment_delete_delay_ms(self) -> Optional[pulumi.Input[int]]:
583
+ """
584
+ The amount of time to wait before deleting a file from the filesystem.
585
+ """
586
+ return pulumi.get(self, "log_segment_delete_delay_ms")
587
+
588
+ @log_segment_delete_delay_ms.setter
589
+ def log_segment_delete_delay_ms(self, value: Optional[pulumi.Input[int]]):
590
+ pulumi.set(self, "log_segment_delete_delay_ms", value)
591
+
592
+ @property
593
+ @pulumi.getter(name="messageMaxBytes")
594
+ def message_max_bytes(self) -> Optional[pulumi.Input[int]]:
595
+ """
596
+ The maximum size of message that the server can receive.
597
+ """
598
+ return pulumi.get(self, "message_max_bytes")
599
+
600
+ @message_max_bytes.setter
601
+ def message_max_bytes(self, value: Optional[pulumi.Input[int]]):
602
+ pulumi.set(self, "message_max_bytes", value)
603
+
604
+
605
+ class DatabaseKafkaConfig(pulumi.CustomResource):
606
+ @overload
607
+ def __init__(__self__,
608
+ resource_name: str,
609
+ opts: Optional[pulumi.ResourceOptions] = None,
610
+ auto_create_topics_enable: Optional[pulumi.Input[bool]] = None,
611
+ cluster_id: Optional[pulumi.Input[str]] = None,
612
+ group_initial_rebalance_delay_ms: Optional[pulumi.Input[int]] = None,
613
+ group_max_session_timeout_ms: Optional[pulumi.Input[int]] = None,
614
+ group_min_session_timeout_ms: Optional[pulumi.Input[int]] = None,
615
+ log_cleaner_delete_retention_ms: Optional[pulumi.Input[int]] = None,
616
+ log_cleaner_min_compaction_lag_ms: Optional[pulumi.Input[str]] = None,
617
+ log_flush_interval_ms: Optional[pulumi.Input[str]] = None,
618
+ log_index_interval_bytes: Optional[pulumi.Input[int]] = None,
619
+ log_message_downconversion_enable: Optional[pulumi.Input[bool]] = None,
620
+ log_message_timestamp_difference_max_ms: Optional[pulumi.Input[str]] = None,
621
+ log_preallocate: Optional[pulumi.Input[bool]] = None,
622
+ log_retention_bytes: Optional[pulumi.Input[str]] = None,
623
+ log_retention_hours: Optional[pulumi.Input[int]] = None,
624
+ log_retention_ms: Optional[pulumi.Input[str]] = None,
625
+ log_roll_jitter_ms: Optional[pulumi.Input[str]] = None,
626
+ log_segment_delete_delay_ms: Optional[pulumi.Input[int]] = None,
627
+ message_max_bytes: Optional[pulumi.Input[int]] = None,
628
+ __props__=None):
629
+ """
630
+ Provides a virtual resource that can be used to change advanced configuration
631
+ options for a DigitalOcean managed Kafka database cluster.
632
+
633
+ > **Note** Kafka configurations are only removed from state when destroyed. The remote configuration is not unset.
634
+
635
+ ## Example Usage
636
+
637
+ ```python
638
+ import pulumi
639
+ import pulumi_digitalocean as digitalocean
640
+
641
+ example_database_cluster = digitalocean.DatabaseCluster("example",
642
+ name="example-kafka-cluster",
643
+ engine="kafka",
644
+ version="3.7",
645
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
646
+ region=digitalocean.Region.NYC3,
647
+ node_count=3)
648
+ example = digitalocean.DatabaseKafkaConfig("example",
649
+ cluster_id=example_database_cluster.id,
650
+ group_initial_rebalance_delay_ms=3000,
651
+ group_min_session_timeout_ms=6000,
652
+ group_max_session_timeout_ms=1800000,
653
+ message_max_bytes=1048588,
654
+ log_cleaner_delete_retention_ms=86400000,
655
+ log_cleaner_min_compaction_lag_ms="0",
656
+ log_flush_interval_ms="9223372036854775807",
657
+ log_index_interval_bytes=4096,
658
+ log_message_downconversion_enable=True,
659
+ log_message_timestamp_difference_max_ms="9223372036854775807",
660
+ log_preallocate=False,
661
+ log_retention_bytes="-1",
662
+ log_retention_hours=168,
663
+ log_retention_ms="604800000",
664
+ log_roll_jitter_ms="0",
665
+ log_segment_delete_delay_ms=60000,
666
+ auto_create_topics_enable=True)
667
+ ```
668
+
669
+ ## Import
670
+
671
+ A Kafka database cluster's configuration can be imported using the `id` the parent cluster, e.g.
672
+
673
+ ```sh
674
+ $ pulumi import digitalocean:index/databaseKafkaConfig:DatabaseKafkaConfig example 4b62829a-9c42-465b-aaa3-84051048e712
675
+ ```
676
+
677
+ :param str resource_name: The name of the resource.
678
+ :param pulumi.ResourceOptions opts: Options for the resource.
679
+ :param pulumi.Input[bool] auto_create_topics_enable: Enable auto creation of topics.
680
+ :param pulumi.Input[str] cluster_id: The ID of the target Kafka cluster.
681
+ :param pulumi.Input[int] group_initial_rebalance_delay_ms: The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
682
+ :param pulumi.Input[int] group_max_session_timeout_ms: The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
683
+ :param pulumi.Input[int] group_min_session_timeout_ms: The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
684
+ :param pulumi.Input[int] log_cleaner_delete_retention_ms: How long are delete records retained?
685
+ :param pulumi.Input[str] log_cleaner_min_compaction_lag_ms: The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
686
+ :param pulumi.Input[str] log_flush_interval_ms: The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
687
+ :param pulumi.Input[int] log_index_interval_bytes: The interval with which Kafka adds an entry to the offset index.
688
+ :param pulumi.Input[bool] log_message_downconversion_enable: This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
689
+ :param pulumi.Input[str] log_message_timestamp_difference_max_ms: The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
690
+ :param pulumi.Input[bool] log_preallocate: Controls whether to preallocate a file when creating a new segment.
691
+ :param pulumi.Input[str] log_retention_bytes: The maximum size of the log before deleting messages.
692
+ :param pulumi.Input[int] log_retention_hours: The number of hours to keep a log file before deleting it.
693
+ :param pulumi.Input[str] log_retention_ms: The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
694
+ :param pulumi.Input[str] log_roll_jitter_ms: The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
695
+ :param pulumi.Input[int] log_segment_delete_delay_ms: The amount of time to wait before deleting a file from the filesystem.
696
+ :param pulumi.Input[int] message_max_bytes: The maximum size of message that the server can receive.
697
+ """
698
+ ...
699
+ @overload
700
+ def __init__(__self__,
701
+ resource_name: str,
702
+ args: DatabaseKafkaConfigArgs,
703
+ opts: Optional[pulumi.ResourceOptions] = None):
704
+ """
705
+ Provides a virtual resource that can be used to change advanced configuration
706
+ options for a DigitalOcean managed Kafka database cluster.
707
+
708
+ > **Note** Kafka configurations are only removed from state when destroyed. The remote configuration is not unset.
709
+
710
+ ## Example Usage
711
+
712
+ ```python
713
+ import pulumi
714
+ import pulumi_digitalocean as digitalocean
715
+
716
+ example_database_cluster = digitalocean.DatabaseCluster("example",
717
+ name="example-kafka-cluster",
718
+ engine="kafka",
719
+ version="3.7",
720
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
721
+ region=digitalocean.Region.NYC3,
722
+ node_count=3)
723
+ example = digitalocean.DatabaseKafkaConfig("example",
724
+ cluster_id=example_database_cluster.id,
725
+ group_initial_rebalance_delay_ms=3000,
726
+ group_min_session_timeout_ms=6000,
727
+ group_max_session_timeout_ms=1800000,
728
+ message_max_bytes=1048588,
729
+ log_cleaner_delete_retention_ms=86400000,
730
+ log_cleaner_min_compaction_lag_ms="0",
731
+ log_flush_interval_ms="9223372036854775807",
732
+ log_index_interval_bytes=4096,
733
+ log_message_downconversion_enable=True,
734
+ log_message_timestamp_difference_max_ms="9223372036854775807",
735
+ log_preallocate=False,
736
+ log_retention_bytes="-1",
737
+ log_retention_hours=168,
738
+ log_retention_ms="604800000",
739
+ log_roll_jitter_ms="0",
740
+ log_segment_delete_delay_ms=60000,
741
+ auto_create_topics_enable=True)
742
+ ```
743
+
744
+ ## Import
745
+
746
+ A Kafka database cluster's configuration can be imported using the `id` the parent cluster, e.g.
747
+
748
+ ```sh
749
+ $ pulumi import digitalocean:index/databaseKafkaConfig:DatabaseKafkaConfig example 4b62829a-9c42-465b-aaa3-84051048e712
750
+ ```
751
+
752
+ :param str resource_name: The name of the resource.
753
+ :param DatabaseKafkaConfigArgs args: The arguments to use to populate this resource's properties.
754
+ :param pulumi.ResourceOptions opts: Options for the resource.
755
+ """
756
+ ...
757
+ def __init__(__self__, resource_name: str, *args, **kwargs):
758
+ resource_args, opts = _utilities.get_resource_args_opts(DatabaseKafkaConfigArgs, pulumi.ResourceOptions, *args, **kwargs)
759
+ if resource_args is not None:
760
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
761
+ else:
762
+ __self__._internal_init(resource_name, *args, **kwargs)
763
+
764
+ def _internal_init(__self__,
765
+ resource_name: str,
766
+ opts: Optional[pulumi.ResourceOptions] = None,
767
+ auto_create_topics_enable: Optional[pulumi.Input[bool]] = None,
768
+ cluster_id: Optional[pulumi.Input[str]] = None,
769
+ group_initial_rebalance_delay_ms: Optional[pulumi.Input[int]] = None,
770
+ group_max_session_timeout_ms: Optional[pulumi.Input[int]] = None,
771
+ group_min_session_timeout_ms: Optional[pulumi.Input[int]] = None,
772
+ log_cleaner_delete_retention_ms: Optional[pulumi.Input[int]] = None,
773
+ log_cleaner_min_compaction_lag_ms: Optional[pulumi.Input[str]] = None,
774
+ log_flush_interval_ms: Optional[pulumi.Input[str]] = None,
775
+ log_index_interval_bytes: Optional[pulumi.Input[int]] = None,
776
+ log_message_downconversion_enable: Optional[pulumi.Input[bool]] = None,
777
+ log_message_timestamp_difference_max_ms: Optional[pulumi.Input[str]] = None,
778
+ log_preallocate: Optional[pulumi.Input[bool]] = None,
779
+ log_retention_bytes: Optional[pulumi.Input[str]] = None,
780
+ log_retention_hours: Optional[pulumi.Input[int]] = None,
781
+ log_retention_ms: Optional[pulumi.Input[str]] = None,
782
+ log_roll_jitter_ms: Optional[pulumi.Input[str]] = None,
783
+ log_segment_delete_delay_ms: Optional[pulumi.Input[int]] = None,
784
+ message_max_bytes: Optional[pulumi.Input[int]] = None,
785
+ __props__=None):
786
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
787
+ if not isinstance(opts, pulumi.ResourceOptions):
788
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
789
+ if opts.id is None:
790
+ if __props__ is not None:
791
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
792
+ __props__ = DatabaseKafkaConfigArgs.__new__(DatabaseKafkaConfigArgs)
793
+
794
+ __props__.__dict__["auto_create_topics_enable"] = auto_create_topics_enable
795
+ if cluster_id is None and not opts.urn:
796
+ raise TypeError("Missing required property 'cluster_id'")
797
+ __props__.__dict__["cluster_id"] = cluster_id
798
+ __props__.__dict__["group_initial_rebalance_delay_ms"] = group_initial_rebalance_delay_ms
799
+ __props__.__dict__["group_max_session_timeout_ms"] = group_max_session_timeout_ms
800
+ __props__.__dict__["group_min_session_timeout_ms"] = group_min_session_timeout_ms
801
+ __props__.__dict__["log_cleaner_delete_retention_ms"] = log_cleaner_delete_retention_ms
802
+ __props__.__dict__["log_cleaner_min_compaction_lag_ms"] = log_cleaner_min_compaction_lag_ms
803
+ __props__.__dict__["log_flush_interval_ms"] = log_flush_interval_ms
804
+ __props__.__dict__["log_index_interval_bytes"] = log_index_interval_bytes
805
+ __props__.__dict__["log_message_downconversion_enable"] = log_message_downconversion_enable
806
+ __props__.__dict__["log_message_timestamp_difference_max_ms"] = log_message_timestamp_difference_max_ms
807
+ __props__.__dict__["log_preallocate"] = log_preallocate
808
+ __props__.__dict__["log_retention_bytes"] = log_retention_bytes
809
+ __props__.__dict__["log_retention_hours"] = log_retention_hours
810
+ __props__.__dict__["log_retention_ms"] = log_retention_ms
811
+ __props__.__dict__["log_roll_jitter_ms"] = log_roll_jitter_ms
812
+ __props__.__dict__["log_segment_delete_delay_ms"] = log_segment_delete_delay_ms
813
+ __props__.__dict__["message_max_bytes"] = message_max_bytes
814
+ super(DatabaseKafkaConfig, __self__).__init__(
815
+ 'digitalocean:index/databaseKafkaConfig:DatabaseKafkaConfig',
816
+ resource_name,
817
+ __props__,
818
+ opts)
819
+
820
+ @staticmethod
821
+ def get(resource_name: str,
822
+ id: pulumi.Input[str],
823
+ opts: Optional[pulumi.ResourceOptions] = None,
824
+ auto_create_topics_enable: Optional[pulumi.Input[bool]] = None,
825
+ cluster_id: Optional[pulumi.Input[str]] = None,
826
+ group_initial_rebalance_delay_ms: Optional[pulumi.Input[int]] = None,
827
+ group_max_session_timeout_ms: Optional[pulumi.Input[int]] = None,
828
+ group_min_session_timeout_ms: Optional[pulumi.Input[int]] = None,
829
+ log_cleaner_delete_retention_ms: Optional[pulumi.Input[int]] = None,
830
+ log_cleaner_min_compaction_lag_ms: Optional[pulumi.Input[str]] = None,
831
+ log_flush_interval_ms: Optional[pulumi.Input[str]] = None,
832
+ log_index_interval_bytes: Optional[pulumi.Input[int]] = None,
833
+ log_message_downconversion_enable: Optional[pulumi.Input[bool]] = None,
834
+ log_message_timestamp_difference_max_ms: Optional[pulumi.Input[str]] = None,
835
+ log_preallocate: Optional[pulumi.Input[bool]] = None,
836
+ log_retention_bytes: Optional[pulumi.Input[str]] = None,
837
+ log_retention_hours: Optional[pulumi.Input[int]] = None,
838
+ log_retention_ms: Optional[pulumi.Input[str]] = None,
839
+ log_roll_jitter_ms: Optional[pulumi.Input[str]] = None,
840
+ log_segment_delete_delay_ms: Optional[pulumi.Input[int]] = None,
841
+ message_max_bytes: Optional[pulumi.Input[int]] = None) -> 'DatabaseKafkaConfig':
842
+ """
843
+ Get an existing DatabaseKafkaConfig resource's state with the given name, id, and optional extra
844
+ properties used to qualify the lookup.
845
+
846
+ :param str resource_name: The unique name of the resulting resource.
847
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
848
+ :param pulumi.ResourceOptions opts: Options for the resource.
849
+ :param pulumi.Input[bool] auto_create_topics_enable: Enable auto creation of topics.
850
+ :param pulumi.Input[str] cluster_id: The ID of the target Kafka cluster.
851
+ :param pulumi.Input[int] group_initial_rebalance_delay_ms: The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
852
+ :param pulumi.Input[int] group_max_session_timeout_ms: The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
853
+ :param pulumi.Input[int] group_min_session_timeout_ms: The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
854
+ :param pulumi.Input[int] log_cleaner_delete_retention_ms: How long are delete records retained?
855
+ :param pulumi.Input[str] log_cleaner_min_compaction_lag_ms: The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
856
+ :param pulumi.Input[str] log_flush_interval_ms: The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
857
+ :param pulumi.Input[int] log_index_interval_bytes: The interval with which Kafka adds an entry to the offset index.
858
+ :param pulumi.Input[bool] log_message_downconversion_enable: This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
859
+ :param pulumi.Input[str] log_message_timestamp_difference_max_ms: The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
860
+ :param pulumi.Input[bool] log_preallocate: Controls whether to preallocate a file when creating a new segment.
861
+ :param pulumi.Input[str] log_retention_bytes: The maximum size of the log before deleting messages.
862
+ :param pulumi.Input[int] log_retention_hours: The number of hours to keep a log file before deleting it.
863
+ :param pulumi.Input[str] log_retention_ms: The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
864
+ :param pulumi.Input[str] log_roll_jitter_ms: The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
865
+ :param pulumi.Input[int] log_segment_delete_delay_ms: The amount of time to wait before deleting a file from the filesystem.
866
+ :param pulumi.Input[int] message_max_bytes: The maximum size of message that the server can receive.
867
+ """
868
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
869
+
870
+ __props__ = _DatabaseKafkaConfigState.__new__(_DatabaseKafkaConfigState)
871
+
872
+ __props__.__dict__["auto_create_topics_enable"] = auto_create_topics_enable
873
+ __props__.__dict__["cluster_id"] = cluster_id
874
+ __props__.__dict__["group_initial_rebalance_delay_ms"] = group_initial_rebalance_delay_ms
875
+ __props__.__dict__["group_max_session_timeout_ms"] = group_max_session_timeout_ms
876
+ __props__.__dict__["group_min_session_timeout_ms"] = group_min_session_timeout_ms
877
+ __props__.__dict__["log_cleaner_delete_retention_ms"] = log_cleaner_delete_retention_ms
878
+ __props__.__dict__["log_cleaner_min_compaction_lag_ms"] = log_cleaner_min_compaction_lag_ms
879
+ __props__.__dict__["log_flush_interval_ms"] = log_flush_interval_ms
880
+ __props__.__dict__["log_index_interval_bytes"] = log_index_interval_bytes
881
+ __props__.__dict__["log_message_downconversion_enable"] = log_message_downconversion_enable
882
+ __props__.__dict__["log_message_timestamp_difference_max_ms"] = log_message_timestamp_difference_max_ms
883
+ __props__.__dict__["log_preallocate"] = log_preallocate
884
+ __props__.__dict__["log_retention_bytes"] = log_retention_bytes
885
+ __props__.__dict__["log_retention_hours"] = log_retention_hours
886
+ __props__.__dict__["log_retention_ms"] = log_retention_ms
887
+ __props__.__dict__["log_roll_jitter_ms"] = log_roll_jitter_ms
888
+ __props__.__dict__["log_segment_delete_delay_ms"] = log_segment_delete_delay_ms
889
+ __props__.__dict__["message_max_bytes"] = message_max_bytes
890
+ return DatabaseKafkaConfig(resource_name, opts=opts, __props__=__props__)
891
+
892
+ @property
893
+ @pulumi.getter(name="autoCreateTopicsEnable")
894
+ def auto_create_topics_enable(self) -> pulumi.Output[bool]:
895
+ """
896
+ Enable auto creation of topics.
897
+ """
898
+ return pulumi.get(self, "auto_create_topics_enable")
899
+
900
+ @property
901
+ @pulumi.getter(name="clusterId")
902
+ def cluster_id(self) -> pulumi.Output[str]:
903
+ """
904
+ The ID of the target Kafka cluster.
905
+ """
906
+ return pulumi.get(self, "cluster_id")
907
+
908
+ @property
909
+ @pulumi.getter(name="groupInitialRebalanceDelayMs")
910
+ def group_initial_rebalance_delay_ms(self) -> pulumi.Output[int]:
911
+ """
912
+ The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time.
913
+ """
914
+ return pulumi.get(self, "group_initial_rebalance_delay_ms")
915
+
916
+ @property
917
+ @pulumi.getter(name="groupMaxSessionTimeoutMs")
918
+ def group_max_session_timeout_ms(self) -> pulumi.Output[int]:
919
+ """
920
+ The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
921
+ """
922
+ return pulumi.get(self, "group_max_session_timeout_ms")
923
+
924
+ @property
925
+ @pulumi.getter(name="groupMinSessionTimeoutMs")
926
+ def group_min_session_timeout_ms(self) -> pulumi.Output[int]:
927
+ """
928
+ The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures.
929
+ """
930
+ return pulumi.get(self, "group_min_session_timeout_ms")
931
+
932
+ @property
933
+ @pulumi.getter(name="logCleanerDeleteRetentionMs")
934
+ def log_cleaner_delete_retention_ms(self) -> pulumi.Output[int]:
935
+ """
936
+ How long are delete records retained?
937
+ """
938
+ return pulumi.get(self, "log_cleaner_delete_retention_ms")
939
+
940
+ @property
941
+ @pulumi.getter(name="logCleanerMinCompactionLagMs")
942
+ def log_cleaner_min_compaction_lag_ms(self) -> pulumi.Output[str]:
943
+ """
944
+ The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted.
945
+ """
946
+ return pulumi.get(self, "log_cleaner_min_compaction_lag_ms")
947
+
948
+ @property
949
+ @pulumi.getter(name="logFlushIntervalMs")
950
+ def log_flush_interval_ms(self) -> pulumi.Output[str]:
951
+ """
952
+ The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used.
953
+ """
954
+ return pulumi.get(self, "log_flush_interval_ms")
955
+
956
+ @property
957
+ @pulumi.getter(name="logIndexIntervalBytes")
958
+ def log_index_interval_bytes(self) -> pulumi.Output[int]:
959
+ """
960
+ The interval with which Kafka adds an entry to the offset index.
961
+ """
962
+ return pulumi.get(self, "log_index_interval_bytes")
963
+
964
+ @property
965
+ @pulumi.getter(name="logMessageDownconversionEnable")
966
+ def log_message_downconversion_enable(self) -> pulumi.Output[bool]:
967
+ """
968
+ This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests.
969
+ """
970
+ return pulumi.get(self, "log_message_downconversion_enable")
971
+
972
+ @property
973
+ @pulumi.getter(name="logMessageTimestampDifferenceMaxMs")
974
+ def log_message_timestamp_difference_max_ms(self) -> pulumi.Output[str]:
975
+ """
976
+ The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message.
977
+ """
978
+ return pulumi.get(self, "log_message_timestamp_difference_max_ms")
979
+
980
+ @property
981
+ @pulumi.getter(name="logPreallocate")
982
+ def log_preallocate(self) -> pulumi.Output[bool]:
983
+ """
984
+ Controls whether to preallocate a file when creating a new segment.
985
+ """
986
+ return pulumi.get(self, "log_preallocate")
987
+
988
+ @property
989
+ @pulumi.getter(name="logRetentionBytes")
990
+ def log_retention_bytes(self) -> pulumi.Output[str]:
991
+ """
992
+ The maximum size of the log before deleting messages.
993
+ """
994
+ return pulumi.get(self, "log_retention_bytes")
995
+
996
+ @property
997
+ @pulumi.getter(name="logRetentionHours")
998
+ def log_retention_hours(self) -> pulumi.Output[int]:
999
+ """
1000
+ The number of hours to keep a log file before deleting it.
1001
+ """
1002
+ return pulumi.get(self, "log_retention_hours")
1003
+
1004
+ @property
1005
+ @pulumi.getter(name="logRetentionMs")
1006
+ def log_retention_ms(self) -> pulumi.Output[str]:
1007
+ """
1008
+ The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied.
1009
+ """
1010
+ return pulumi.get(self, "log_retention_ms")
1011
+
1012
+ @property
1013
+ @pulumi.getter(name="logRollJitterMs")
1014
+ def log_roll_jitter_ms(self) -> pulumi.Output[str]:
1015
+ """
1016
+ The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used.
1017
+ """
1018
+ return pulumi.get(self, "log_roll_jitter_ms")
1019
+
1020
+ @property
1021
+ @pulumi.getter(name="logSegmentDeleteDelayMs")
1022
+ def log_segment_delete_delay_ms(self) -> pulumi.Output[int]:
1023
+ """
1024
+ The amount of time to wait before deleting a file from the filesystem.
1025
+ """
1026
+ return pulumi.get(self, "log_segment_delete_delay_ms")
1027
+
1028
+ @property
1029
+ @pulumi.getter(name="messageMaxBytes")
1030
+ def message_max_bytes(self) -> pulumi.Output[int]:
1031
+ """
1032
+ The maximum size of message that the server can receive.
1033
+ """
1034
+ return pulumi.get(self, "message_max_bytes")
1035
+