cribl-control-plane 0.2.1rc6__py3-none-any.whl → 0.2.1rc8__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 (103) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/lakedatasets.py +28 -0
  3. cribl_control_plane/models/__init__.py +124 -5
  4. cribl_control_plane/models/cribllakedataset.py +4 -0
  5. cribl_control_plane/models/cribllakedatasetupdate.py +4 -0
  6. cribl_control_plane/models/input.py +15 -15
  7. cribl_control_plane/models/inputappscope.py +20 -16
  8. cribl_control_plane/models/inputconfluentcloud.py +110 -0
  9. cribl_control_plane/models/inputcriblhttp.py +20 -16
  10. cribl_control_plane/models/inputcribllakehttp.py +20 -16
  11. cribl_control_plane/models/inputcribltcp.py +20 -16
  12. cribl_control_plane/models/inputdatadogagent.py +20 -16
  13. cribl_control_plane/models/inputedgeprometheus.py +44 -36
  14. cribl_control_plane/models/inputelastic.py +44 -27
  15. cribl_control_plane/models/inputeventhub.py +118 -0
  16. cribl_control_plane/models/inputfile.py +10 -5
  17. cribl_control_plane/models/inputfirehose.py +20 -16
  18. cribl_control_plane/models/inputgrafana.py +39 -31
  19. cribl_control_plane/models/inputhttp.py +20 -16
  20. cribl_control_plane/models/inputhttpraw.py +20 -16
  21. cribl_control_plane/models/inputkafka.py +108 -0
  22. cribl_control_plane/models/inputloki.py +20 -16
  23. cribl_control_plane/models/inputmetrics.py +20 -16
  24. cribl_control_plane/models/inputmodeldriventelemetry.py +20 -16
  25. cribl_control_plane/models/inputopentelemetry.py +19 -15
  26. cribl_control_plane/models/inputprometheus.py +44 -36
  27. cribl_control_plane/models/inputprometheusrw.py +20 -16
  28. cribl_control_plane/models/inputsplunk.py +20 -16
  29. cribl_control_plane/models/inputsplunkhec.py +19 -15
  30. cribl_control_plane/models/inputsyslog.py +39 -31
  31. cribl_control_plane/models/inputsystemmetrics.py +20 -10
  32. cribl_control_plane/models/inputtcp.py +30 -16
  33. cribl_control_plane/models/inputtcpjson.py +20 -16
  34. cribl_control_plane/models/inputwindowsmetrics.py +20 -10
  35. cribl_control_plane/models/inputwineventlogs.py +14 -0
  36. cribl_control_plane/models/inputwizwebhook.py +20 -16
  37. cribl_control_plane/models/inputzscalerhec.py +19 -15
  38. cribl_control_plane/models/jobinfo.py +10 -4
  39. cribl_control_plane/models/jobstatus.py +24 -3
  40. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  41. cribl_control_plane/models/output.py +21 -21
  42. cribl_control_plane/models/outputazureblob.py +7 -0
  43. cribl_control_plane/models/outputazuredataexplorer.py +283 -93
  44. cribl_control_plane/models/outputazureeventhub.py +169 -21
  45. cribl_control_plane/models/outputazurelogs.py +49 -21
  46. cribl_control_plane/models/outputchronicle.py +49 -21
  47. cribl_control_plane/models/outputclickhouse.py +49 -21
  48. cribl_control_plane/models/outputcloudwatch.py +49 -21
  49. cribl_control_plane/models/outputconfluentcloud.py +169 -22
  50. cribl_control_plane/models/outputcriblhttp.py +49 -21
  51. cribl_control_plane/models/outputcribltcp.py +49 -21
  52. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +50 -22
  53. cribl_control_plane/models/outputdatabricks.py +7 -0
  54. cribl_control_plane/models/outputdatadog.py +49 -21
  55. cribl_control_plane/models/outputdataset.py +49 -21
  56. cribl_control_plane/models/outputdls3.py +7 -0
  57. cribl_control_plane/models/outputdynatracehttp.py +49 -21
  58. cribl_control_plane/models/outputdynatraceotlp.py +49 -21
  59. cribl_control_plane/models/outputelastic.py +74 -21
  60. cribl_control_plane/models/outputelasticcloud.py +74 -21
  61. cribl_control_plane/models/outputfilesystem.py +7 -0
  62. cribl_control_plane/models/outputgooglechronicle.py +65 -22
  63. cribl_control_plane/models/outputgooglecloudlogging.py +50 -22
  64. cribl_control_plane/models/outputgooglecloudstorage.py +7 -0
  65. cribl_control_plane/models/outputgooglepubsub.py +49 -21
  66. cribl_control_plane/models/outputgrafanacloud.py +98 -42
  67. cribl_control_plane/models/outputgraphite.py +49 -21
  68. cribl_control_plane/models/outputhoneycomb.py +49 -21
  69. cribl_control_plane/models/outputhumiohec.py +49 -21
  70. cribl_control_plane/models/outputinfluxdb.py +49 -21
  71. cribl_control_plane/models/outputkafka.py +164 -19
  72. cribl_control_plane/models/outputkinesis.py +56 -21
  73. cribl_control_plane/models/outputloki.py +47 -19
  74. cribl_control_plane/models/outputminio.py +7 -0
  75. cribl_control_plane/models/outputmsk.py +56 -19
  76. cribl_control_plane/models/outputnewrelic.py +49 -21
  77. cribl_control_plane/models/outputnewrelicevents.py +50 -22
  78. cribl_control_plane/models/outputopentelemetry.py +49 -21
  79. cribl_control_plane/models/outputprometheus.py +49 -21
  80. cribl_control_plane/models/outputs3.py +7 -0
  81. cribl_control_plane/models/outputsentinel.py +49 -21
  82. cribl_control_plane/models/outputsentineloneaisiem.py +50 -22
  83. cribl_control_plane/models/outputservicenow.py +49 -21
  84. cribl_control_plane/models/outputsignalfx.py +49 -21
  85. cribl_control_plane/models/outputsns.py +47 -19
  86. cribl_control_plane/models/outputsplunk.py +49 -21
  87. cribl_control_plane/models/outputsplunkhec.py +124 -21
  88. cribl_control_plane/models/outputsplunklb.py +49 -21
  89. cribl_control_plane/models/outputsqs.py +47 -19
  90. cribl_control_plane/models/outputstatsd.py +49 -21
  91. cribl_control_plane/models/outputstatsdext.py +49 -21
  92. cribl_control_plane/models/outputsumologic.py +49 -21
  93. cribl_control_plane/models/outputsyslog.py +129 -99
  94. cribl_control_plane/models/outputtcpjson.py +49 -21
  95. cribl_control_plane/models/outputwavefront.py +49 -21
  96. cribl_control_plane/models/outputwebhook.py +49 -21
  97. cribl_control_plane/models/outputxsiam.py +47 -19
  98. cribl_control_plane/models/runnablejobcollection.py +12 -8
  99. cribl_control_plane/models/runnablejobexecutor.py +12 -8
  100. cribl_control_plane/models/runnablejobscheduledsearch.py +12 -8
  101. {cribl_control_plane-0.2.1rc6.dist-info → cribl_control_plane-0.2.1rc8.dist-info}/METADATA +25 -7
  102. {cribl_control_plane-0.2.1rc6.dist-info → cribl_control_plane-0.2.1rc8.dist-info}/RECORD +103 -102
  103. {cribl_control_plane-0.2.1rc6.dist-info → cribl_control_plane-0.2.1rc8.dist-info}/WHEEL +0 -0
