cribl-control-plane 0.2.1rc4__py3-none-any.whl → 0.2.1rc6__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 cribl-control-plane might be problematic. Click here for more details.

Files changed (98) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/groups_sdk.py +2 -2
  3. cribl_control_plane/models/__init__.py +3 -99
  4. cribl_control_plane/models/createconfiggroupbyproductop.py +2 -2
  5. cribl_control_plane/models/input.py +14 -14
  6. cribl_control_plane/models/inputappscope.py +16 -20
  7. cribl_control_plane/models/inputconfluentcloud.py +0 -110
  8. cribl_control_plane/models/inputcriblhttp.py +16 -20
  9. cribl_control_plane/models/inputcribllakehttp.py +16 -20
  10. cribl_control_plane/models/inputcribltcp.py +16 -20
  11. cribl_control_plane/models/inputdatadogagent.py +16 -20
  12. cribl_control_plane/models/inputedgeprometheus.py +36 -44
  13. cribl_control_plane/models/inputelastic.py +27 -44
  14. cribl_control_plane/models/inputeventhub.py +0 -118
  15. cribl_control_plane/models/inputfirehose.py +16 -20
  16. cribl_control_plane/models/inputgrafana.py +31 -39
  17. cribl_control_plane/models/inputhttp.py +16 -20
  18. cribl_control_plane/models/inputhttpraw.py +16 -20
  19. cribl_control_plane/models/inputkafka.py +0 -108
  20. cribl_control_plane/models/inputloki.py +16 -20
  21. cribl_control_plane/models/inputmetrics.py +16 -20
  22. cribl_control_plane/models/inputmodeldriventelemetry.py +16 -20
  23. cribl_control_plane/models/inputopentelemetry.py +15 -19
  24. cribl_control_plane/models/inputprometheus.py +36 -44
  25. cribl_control_plane/models/inputprometheusrw.py +16 -20
  26. cribl_control_plane/models/inputsplunk.py +16 -20
  27. cribl_control_plane/models/inputsplunkhec.py +15 -19
  28. cribl_control_plane/models/inputsyslog.py +31 -39
  29. cribl_control_plane/models/inputsystemmetrics.py +10 -20
  30. cribl_control_plane/models/inputtcp.py +16 -30
  31. cribl_control_plane/models/inputtcpjson.py +16 -20
  32. cribl_control_plane/models/inputwindowsmetrics.py +10 -20
  33. cribl_control_plane/models/inputwineventlogs.py +0 -14
  34. cribl_control_plane/models/inputwizwebhook.py +16 -20
  35. cribl_control_plane/models/inputzscalerhec.py +15 -19
  36. cribl_control_plane/models/output.py +22 -22
  37. cribl_control_plane/models/outputazureblob.py +0 -7
  38. cribl_control_plane/models/outputazuredataexplorer.py +93 -283
  39. cribl_control_plane/models/outputazureeventhub.py +21 -169
  40. cribl_control_plane/models/outputazurelogs.py +21 -49
  41. cribl_control_plane/models/outputchronicle.py +21 -49
  42. cribl_control_plane/models/outputclickhouse.py +21 -49
  43. cribl_control_plane/models/outputcloudwatch.py +21 -49
  44. cribl_control_plane/models/outputconfluentcloud.py +22 -167
  45. cribl_control_plane/models/outputcriblhttp.py +21 -49
  46. cribl_control_plane/models/outputcribltcp.py +21 -49
  47. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +22 -50
  48. cribl_control_plane/models/outputdatabricks.py +0 -7
  49. cribl_control_plane/models/outputdatadog.py +21 -49
  50. cribl_control_plane/models/outputdataset.py +21 -49
  51. cribl_control_plane/models/outputdls3.py +0 -7
  52. cribl_control_plane/models/outputdynatracehttp.py +21 -49
  53. cribl_control_plane/models/outputdynatraceotlp.py +21 -49
  54. cribl_control_plane/models/outputelastic.py +21 -74
  55. cribl_control_plane/models/outputelasticcloud.py +21 -74
  56. cribl_control_plane/models/outputfilesystem.py +0 -7
  57. cribl_control_plane/models/outputgooglechronicle.py +22 -65
  58. cribl_control_plane/models/outputgooglecloudlogging.py +22 -50
  59. cribl_control_plane/models/outputgooglecloudstorage.py +0 -7
  60. cribl_control_plane/models/outputgooglepubsub.py +21 -49
  61. cribl_control_plane/models/outputgrafanacloud.py +42 -98
  62. cribl_control_plane/models/outputgraphite.py +21 -49
  63. cribl_control_plane/models/outputhoneycomb.py +21 -49
  64. cribl_control_plane/models/outputhumiohec.py +21 -49
  65. cribl_control_plane/models/outputinfluxdb.py +21 -49
  66. cribl_control_plane/models/outputkafka.py +19 -162
  67. cribl_control_plane/models/outputkinesis.py +21 -56
  68. cribl_control_plane/models/outputloki.py +19 -47
  69. cribl_control_plane/models/outputminio.py +0 -7
  70. cribl_control_plane/models/outputmsk.py +19 -54
  71. cribl_control_plane/models/outputnewrelic.py +21 -49
  72. cribl_control_plane/models/outputnewrelicevents.py +22 -50
  73. cribl_control_plane/models/outputopentelemetry.py +21 -49
  74. cribl_control_plane/models/outputprometheus.py +21 -49
  75. cribl_control_plane/models/outputs3.py +0 -7
  76. cribl_control_plane/models/outputsentinel.py +21 -49
  77. cribl_control_plane/models/outputsentineloneaisiem.py +22 -50
  78. cribl_control_plane/models/outputservicenow.py +21 -49
  79. cribl_control_plane/models/outputsignalfx.py +21 -49
  80. cribl_control_plane/models/outputsns.py +19 -47
  81. cribl_control_plane/models/outputsplunk.py +21 -49
  82. cribl_control_plane/models/outputsplunkhec.py +21 -49
  83. cribl_control_plane/models/outputsplunklb.py +21 -49
  84. cribl_control_plane/models/outputsqs.py +19 -47
  85. cribl_control_plane/models/outputstatsd.py +21 -49
  86. cribl_control_plane/models/outputstatsdext.py +21 -49
  87. cribl_control_plane/models/outputsumologic.py +21 -49
  88. cribl_control_plane/models/outputsyslog.py +99 -129
  89. cribl_control_plane/models/outputtcpjson.py +21 -49
  90. cribl_control_plane/models/outputwavefront.py +21 -49
  91. cribl_control_plane/models/outputwebhook.py +21 -49
  92. cribl_control_plane/models/outputxsiam.py +19 -47
  93. cribl_control_plane/models/runnablejobcollection.py +8 -12
  94. cribl_control_plane/models/runnablejobexecutor.py +8 -12
  95. cribl_control_plane/models/runnablejobscheduledsearch.py +8 -12
  96. {cribl_control_plane-0.2.1rc4.dist-info → cribl_control_plane-0.2.1rc6.dist-info}/METADATA +1 -1
  97. {cribl_control_plane-0.2.1rc4.dist-info → cribl_control_plane-0.2.1rc6.dist-info}/RECORD +98 -98
  98. {cribl_control_plane-0.2.1rc4.dist-info → cribl_control_plane-0.2.1rc6.dist-info}/WHEEL +0 -0