@@ -113,6 +113,17 @@ class OutputPrometheusAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta
113
113
  OAUTH = "oauth"
114
114
 
115
115
 
116
+ class OutputPrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
117
+ 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."""
118
+
119
+ # Error
120
+ ERROR = "error"
121
+ # Backpressure
122
+ ALWAYS = "always"
123
+ # Always On
124
+ BACKPRESSURE = "backpressure"
125
+
126
+
116
127
  class OutputPrometheusCompression(str, Enum, metaclass=utils.OpenEnumMeta):
117
128
  r"""Codec to use to compress the persisted data"""
118
129
 
@@ -131,17 +142,6 @@ class OutputPrometheusQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta)
131
142
  DROP = "drop"
132
143
 
133
144
 
134
- class OutputPrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
135
- 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."""
136
-
137
- # Error
138
- ERROR = "error"
139
- # Backpressure
140
- BACKPRESSURE = "backpressure"
141
- # Always On
142
- ALWAYS = "always"
143
-
144
-
145
145
  class OutputPrometheusPqControlsTypedDict(TypedDict):
146
146
  pass
147
147
 
@@ -235,6 +235,16 @@ class OutputPrometheusTypedDict(TypedDict):
235
235
  description: NotRequired[str]
236
236
  metrics_flush_period_sec: NotRequired[float]