@@ -35,17 +35,6 @@ class OutputStatsdExtBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMet
35
35
  QUEUE = "queue"
36
36
 
37
37
 
38
- class OutputStatsdExtMode(str, Enum, metaclass=utils.OpenEnumMeta):
39
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
40
-
41
- # Error
42
- ERROR = "error"
43
- # Backpressure
44
- ALWAYS = "always"
45
- # Always On
46
- BACKPRESSURE = "backpressure"
47
-
48
-
49
38
  class OutputStatsdExtCompression(str, Enum, metaclass=utils.OpenEnumMeta):
50
39
  r"""Codec to use to compress the persisted data"""
51
40
 
@@ -64,6 +53,17 @@ class OutputStatsdExtQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
64
53
  DROP = "drop"
65
54
 
66
55
 
56
+ class OutputStatsdExtMode(str, Enum, metaclass=utils.OpenEnumMeta):
57
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
58
+
59
+ # Error
60
+ ERROR = "error"
61
+ # Backpressure
62
+ BACKPRESSURE = "backpressure"
63
+ # Always On
64
+ ALWAYS = "always"
65
+
66
+
67
67
  class OutputStatsdExtPqControlsTypedDict(TypedDict):
68
68
  pass
69
69
 
@@ -105,16 +105,6 @@ class OutputStatsdExtTypedDict(TypedDict):
105
105
  r"""Amount of time (milliseconds) to wait for a write to complete before assuming connection is dead"""
106
106
  on_backpressure: NotRequired[OutputStatsdExtBackpressureBehavior]
107
107
  r"""How to handle events when all receivers are exerting backpressure"""
108
- pq_strict_ordering: NotRequired[bool]
109
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
110
- pq_rate_per_sec: NotRequired[float]
111
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
112
- pq_mode: NotRequired[OutputStatsdExtMode]
113
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
114
- pq_max_buffer_size: NotRequired[float]
115
- r"""The maximum number of events to hold in memory before writing the events to disk"""
116
- pq_max_backpressure_sec: NotRequired[float]
117
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
118
108
  pq_max_file_size: NotRequired[str]
119
109
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
120
110
  pq_max_size: NotRequired[str]
@@ -125,6 +115,8 @@ class OutputStatsdExtTypedDict(TypedDict):
125
115
  r"""Codec to use to compress the persisted data"""
126
116
  pq_on_backpressure: NotRequired[OutputStatsdExtQueueFullBehavior]
127
117
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
118
+ pq_mode: NotRequired[OutputStatsdExtMode]
119
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
128
120
  pq_controls: NotRequired[OutputStatsdExtPqControlsTypedDict]
129
121
 
130
122
 
@@ -199,34 +191,6 @@ class OutputStatsdExt(BaseModel):
199
191
  ] = OutputStatsdExtBackpressureBehavior.BLOCK
200
192
  r"""How to handle events when all receivers are exerting backpressure"""
201
193
 
202
- pq_strict_ordering: Annotated[
203
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
204
- ] = True
205
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
206
-
207
- pq_rate_per_sec: Annotated[
208
- Optional[float], pydantic.Field(alias="pqRatePerSec")
209
- ] = 0
210
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
211
-
212
- pq_mode: Annotated[
213
- Annotated[
214
- Optional[OutputStatsdExtMode], PlainValidator(validate_open_enum(False))
215
- ],
216
- pydantic.Field(alias="pqMode"),
217
- ] = OutputStatsdExtMode.ERROR
218
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
219
-
220
- pq_max_buffer_size: Annotated[
221
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
222
- ] = 42
223
- r"""The maximum number of events to hold in memory before writing the events to disk"""
224
-
225
- pq_max_backpressure_sec: Annotated[
226
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
227
- ] = 30
228
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
229
-
230
194
  pq_max_file_size: Annotated[
231
195
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
232
196
  ] = "1 MB"
@@ -258,6 +222,14 @@ class OutputStatsdExt(BaseModel):
258
222
  ] = OutputStatsdExtQueueFullBehavior.BLOCK
259
223
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
260
224
 
225
+ pq_mode: Annotated[
226
+ Annotated[
227
+ Optional[OutputStatsdExtMode], PlainValidator(validate_open_enum(False))
228
+ ],
229
+ pydantic.Field(alias="pqMode"),
230
+ ] = OutputStatsdExtMode.ERROR
231
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
232
+
261
233
  pq_controls: Annotated[
262
234
  Optional[OutputStatsdExtPqControls], pydantic.Field(alias="pqControls")
263
235
  ] = None
@@ -111,17 +111,6 @@ class OutputSumoLogicBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMet
111
111
  QUEUE = "queue"
112
112
 
113
113
 
114
- class OutputSumoLogicMode(str, Enum, metaclass=utils.OpenEnumMeta):
115
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
116
-
117
- # Error
118
- ERROR = "error"
119
- # Backpressure
120
- ALWAYS = "always"
121
- # Always On
122
- BACKPRESSURE = "backpressure"
123
-
124
-
125
114
  class OutputSumoLogicCompression(str, Enum, metaclass=utils.OpenEnumMeta):
126
115
  r"""Codec to use to compress the persisted data"""
127
116
 
@@ -140,6 +129,17 @@ class OutputSumoLogicQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
140
129
  DROP = "drop"
141
130
 
142
131
 
132
+ class OutputSumoLogicMode(str, Enum, metaclass=utils.OpenEnumMeta):
133
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
134
+
135
+ # Error
136
+ ERROR = "error"
137
+ # Backpressure
138
+ BACKPRESSURE = "backpressure"
139
+ # Always On
140
+ ALWAYS = "always"
141
+
142
+
143
143
  class OutputSumoLogicPqControlsTypedDict(TypedDict):
144
144
  pass
145
145
 
@@ -205,16 +205,6 @@ class OutputSumoLogicTypedDict(TypedDict):
205
205
  total_memory_limit_kb: NotRequired[float]