237
237
  r"""How frequently metrics metadata is sent out. Value cannot be smaller than the base Flush period set above."""
238
+ pq_strict_ordering: NotRequired[bool]
239
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
240
+ pq_rate_per_sec: NotRequired[float]
241
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
242
+ pq_mode: NotRequired[OutputPrometheusMode]
243
+ 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."""
244
+ pq_max_buffer_size: NotRequired[float]
245
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
246
+ pq_max_backpressure_sec: NotRequired[float]
247
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
238
248
  pq_max_file_size: NotRequired[str]
239
249
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
240
250
  pq_max_size: NotRequired[str]
@@ -245,8 +255,6 @@ class OutputPrometheusTypedDict(TypedDict):
245
255
  r"""Codec to use to compress the persisted data"""
246
256
  pq_on_backpressure: NotRequired[OutputPrometheusQueueFullBehavior]
247
257
  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."""
248
- pq_mode: NotRequired[OutputPrometheusMode]
249
- 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."""
250
258
  pq_controls: NotRequired[OutputPrometheusPqControlsTypedDict]
251
259
  username: NotRequired[str]
252
260
  password: NotRequired[str]
@@ -402,6 +410,34 @@ class OutputPrometheus(BaseModel):
402
410
  ] = 60
403
411
  r"""How frequently metrics metadata is sent out. Value cannot be smaller than the base Flush period set above."""
404
412
 
413
+ pq_strict_ordering: Annotated[
414
+ Optional[bool], pydantic.Field(alias="pqStrictOrdering")
415
+ ] = True
416
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
417
+
418
+ pq_rate_per_sec: Annotated[
419
+ Optional[float], pydantic.Field(alias="pqRatePerSec")
420
+ ] = 0
421
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
422
+
423
+ pq_mode: Annotated[
424
+ Annotated[
425
+ Optional[OutputPrometheusMode], PlainValidator(validate_open_enum(False))
426
+ ],
427
+ pydantic.Field(alias="pqMode"),
428
+ ] = OutputPrometheusMode.ERROR
429
+ 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."""
430
+
431
+ pq_max_buffer_size: Annotated[
432
+ Optional[float], pydantic.Field(alias="pqMaxBufferSize")
433
+ ] = 42
434
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
435
+
436
+ pq_max_backpressure_sec: Annotated[
437
+ Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
438
+ ] = 30
439
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
440
+
405
441
  pq_max_file_size: Annotated[
406
442
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
407
443
  ] = "1 MB"
@@ -433,14 +469,6 @@ class OutputPrometheus(BaseModel):
433
469
  ] = OutputPrometheusQueueFullBehavior.BLOCK
434
470
  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."""
435
471
 
436
- pq_mode: Annotated[
437
- Annotated[
438
- Optional[OutputPrometheusMode], PlainValidator(validate_open_enum(False))
439
- ],
440
- pydantic.Field(alias="pqMode"),
441
- ] = OutputPrometheusMode.ERROR
442
- 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."""
443
-
444
472
  pq_controls: Annotated[
445
473
  Optional[OutputPrometheusPqControls], pydantic.Field(alias="pqControls")
446
474
  ] = None
@@ -254,6 +254,8 @@ class OutputS3TypedDict(TypedDict):
254
254
  r"""Compression level to apply before moving files to final destination"""