206
206
  r"""Maximum total size of the batches waiting to be sent. If left blank, defaults to 5 times the max body size (if set). If 0, no limit is enforced."""
207
207
  description: NotRequired[str]
208
- pq_strict_ordering: NotRequired[bool]
209
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
210
- pq_rate_per_sec: NotRequired[float]
211
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
212
- pq_mode: NotRequired[OutputSumoLogicMode]
213
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
214
- pq_max_buffer_size: NotRequired[float]
215
- r"""The maximum number of events to hold in memory before writing the events to disk"""
216
- pq_max_backpressure_sec: NotRequired[float]
217
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
218
208
  pq_max_file_size: NotRequired[str]
219
209
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
220
210
  pq_max_size: NotRequired[str]
@@ -225,6 +215,8 @@ class OutputSumoLogicTypedDict(TypedDict):
225
215
  r"""Codec to use to compress the persisted data"""
226
216
  pq_on_backpressure: NotRequired[OutputSumoLogicQueueFullBehavior]
227
217
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
218
+ pq_mode: NotRequired[OutputSumoLogicMode]
219
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
228
220
  pq_controls: NotRequired[OutputSumoLogicPqControlsTypedDict]
229
221
 
230
222
 
@@ -357,34 +349,6 @@ class OutputSumoLogic(BaseModel):
357
349
 
358
350
  description: Optional[str] = None
359
351
 
360
- pq_strict_ordering: Annotated[
361
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
362
- ] = True
363
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
364
-
365
- pq_rate_per_sec: Annotated[
366
- Optional[float], pydantic.Field(alias="pqRatePerSec")
367
- ] = 0
368
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
369
-
370
- pq_mode: Annotated[
371
- Annotated[
372
- Optional[OutputSumoLogicMode], PlainValidator(validate_open_enum(False))
373
- ],
374
- pydantic.Field(alias="pqMode"),
375
- ] = OutputSumoLogicMode.ERROR
376
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
377
-
378
- pq_max_buffer_size: Annotated[
379
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
380
- ] = 42
381
- r"""The maximum number of events to hold in memory before writing the events to disk"""
382
-
383
- pq_max_backpressure_sec: Annotated[
384
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
385
- ] = 30
386
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
387
-
388
352
  pq_max_file_size: Annotated[
389
353
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
390
354
  ] = "1 MB"
@@ -416,6 +380,14 @@ class OutputSumoLogic(BaseModel):
416
380
  ] = OutputSumoLogicQueueFullBehavior.BLOCK
417
381
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
418
382
 
383
+ pq_mode: Annotated[
384
+ Annotated[
385
+ Optional[OutputSumoLogicMode], PlainValidator(validate_open_enum(False))
386
+ ],
387
+ pydantic.Field(alias="pqMode"),
388
+ ] = OutputSumoLogicMode.ERROR
389
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
390
+
419
391
  pq_controls: Annotated[
420
392
  Optional[OutputSumoLogicPqControls], pydantic.Field(alias="pqControls")
421
393
  ] = None
@@ -90,45 +90,6 @@ class TimestampFormat(str, Enum, metaclass=utils.OpenEnumMeta):
90
90
  ISO8601 = "iso8601"
91
91
 
92
92
 
93
- class OutputSyslogTLS(str, Enum, metaclass=utils.OpenEnumMeta):
94
- r"""Whether to inherit TLS configs from group setting or disable TLS"""
95
-
96
- INHERIT = "inherit"
97
- OFF = "off"
98
-
99
-
100
- class OutputSyslogHostTypedDict(TypedDict):
101
- host: str
102
- r"""The hostname of the receiver"""
103
- port: float
104
- r"""The port to connect to on the provided host"""
105
- tls: NotRequired[OutputSyslogTLS]
106
- r"""Whether to inherit TLS configs from group setting or disable TLS"""
107
- servername: NotRequired[str]
108
- r"""Servername to use if establishing a TLS connection. If not specified, defaults to connection host (if not an IP); otherwise, uses the global TLS settings."""
109
- weight: NotRequired[float]
110
- r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
111
-
112
-
113
- class OutputSyslogHost(BaseModel):
114
- host: str
115
- r"""The hostname of the receiver"""
116
-
117
- port: float
118
- r"""The port to connect to on the provided host"""
119
-
120
- tls: Annotated[
121
- Optional[OutputSyslogTLS], PlainValidator(validate_open_enum(False))
122
- ] = OutputSyslogTLS.INHERIT
123
- r"""Whether to inherit TLS configs from group setting or disable TLS"""
124
-
125
- servername: Optional[str] = None
126
- r"""Servername to use if establishing a TLS connection. If not specified, defaults to connection host (if not an IP); otherwise, uses the global TLS settings."""
127
-
128
- weight: Optional[float] = 1
129
- r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
130
-
131
-
132
93
  class OutputSyslogMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
133
94
  TL_SV1 = "TLSv1"
134
95
  TL_SV1_1 = "TLSv1.1"
@@ -223,17 +184,6 @@ class OutputSyslogBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
223
184
  QUEUE = "queue"
224
185
 
225
186
 
226
- class OutputSyslogMode(str, Enum, metaclass=utils.OpenEnumMeta):
227
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
228
-
229
- # Error
230
- ERROR = "error"
231
- # Backpressure
232
- ALWAYS = "always"
233
- # Always On
234
- BACKPRESSURE = "backpressure"
235
-
236
-
237
187
  class OutputSyslogCompression(str, Enum, metaclass=utils.OpenEnumMeta):
238
188
  r"""Codec to use to compress the persisted data"""
239
189
 
@@ -252,6 +202,17 @@ class OutputSyslogQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
252
202
  DROP = "drop"
253
203
 
254
204
 
205
+ class OutputSyslogMode(str, Enum, metaclass=utils.OpenEnumMeta):
206
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
207
+
208
+ # Error
209
+ ERROR = "error"
210
+ # Backpressure
211
+ BACKPRESSURE = "backpressure"
212
+ # Always On
213
+ ALWAYS = "always"
214
+
215
+
255
216
  class OutputSyslogPqControlsTypedDict(TypedDict):
256
217
  pass
257
218
 
@@ -260,6 +221,43 @@ class OutputSyslogPqControls(BaseModel):
260
221
  pass
261
222
 
262
223
 
224
+ class OutputSyslogTLS(str, Enum):
225
+ r"""Whether to inherit TLS configs from group setting or disable TLS"""
226
+
227
+ INHERIT = "inherit"
228
+ OFF = "off"
229
+
230
+
231
+ class OutputSyslogHostTypedDict(TypedDict):
232
+ host: str
233
+ r"""The hostname of the receiver"""
234
+ port: NotRequired[float]
235
+ r"""The port to connect to on the provided host"""
236
+ tls: NotRequired[OutputSyslogTLS]
237
+ r"""Whether to inherit TLS configs from group setting or disable TLS"""
238
+ servername: NotRequired[str]
239
+ r"""Servername to use if establishing a TLS connection. If not specified, defaults to connection host (if not an IP); otherwise, uses the global TLS settings."""
240
+ weight: NotRequired[float]
241
+ r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
242
+
243
+
244
+ class OutputSyslogHost(BaseModel):
245
+ host: str
246
+ r"""The hostname of the receiver"""
247
+
248
+ port: Optional[float] = 9997
249
+ r"""The port to connect to on the provided host"""
250
+
251
+ tls: Optional[OutputSyslogTLS] = OutputSyslogTLS.INHERIT
252
+ r"""Whether to inherit TLS configs from group setting or disable TLS"""
253
+
254
+ servername: Optional[str] = None
255
+ r"""Servername to use if establishing a TLS connection. If not specified, defaults to connection host (if not an IP); otherwise, uses the global TLS settings."""
256
+
257
+ weight: Optional[float] = 1
258
+ r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
259
+
260
+
263
261
  class OutputSyslogTypedDict(TypedDict):
264
262
  type: OutputSyslogType
265
263
  id: NotRequired[str]
@@ -293,20 +291,6 @@ class OutputSyslogTypedDict(TypedDict):
293
291
  description: NotRequired[str]
294
292
  load_balanced: NotRequired[bool]
295
293
  r"""For optimal performance, enable load balancing even if you have one hostname, as it can expand to multiple IPs. If this setting is disabled, consider enabling round-robin DNS."""
296
- host: NotRequired[str]
297
- r"""The hostname of the receiver"""
298
- port: NotRequired[float]
299
- r"""The port to connect to on the provided host"""
300
- exclude_self: NotRequired[bool]
301
- r"""Exclude all IPs of the current host from the list of any resolved hostnames"""
302
- hosts: NotRequired[List[OutputSyslogHostTypedDict]]
303
- r"""Set of hosts to load-balance data to"""
304
- dns_resolve_period_sec: NotRequired[float]
305
- r"""The interval in which to re-resolve any hostnames and pick up destinations from A records"""
306
- load_balance_stats_period_sec: NotRequired[float]
307
- r"""How far back in time to keep traffic stats for load balancing purposes"""
308
- max_concurrent_senders: NotRequired[float]
309
- r"""Maximum number of concurrent connections (per Worker Process). A random set of IPs will be picked on every DNS resolution period. Use 0 for unlimited."""
310
294
  connection_timeout: NotRequired[float]