255
255
  automatic_schema: NotRequired[bool]
256
256
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
257
+ parquet_schema: NotRequired[str]
258
+ r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
257
259
  parquet_version: NotRequired[OutputS3ParquetVersion]
258
260
  r"""Determines which data types are supported and how they are represented"""
259
261
  parquet_data_page_version: NotRequired[OutputS3DataPageVersion]
@@ -523,6 +525,11 @@ class OutputS3(BaseModel):
523
525
  ] = False
524
526
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
525
527
 
528
+ parquet_schema: Annotated[Optional[str], pydantic.Field(alias="parquetSchema")] = (
529
+ None
530
+ )
531
+ r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
532
+
526
533
  parquet_version: Annotated[
527
534
  Annotated[
528
535
  Optional[OutputS3ParquetVersion], PlainValidator(validate_open_enum(False))
@@ -122,6 +122,17 @@ class OutputSentinelFormat(str, Enum, metaclass=utils.OpenEnumMeta):
122
122
  ADVANCED = "advanced"
123
123
 
124
124
 
125
+ class OutputSentinelMode(str, Enum, metaclass=utils.OpenEnumMeta):
126
+ 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."""
127
+
128
+ # Error
129
+ ERROR = "error"
130
+ # Backpressure
131
+ ALWAYS = "always"
132
+ # Always On
133
+ BACKPRESSURE = "backpressure"
134
+
135
+
125
136
  class OutputSentinelCompression(str, Enum, metaclass=utils.OpenEnumMeta):
126
137
  r"""Codec to use to compress the persisted data"""
127
138
 
@@ -140,17 +151,6 @@ class OutputSentinelQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
140
151
  DROP = "drop"
141
152
 
142
153
 
143
- class OutputSentinelMode(str, Enum, metaclass=utils.OpenEnumMeta):
144
- 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."""
145
-
146
- # Error
147
- ERROR = "error"
148
- # Backpressure
149
- BACKPRESSURE = "backpressure"
150
- # Always On
151
- ALWAYS = "always"
152
-
153
-
154
154
  class OutputSentinelPqControlsTypedDict(TypedDict):
155
155
  pass
156
156
 
@@ -238,6 +238,16 @@ class OutputSentinelTypedDict(TypedDict):
238
238
  r"""Custom JavaScript code to format incoming event data accessible through the __e variable. The formatted content is added to (__e['__eventOut']) if available. Otherwise, the original event is serialized as JSON. Caution: This function is evaluated in an unprotected context, allowing you to execute almost any JavaScript code."""
239
239
  format_payload_code: NotRequired[str]
240
240
  r"""Optional JavaScript code to format the payload sent to the Destination. The payload, containing a batch of formatted events, is accessible through the __e['payload'] variable. The formatted payload is returned in the __e['__payloadOut'] variable. Caution: This function is evaluated in an unprotected context, allowing you to execute almost any JavaScript code."""
241
+ pq_strict_ordering: NotRequired[bool]
242
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
243
+ pq_rate_per_sec: NotRequired[float]
244
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
245
+ pq_mode: NotRequired[OutputSentinelMode]
246
+ 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."""
247
+ pq_max_buffer_size: NotRequired[float]
248
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
249
+ pq_max_backpressure_sec: NotRequired[float]
250
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
241
251
  pq_max_file_size: NotRequired[str]
242
252
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
243
253
  pq_max_size: NotRequired[str]
@@ -248,8 +258,6 @@ class OutputSentinelTypedDict(TypedDict):
248
258
  r"""Codec to use to compress the persisted data"""
249
259
  pq_on_backpressure: NotRequired[OutputSentinelQueueFullBehavior]
250
260
  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."""
251
- pq_mode: NotRequired[OutputSentinelMode]
252
- 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."""
253
261
  pq_controls: NotRequired[OutputSentinelPqControlsTypedDict]
254
262
  url: NotRequired[str]
255
263
  r"""URL to send events to. Can be overwritten by an event's __url field."""
@@ -445,6 +453,34 @@ class OutputSentinel(BaseModel):
445
453
  ] = None
446
454
  r"""Optional JavaScript code to format the payload sent to the Destination. The payload, containing a batch of formatted events, is accessible through the __e['payload'] variable. The formatted payload is returned in the __e['__payloadOut'] variable. Caution: This function is evaluated in an unprotected context, allowing you to execute almost any JavaScript code."""
447
455
 
456
+ pq_strict_ordering: Annotated[
457
+ Optional[bool], pydantic.Field(alias="pqStrictOrdering")
458
+ ] = True
459
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
460
+
461
+ pq_rate_per_sec: Annotated[
462
+ Optional[float], pydantic.Field(alias="pqRatePerSec")
463
+ ] = 0
464
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
465
+
466
+ pq_mode: Annotated[
467
+ Annotated[
468
+ Optional[OutputSentinelMode], PlainValidator(validate_open_enum(False))
469
+ ],
470
+ pydantic.Field(alias="pqMode"),
471
+ ] = OutputSentinelMode.ERROR
472
+ 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."""
473
+
474
+ pq_max_buffer_size: Annotated[
475
+ Optional[float], pydantic.Field(alias="pqMaxBufferSize")
476
+ ] = 42
477
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
478
+
479
+ pq_max_backpressure_sec: Annotated[
480
+ Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
481
+ ] = 30
482
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
483
+
448
484
  pq_max_file_size: Annotated[
449
485
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
450
486
  ] = "1 MB"
@@ -476,14 +512,6 @@ class OutputSentinel(BaseModel):
476
512
  ] = OutputSentinelQueueFullBehavior.BLOCK
477
513
  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."""
478
514
 
479
- pq_mode: Annotated[
480
- Annotated[
481
- Optional[OutputSentinelMode], PlainValidator(validate_open_enum(False))
482
- ],
483
- pydantic.Field(alias="pqMode"),
484
- ] = OutputSentinelMode.ERROR
485
- 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."""
486
-
487
515
  pq_controls: Annotated[
488
516
  Optional[OutputSentinelPqControls], pydantic.Field(alias="pqControls")
489
517
  ] = None
@@ -134,6 +134,17 @@ class OutputSentinelOneAiSiemBackpressureBehavior(
134
134
  QUEUE = "queue"
135
135
 
136
136
 
137
+ class OutputSentinelOneAiSiemMode(str, Enum, metaclass=utils.OpenEnumMeta):
138
+ 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."""
139
+
140
+ # Error
141
+ ERROR = "error"
142
+ # Backpressure
143
+ ALWAYS = "always"
144
+ # Always On
145
+ BACKPRESSURE = "backpressure"
146
+
147
+
137
148
  class OutputSentinelOneAiSiemCompression(str, Enum, metaclass=utils.OpenEnumMeta):
138
149
  r"""Codec to use to compress the persisted data"""
139
150
 
@@ -152,17 +163,6 @@ class OutputSentinelOneAiSiemQueueFullBehavior(str, Enum, metaclass=utils.OpenEn
152
163
  DROP = "drop"
153
164
 
154
165
 
155
- class OutputSentinelOneAiSiemMode(str, Enum, metaclass=utils.OpenEnumMeta):
156
- 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."""
157
-
158
- # Error
159
- ERROR = "error"
160
- # Backpressure
161
- BACKPRESSURE = "backpressure"
162
- # Always On
163
- ALWAYS = "always"
164
-
165
-
166
166
  class OutputSentinelOneAiSiemPqControlsTypedDict(TypedDict):
167
167
  pass
168
168
 
@@ -262,6 +262,16 @@ class OutputSentinelOneAiSiemTypedDict(TypedDict):
262
262
  r"""Specify the dataSource.vendorvalue to pass as a parameter to AI SIEM. This value should reflect the vendor of the data being inserted. Don't quote this value. The default is cribl."""
263
263
  event_type: NotRequired[str]
264
264
  r"""Specify the event.type value to pass as an optional parameter to AI SIEM. This value acts as a label, grouping events into meaningful categories like Process Creation, File Modification, or Network Connection. Don't quote this value. By default, this field is empty."""
265
+ pq_strict_ordering: NotRequired[bool]
266
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
267
+ pq_rate_per_sec: NotRequired[float]
268
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
269
+ pq_mode: NotRequired[OutputSentinelOneAiSiemMode]
270
+ 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."""
271
+ pq_max_buffer_size: NotRequired[float]
272
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
273
+ pq_max_backpressure_sec: NotRequired[float]
274
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
265
275
  pq_max_file_size: NotRequired[str]
266
276
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
267
277
  pq_max_size: NotRequired[str]
@@ -272,8 +282,6 @@ class OutputSentinelOneAiSiemTypedDict(TypedDict):
272
282
  r"""Codec to use to compress the persisted data"""
273
283
  pq_on_backpressure: NotRequired[OutputSentinelOneAiSiemQueueFullBehavior]
274
284
  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."""
275
- pq_mode: NotRequired[OutputSentinelOneAiSiemMode]
276
- 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."""
277
285
  pq_controls: NotRequired[OutputSentinelOneAiSiemPqControlsTypedDict]
278
286
 
279
287
 
@@ -471,6 +479,35 @@ class OutputSentinelOneAiSiem(BaseModel):
471
479
  event_type: Annotated[Optional[str], pydantic.Field(alias="eventType")] = ""
472
480
  r"""Specify the event.type value to pass as an optional parameter to AI SIEM. This value acts as a label, grouping events into meaningful categories like Process Creation, File Modification, or Network Connection. Don't quote this value. By default, this field is empty."""
473
481
 
482
+ pq_strict_ordering: Annotated[
483
+ Optional[bool], pydantic.Field(alias="pqStrictOrdering")
484
+ ] = True
485
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
486
+
487
+ pq_rate_per_sec: Annotated[
488
+ Optional[float], pydantic.Field(alias="pqRatePerSec")
489
+ ] = 0
490
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
491
+
492
+ pq_mode: Annotated[
493
+ Annotated[
494
+ Optional[OutputSentinelOneAiSiemMode],
495
+ PlainValidator(validate_open_enum(False)),
496
+ ],
497
+ pydantic.Field(alias="pqMode"),
498
+ ] = OutputSentinelOneAiSiemMode.ERROR
499
+ 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."""
500
+
501
+ pq_max_buffer_size: Annotated[
502
+ Optional[float], pydantic.Field(alias="pqMaxBufferSize")
503
+ ] = 42
504
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
505
+
506
+ pq_max_backpressure_sec: Annotated[
507
+ Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
508
+ ] = 30
509
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
510
+
474
511
  pq_max_file_size: Annotated[
475
512
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
476
513
  ] = "1 MB"
@@ -502,15 +539,6 @@ class OutputSentinelOneAiSiem(BaseModel):
502
539
  ] = OutputSentinelOneAiSiemQueueFullBehavior.BLOCK
503
540
  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."""
504
541
 
505
- pq_mode: Annotated[
506
- Annotated[
507
- Optional[OutputSentinelOneAiSiemMode],
508
- PlainValidator(validate_open_enum(False)),
509
- ],
510
- pydantic.Field(alias="pqMode"),
511
- ] = OutputSentinelOneAiSiemMode.ERROR
512
- 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."""
513
-
514
542
  pq_controls: Annotated[
515
543
  Optional[OutputSentinelOneAiSiemPqControls], pydantic.Field(alias="pqControls")
516
544
  ] = None
@@ -227,6 +227,17 @@ class OutputServiceNowTLSSettingsClientSide(BaseModel):
227
227
  ] = None
228
228
 
229
229
 
230
+ class OutputServiceNowMode(str, Enum, metaclass=utils.OpenEnumMeta):
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
+
233
+ # Error
234
+ ERROR = "error"
235
+ # Backpressure
236
+ ALWAYS = "always"
237
+ # Always On
238
+ BACKPRESSURE = "backpressure"
239
+
240
+
230
241
  class OutputServiceNowPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
231
242
  r"""Codec to use to compress the persisted data"""
232
243
 
@@ -245,17 +256,6 @@ class OutputServiceNowQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta)
245
256
  DROP = "drop"
246
257
 
247
258
 
248
- class OutputServiceNowMode(str, Enum, metaclass=utils.OpenEnumMeta):
249
- 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."""
250
-
251
- # Error
252
- ERROR = "error"
253
- # Backpressure
254
- BACKPRESSURE = "backpressure"
255
- # Always On
256
- ALWAYS = "always"
257
-
258
-
259
259
  class OutputServiceNowPqControlsTypedDict(TypedDict):
260
260
  pass
261
261
 
@@ -335,6 +335,16 @@ class OutputServiceNowTypedDict(TypedDict):
335
335
  response_honor_retry_after_header: NotRequired[bool]
336
336
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
337
337
  tls: NotRequired[OutputServiceNowTLSSettingsClientSideTypedDict]
338
+ pq_strict_ordering: NotRequired[bool]
339
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
340
+ pq_rate_per_sec: NotRequired[float]
341
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
342
+ pq_mode: NotRequired[OutputServiceNowMode]
343
+ 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."""
344
+ pq_max_buffer_size: NotRequired[float]
345
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
346
+ pq_max_backpressure_sec: NotRequired[float]
347
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
338
348
  pq_max_file_size: NotRequired[str]
339
349
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
340
350
  pq_max_size: NotRequired[str]
@@ -345,8 +355,6 @@ class OutputServiceNowTypedDict(TypedDict):
345
355
  r"""Codec to use to compress the persisted data"""
346
356
  pq_on_backpressure: NotRequired[OutputServiceNowQueueFullBehavior]
347
357
  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."""
348
- pq_mode: NotRequired[OutputServiceNowMode]
349
- 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."""
350
358
  pq_controls: NotRequired[OutputServiceNowPqControlsTypedDict]
351
359
 
352
360
 
@@ -518,6 +526,34 @@ class OutputServiceNow(BaseModel):
518
526
 
519
527
  tls: Optional[OutputServiceNowTLSSettingsClientSide] = None
520
528
 
529
+ pq_strict_ordering: Annotated[
530
+ Optional[bool], pydantic.Field(alias="pqStrictOrdering")
531
+ ] = True
532
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
533
+
534
+ pq_rate_per_sec: Annotated[
535
+ Optional[float], pydantic.Field(alias="pqRatePerSec")
536
+ ] = 0
537
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
538
+
539
+ pq_mode: Annotated[
540
+ Annotated[
541
+ Optional[OutputServiceNowMode], PlainValidator(validate_open_enum(False))
542
+ ],
543
+ pydantic.Field(alias="pqMode"),
544
+ ] = OutputServiceNowMode.ERROR
545
+ 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."""
546
+
547
+ pq_max_buffer_size: Annotated[
548
+ Optional[float], pydantic.Field(alias="pqMaxBufferSize")
549
+ ] = 42
550
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
551
+
552
+ pq_max_backpressure_sec: Annotated[
553
+ Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
554
+ ] = 30
555
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
556
+
521
557
  pq_max_file_size: Annotated[
522
558
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
523
559
  ] = "1 MB"
@@ -549,14 +585,6 @@ class OutputServiceNow(BaseModel):
549
585
  ] = OutputServiceNowQueueFullBehavior.BLOCK
550
586
  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."""
551
587
 
552
- pq_mode: Annotated[
553
- Annotated[
554
- Optional[OutputServiceNowMode], PlainValidator(validate_open_enum(False))
555
- ],
556
- pydantic.Field(alias="pqMode"),
557
- ] = OutputServiceNowMode.ERROR
558
- 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."""
559
-
560
588
  pq_controls: Annotated[
561
589
  Optional[OutputServiceNowPqControls], pydantic.Field(alias="pqControls")
562
590
  ] = None
@@ -109,6 +109,17 @@ class OutputSignalfxBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta
109
109
  QUEUE = "queue"
110
110
 
111
111
 
112
+ class OutputSignalfxMode(str, Enum, metaclass=utils.OpenEnumMeta):
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
+
115
+ # Error
116
+ ERROR = "error"
117
+ # Backpressure
118
+ ALWAYS = "always"
119
+ # Always On
120
+ BACKPRESSURE = "backpressure"
121
+
122
+
112
123
  class OutputSignalfxCompression(str, Enum, metaclass=utils.OpenEnumMeta):
113
124
  r"""Codec to use to compress the persisted data"""
114
125
 
@@ -127,17 +138,6 @@ class OutputSignalfxQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
127
138
  DROP = "drop"
128
139
 
129
140
 
130
- class OutputSignalfxMode(str, Enum, metaclass=utils.OpenEnumMeta):
131
- 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."""
132
-
133
- # Error
134
- ERROR = "error"
135
- # Backpressure
136
- BACKPRESSURE = "backpressure"
137
- # Always On
138
- ALWAYS = "always"
139
-
140
-
141
141
  class OutputSignalfxPqControlsTypedDict(TypedDict):
142
142
  pass
143
143
 
@@ -201,6 +201,16 @@ class OutputSignalfxTypedDict(TypedDict):
201
201
  r"""SignalFx API access token (see [here](https://docs.signalfx.com/en/latest/admin-guide/tokens.html#working-with-access-tokens))"""
202
202
  text_secret: NotRequired[str]
203
203
  r"""Select or create a stored text secret"""
204
+ pq_strict_ordering: NotRequired[bool]
205
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
206
+ pq_rate_per_sec: NotRequired[float]
207
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
208
+ pq_mode: NotRequired[OutputSignalfxMode]
209
+ 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."""
210
+ pq_max_buffer_size: NotRequired[float]
211
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
212
+ pq_max_backpressure_sec: NotRequired[float]
213
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
204
214
  pq_max_file_size: NotRequired[str]
205
215
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
206
216
  pq_max_size: NotRequired[str]
@@ -211,8 +221,6 @@ class OutputSignalfxTypedDict(TypedDict):
211
221
  r"""Codec to use to compress the persisted data"""
212
222
  pq_on_backpressure: NotRequired[OutputSignalfxQueueFullBehavior]
213
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."""
214
- pq_mode: NotRequired[OutputSignalfxMode]
215
- 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."""
216
224
  pq_controls: NotRequired[OutputSignalfxPqControlsTypedDict]
217
225
 
218
226
 
@@ -338,6 +346,34 @@ class OutputSignalfx(BaseModel):
338
346
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
339
347
  r"""Select or create a stored text secret"""
340
348
 
349
+ pq_strict_ordering: Annotated[
350
+ Optional[bool], pydantic.Field(alias="pqStrictOrdering")
351
+ ] = True
352
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
353
+
354
+ pq_rate_per_sec: Annotated[
355
+ Optional[float], pydantic.Field(alias="pqRatePerSec")
356
+ ] = 0
357
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
358
+
359
+ pq_mode: Annotated[
360
+ Annotated[
361
+ Optional[OutputSignalfxMode], PlainValidator(validate_open_enum(False))
362
+ ],
363
+ pydantic.Field(alias="pqMode"),
364
+ ] = OutputSignalfxMode.ERROR
365
+ 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."""
366
+
367
+ pq_max_buffer_size: Annotated[
368
+ Optional[float], pydantic.Field(alias="pqMaxBufferSize")
369
+ ] = 42
370
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
371
+
372
+ pq_max_backpressure_sec: Annotated[
373
+ Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
374
+ ] = 30
375
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
376
+
341
377
  pq_max_file_size: Annotated[
342
378
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
343
379
  ] = "1 MB"
@@ -369,14 +405,6 @@ class OutputSignalfx(BaseModel):
369
405
  ] = OutputSignalfxQueueFullBehavior.BLOCK
370
406
  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."""
371
407
 
372
- pq_mode: Annotated[
373
- Annotated[
374
- Optional[OutputSignalfxMode], PlainValidator(validate_open_enum(False))
375
- ],
376
- pydantic.Field(alias="pqMode"),
377
- ] = OutputSignalfxMode.ERROR
378
- 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."""
379
-
380
408
  pq_controls: Annotated[
381
409
  Optional[OutputSignalfxPqControls], pydantic.Field(alias="pqControls")
382
410
  ] = None