311
295
  r"""Amount of time (milliseconds) to wait for the connection to establish before retrying"""
312
296
  write_timeout: NotRequired[float]
@@ -314,20 +298,14 @@ class OutputSyslogTypedDict(TypedDict):
314
298
  tls: NotRequired[OutputSyslogTLSSettingsClientSideTypedDict]
315
299
  on_backpressure: NotRequired[OutputSyslogBackpressureBehavior]
316
300
  r"""How to handle events when all receivers are exerting backpressure"""
301
+ host: NotRequired[str]
302
+ r"""The hostname of the receiver"""
303
+ port: NotRequired[float]
304
+ r"""The port to connect to on the provided host"""
317
305
  max_record_size: NotRequired[float]
318
306
  r"""Maximum size of syslog messages. Make sure this value is less than or equal to the MTU to avoid UDP packet fragmentation."""
319
307
  udp_dns_resolve_period_sec: NotRequired[float]
320
308
  r"""How often to resolve the destination hostname to an IP address. Ignored if the destination is an IP address. A value of 0 means every message sent will incur a DNS lookup."""
321
- pq_strict_ordering: NotRequired[bool]
322
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
323
- pq_rate_per_sec: NotRequired[float]
324
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
325
- pq_mode: NotRequired[OutputSyslogMode]
326
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
327
- pq_max_buffer_size: NotRequired[float]
328
- r"""The maximum number of events to hold in memory before writing the events to disk"""
329
- pq_max_backpressure_sec: NotRequired[float]
330
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
331
309
  pq_max_file_size: NotRequired[str]
332
310
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
333
311
  pq_max_size: NotRequired[str]
@@ -338,7 +316,19 @@ class OutputSyslogTypedDict(TypedDict):
338
316
  r"""Codec to use to compress the persisted data"""
339
317
  pq_on_backpressure: NotRequired[OutputSyslogQueueFullBehavior]
340
318
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
319
+ pq_mode: NotRequired[OutputSyslogMode]
320
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
341
321
  pq_controls: NotRequired[OutputSyslogPqControlsTypedDict]
322
+ dns_resolve_period_sec: NotRequired[float]
323
+ r"""The interval in which to re-resolve any hostnames and pick up destinations from A records"""
324
+ load_balance_stats_period_sec: NotRequired[float]
325
+ r"""How far back in time to keep traffic stats for load balancing purposes"""
326
+ max_concurrent_senders: NotRequired[float]
327
+ r"""Maximum number of concurrent connections (per Worker Process). A random set of IPs will be picked on every DNS resolution period. Use 0 for unlimited."""
328
+ exclude_self: NotRequired[bool]
329
+ r"""Exclude all IPs of the current host from the list of any resolved hostnames"""
330
+ hosts: NotRequired[List[OutputSyslogHostTypedDict]]
331
+ r"""Set of hosts to load-balance data to."""
342
332
 
343
333
 
344
334
  class OutputSyslog(BaseModel):
@@ -416,33 +406,6 @@ class OutputSyslog(BaseModel):
416
406
  )
417
407
  r"""For optimal performance, enable load balancing even if you have one hostname, as it can expand to multiple IPs. If this setting is disabled, consider enabling round-robin DNS."""
418
408
 
419
- host: Optional[str] = None
420
- r"""The hostname of the receiver"""
421
-
422
- port: Optional[float] = None
423
- r"""The port to connect to on the provided host"""
424
-
425
- exclude_self: Annotated[Optional[bool], pydantic.Field(alias="excludeSelf")] = False
426
- r"""Exclude all IPs of the current host from the list of any resolved hostnames"""
427
-
428
- hosts: Optional[List[OutputSyslogHost]] = None
429
- r"""Set of hosts to load-balance data to"""
430
-
431
- dns_resolve_period_sec: Annotated[
432
- Optional[float], pydantic.Field(alias="dnsResolvePeriodSec")
433
- ] = 600
434
- r"""The interval in which to re-resolve any hostnames and pick up destinations from A records"""
435
-
436
- load_balance_stats_period_sec: Annotated[
437
- Optional[float], pydantic.Field(alias="loadBalanceStatsPeriodSec")
438
- ] = 300
439
- r"""How far back in time to keep traffic stats for load balancing purposes"""
440
-
441
- max_concurrent_senders: Annotated[
442
- Optional[float], pydantic.Field(alias="maxConcurrentSenders")
443
- ] = 0
444
- r"""Maximum number of concurrent connections (per Worker Process). A random set of IPs will be picked on every DNS resolution period. Use 0 for unlimited."""
445
-
446
409
  connection_timeout: Annotated[
447
410
  Optional[float], pydantic.Field(alias="connectionTimeout")
448
411
  ] = 10000
@@ -464,6 +427,12 @@ class OutputSyslog(BaseModel):
464
427
  ] = OutputSyslogBackpressureBehavior.BLOCK
465
428
  r"""How to handle events when all receivers are exerting backpressure"""
466
429
 
430
+ host: Optional[str] = None
431
+ r"""The hostname of the receiver"""
432
+
433
+ port: Optional[float] = None
434
+ r"""The port to connect to on the provided host"""
435
+
467
436
  max_record_size: Annotated[
468
437
  Optional[float], pydantic.Field(alias="maxRecordSize")
469
438
  ] = 1500
@@ -474,34 +443,6 @@ class OutputSyslog(BaseModel):
474
443
  ] = 0
475
444
  r"""How often to resolve the destination hostname to an IP address. Ignored if the destination is an IP address. A value of 0 means every message sent will incur a DNS lookup."""
476
445
 
477
- pq_strict_ordering: Annotated[
478
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
479
- ] = True
480
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
481
-
482
- pq_rate_per_sec: Annotated[
483
- Optional[float], pydantic.Field(alias="pqRatePerSec")
484
- ] = 0
485
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
486
-
487
- pq_mode: Annotated[
488
- Annotated[
489
- Optional[OutputSyslogMode], PlainValidator(validate_open_enum(False))
490
- ],
491
- pydantic.Field(alias="pqMode"),
492
- ] = OutputSyslogMode.ERROR
493
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
494
-
495
- pq_max_buffer_size: Annotated[
496
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
497
- ] = 42
498
- r"""The maximum number of events to hold in memory before writing the events to disk"""
499
-
500
- pq_max_backpressure_sec: Annotated[
501
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
502
- ] = 30
503
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
504
-
505
446
  pq_max_file_size: Annotated[
506
447
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
507
448
  ] = "1 MB"
@@ -532,6 +473,35 @@ class OutputSyslog(BaseModel):
532
473
  ] = OutputSyslogQueueFullBehavior.BLOCK
533
474
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
534
475
 
476
+ pq_mode: Annotated[
477
+ Annotated[
478
+ Optional[OutputSyslogMode], PlainValidator(validate_open_enum(False))
479
+ ],
480
+ pydantic.Field(alias="pqMode"),
481
+ ] = OutputSyslogMode.ERROR
482
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
483
+
535
484
  pq_controls: Annotated[
536
485
  Optional[OutputSyslogPqControls], pydantic.Field(alias="pqControls")
537
486
  ] = None
487
+
488
+ dns_resolve_period_sec: Annotated[
489
+ Optional[float], pydantic.Field(alias="dnsResolvePeriodSec")
490
+ ] = 600
491
+ r"""The interval in which to re-resolve any hostnames and pick up destinations from A records"""
492
+
493
+ load_balance_stats_period_sec: Annotated[
494
+ Optional[float], pydantic.Field(alias="loadBalanceStatsPeriodSec")
495
+ ] = 300
496
+ r"""How far back in time to keep traffic stats for load balancing purposes"""
497
+
498
+ max_concurrent_senders: Annotated[
499
+ Optional[float], pydantic.Field(alias="maxConcurrentSenders")
500
+ ] = 0
501
+ r"""Maximum number of concurrent connections (per Worker Process). A random set of IPs will be picked on every DNS resolution period. Use 0 for unlimited."""
502
+
503
+ exclude_self: Annotated[Optional[bool], pydantic.Field(alias="excludeSelf")] = False
504
+ r"""Exclude all IPs of the current host from the list of any resolved hostnames"""
505
+
506
+ hosts: Optional[List[OutputSyslogHost]] = None
507
+ r"""Set of hosts to load-balance data to."""
@@ -164,17 +164,6 @@ class OutputTcpjsonHost(BaseModel):
164
164
  r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
165
165
 
166
166
 
167
- class OutputTcpjsonMode(str, Enum, metaclass=utils.OpenEnumMeta):
168
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
169
-
170
- # Error
171
- ERROR = "error"
172
- # Backpressure
173
- ALWAYS = "always"
174
- # Always On
175
- BACKPRESSURE = "backpressure"
176
-
177
-
178
167
  class OutputTcpjsonPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
179
168
  r"""Codec to use to compress the persisted data"""
180
169
 
@@ -193,6 +182,17 @@ class OutputTcpjsonQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
193
182
  DROP = "drop"
194
183
 
195
184
 
185
+ class OutputTcpjsonMode(str, Enum, metaclass=utils.OpenEnumMeta):
186
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
187
+
188
+ # Error
189
+ ERROR = "error"
190
+ # Backpressure
191
+ BACKPRESSURE = "backpressure"
192
+ # Always On
193
+ ALWAYS = "always"
194
+
195
+
196
196
  class OutputTcpjsonPqControlsTypedDict(TypedDict):
197
197
  pass
198
198
 
@@ -249,16 +249,6 @@ class OutputTcpjsonTypedDict(TypedDict):
249
249
  r"""How far back in time to keep traffic stats for load balancing purposes"""
250
250
  max_concurrent_senders: NotRequired[float]
251
251
  r"""Maximum number of concurrent connections (per Worker Process). A random set of IPs will be picked on every DNS resolution period. Use 0 for unlimited."""
252
- pq_strict_ordering: NotRequired[bool]
253
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
254
- pq_rate_per_sec: NotRequired[float]
255
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
256
- pq_mode: NotRequired[OutputTcpjsonMode]
257
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
258
- pq_max_buffer_size: NotRequired[float]
259
- r"""The maximum number of events to hold in memory before writing the events to disk"""
260
- pq_max_backpressure_sec: NotRequired[float]
261
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
262
252
  pq_max_file_size: NotRequired[str]
263
253
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
264
254
  pq_max_size: NotRequired[str]
@@ -269,6 +259,8 @@ class OutputTcpjsonTypedDict(TypedDict):
269
259
  r"""Codec to use to compress the persisted data"""
270
260
  pq_on_backpressure: NotRequired[OutputTcpjsonQueueFullBehavior]
271
261
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
262
+ pq_mode: NotRequired[OutputTcpjsonMode]
263
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
272
264
  pq_controls: NotRequired[OutputTcpjsonPqControlsTypedDict]
273
265
  auth_token: NotRequired[str]
274
266
  r"""Optional authentication token to include as part of the connection header"""
@@ -383,34 +375,6 @@ class OutputTcpjson(BaseModel):
383
375
  ] = 0
384
376
  r"""Maximum number of concurrent connections (per Worker Process). A random set of IPs will be picked on every DNS resolution period. Use 0 for unlimited."""
385
377
 
386
- pq_strict_ordering: Annotated[
387
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
388
- ] = True
389
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
390
-
391
- pq_rate_per_sec: Annotated[
392
- Optional[float], pydantic.Field(alias="pqRatePerSec")
393
- ] = 0
394
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
395
-
396
- pq_mode: Annotated[
397
- Annotated[
398
- Optional[OutputTcpjsonMode], PlainValidator(validate_open_enum(False))
399
- ],
400
- pydantic.Field(alias="pqMode"),
401
- ] = OutputTcpjsonMode.ERROR
402
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
403
-
404
- pq_max_buffer_size: Annotated[
405
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
406
- ] = 42
407
- r"""The maximum number of events to hold in memory before writing the events to disk"""
408
-
409
- pq_max_backpressure_sec: Annotated[
410
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
411
- ] = 30
412
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
413
-
414
378
  pq_max_file_size: Annotated[
415
379
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
416
380
  ] = "1 MB"
@@ -442,6 +406,14 @@ class OutputTcpjson(BaseModel):
442
406
  ] = OutputTcpjsonQueueFullBehavior.BLOCK
443
407
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
444
408
 
409
+ pq_mode: Annotated[
410
+ Annotated[
411
+ Optional[OutputTcpjsonMode], PlainValidator(validate_open_enum(False))
412
+ ],
413
+ pydantic.Field(alias="pqMode"),
414
+ ] = OutputTcpjsonMode.ERROR
415
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
416
+
445
417
  pq_controls: Annotated[
446
418
  Optional[OutputTcpjsonPqControls], pydantic.Field(alias="pqControls")
447
419
  ] = None