cribl-control-plane 0.2.1rc7__py3-none-any.whl → 0.3.0a1__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 (179) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/errors/__init__.py +5 -8
  3. cribl_control_plane/errors/{healthserverstatus_error.py → healthstatus_error.py} +9 -10
  4. cribl_control_plane/groups_sdk.py +28 -52
  5. cribl_control_plane/health.py +16 -22
  6. cribl_control_plane/models/__init__.py +54 -217
  7. cribl_control_plane/models/appmode.py +14 -0
  8. cribl_control_plane/models/authtoken.py +1 -5
  9. cribl_control_plane/models/cacheconnection.py +0 -20
  10. cribl_control_plane/models/configgroup.py +7 -55
  11. cribl_control_plane/models/configgroupcloud.py +1 -11
  12. cribl_control_plane/models/createconfiggroupbyproductop.py +5 -17
  13. cribl_control_plane/models/createroutesappendbyidop.py +2 -2
  14. cribl_control_plane/models/createversionundoop.py +3 -3
  15. cribl_control_plane/models/cribllakedataset.py +1 -11
  16. cribl_control_plane/models/cribllakedatasetupdate.py +1 -11
  17. cribl_control_plane/models/datasetmetadata.py +1 -11
  18. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +0 -11
  19. cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
  20. cribl_control_plane/models/distributedsummary.py +0 -6
  21. cribl_control_plane/models/error.py +16 -0
  22. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +0 -20
  23. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +0 -20
  24. cribl_control_plane/models/getconfiggroupbyproductandidop.py +0 -11
  25. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +0 -11
  26. cribl_control_plane/models/gethealthinfoop.py +17 -0
  27. cribl_control_plane/models/getsummaryop.py +0 -11
  28. cribl_control_plane/models/hbcriblinfo.py +3 -24
  29. cribl_control_plane/models/{healthserverstatus.py → healthstatus.py} +8 -27
  30. cribl_control_plane/models/heartbeatmetadata.py +0 -3
  31. cribl_control_plane/models/input.py +78 -80
  32. cribl_control_plane/models/inputappscope.py +17 -80
  33. cribl_control_plane/models/inputazureblob.py +1 -33
  34. cribl_control_plane/models/inputcollection.py +1 -24
  35. cribl_control_plane/models/inputconfluentcloud.py +18 -195
  36. cribl_control_plane/models/inputcribl.py +1 -24
  37. cribl_control_plane/models/inputcriblhttp.py +17 -62
  38. cribl_control_plane/models/inputcribllakehttp.py +17 -62
  39. cribl_control_plane/models/inputcriblmetrics.py +1 -24
  40. cribl_control_plane/models/inputcribltcp.py +17 -62
  41. cribl_control_plane/models/inputcrowdstrike.py +1 -54
  42. cribl_control_plane/models/inputdatadogagent.py +17 -62
  43. cribl_control_plane/models/inputdatagen.py +1 -24
  44. cribl_control_plane/models/inputedgeprometheus.py +34 -147
  45. cribl_control_plane/models/inputelastic.py +27 -119
  46. cribl_control_plane/models/inputeventhub.py +1 -182
  47. cribl_control_plane/models/inputexec.py +1 -33
  48. cribl_control_plane/models/inputfile.py +3 -42
  49. cribl_control_plane/models/inputfirehose.py +17 -62
  50. cribl_control_plane/models/inputgooglepubsub.py +1 -36
  51. cribl_control_plane/models/inputgrafana.py +32 -157
  52. cribl_control_plane/models/inputhttp.py +17 -62
  53. cribl_control_plane/models/inputhttpraw.py +17 -62
  54. cribl_control_plane/models/inputjournalfiles.py +1 -24
  55. cribl_control_plane/models/inputkafka.py +17 -189
  56. cribl_control_plane/models/inputkinesis.py +1 -80
  57. cribl_control_plane/models/inputkubeevents.py +1 -24
  58. cribl_control_plane/models/inputkubelogs.py +1 -33
  59. cribl_control_plane/models/inputkubemetrics.py +1 -33
  60. cribl_control_plane/models/inputloki.py +17 -71
  61. cribl_control_plane/models/inputmetrics.py +17 -62
  62. cribl_control_plane/models/inputmodeldriventelemetry.py +17 -62
  63. cribl_control_plane/models/inputmsk.py +18 -81
  64. cribl_control_plane/models/inputnetflow.py +1 -24
  65. cribl_control_plane/models/inputoffice365mgmt.py +1 -67
  66. cribl_control_plane/models/inputoffice365msgtrace.py +1 -67
  67. cribl_control_plane/models/inputoffice365service.py +1 -67
  68. cribl_control_plane/models/inputopentelemetry.py +16 -92
  69. cribl_control_plane/models/inputprometheus.py +34 -138
  70. cribl_control_plane/models/inputprometheusrw.py +17 -71
  71. cribl_control_plane/models/inputrawudp.py +1 -24
  72. cribl_control_plane/models/inputs3.py +1 -45
  73. cribl_control_plane/models/inputs3inventory.py +1 -54
  74. cribl_control_plane/models/inputsecuritylake.py +1 -54
  75. cribl_control_plane/models/inputsnmp.py +1 -40
  76. cribl_control_plane/models/inputsplunk.py +17 -85
  77. cribl_control_plane/models/inputsplunkhec.py +16 -70
  78. cribl_control_plane/models/inputsplunksearch.py +1 -63
  79. cribl_control_plane/models/inputsqs.py +1 -56
  80. cribl_control_plane/models/inputsyslog.py +32 -121
  81. cribl_control_plane/models/inputsystemmetrics.py +9 -142
  82. cribl_control_plane/models/inputsystemstate.py +1 -33
  83. cribl_control_plane/models/inputtcp.py +17 -81
  84. cribl_control_plane/models/inputtcpjson.py +17 -71
  85. cribl_control_plane/models/inputwef.py +1 -71
  86. cribl_control_plane/models/inputwindowsmetrics.py +9 -129
  87. cribl_control_plane/models/inputwineventlogs.py +1 -60
  88. cribl_control_plane/models/inputwiz.py +1 -45
  89. cribl_control_plane/models/inputwizwebhook.py +17 -62
  90. cribl_control_plane/models/inputzscalerhec.py +16 -70
  91. cribl_control_plane/models/jobinfo.py +1 -4
  92. cribl_control_plane/models/jobstatus.py +3 -34
  93. cribl_control_plane/models/listconfiggroupbyproductop.py +0 -11
  94. cribl_control_plane/models/logininfo.py +3 -3
  95. cribl_control_plane/models/masterworkerentry.py +1 -11
  96. cribl_control_plane/models/nodeprovidedinfo.py +1 -11
  97. cribl_control_plane/models/nodeupgradestatus.py +0 -38
  98. cribl_control_plane/models/output.py +88 -93
  99. cribl_control_plane/models/outputazureblob.py +1 -110
  100. cribl_control_plane/models/outputazuredataexplorer.py +87 -452
  101. cribl_control_plane/models/outputazureeventhub.py +19 -281
  102. cribl_control_plane/models/outputazurelogs.py +19 -115
  103. cribl_control_plane/models/outputchronicle.py +19 -115
  104. cribl_control_plane/models/outputclickhouse.py +19 -155
  105. cribl_control_plane/models/outputcloudwatch.py +19 -106
  106. cribl_control_plane/models/outputconfluentcloud.py +38 -311
  107. cribl_control_plane/models/outputcriblhttp.py +19 -135
  108. cribl_control_plane/models/outputcribllake.py +1 -97
  109. cribl_control_plane/models/outputcribltcp.py +19 -132
  110. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +20 -129
  111. cribl_control_plane/models/outputdatadog.py +19 -159
  112. cribl_control_plane/models/outputdataset.py +19 -143
  113. cribl_control_plane/models/outputdiskspool.py +1 -11
  114. cribl_control_plane/models/outputdls3.py +1 -152
  115. cribl_control_plane/models/outputdynatracehttp.py +19 -160
  116. cribl_control_plane/models/outputdynatraceotlp.py +19 -160
  117. cribl_control_plane/models/outputelastic.py +19 -163
  118. cribl_control_plane/models/outputelasticcloud.py +19 -140
  119. cribl_control_plane/models/outputexabeam.py +1 -61
  120. cribl_control_plane/models/outputfilesystem.py +1 -87
  121. cribl_control_plane/models/outputgooglechronicle.py +20 -166
  122. cribl_control_plane/models/outputgooglecloudlogging.py +20 -131
  123. cribl_control_plane/models/outputgooglecloudstorage.py +1 -136
  124. cribl_control_plane/models/outputgooglepubsub.py +19 -106
  125. cribl_control_plane/models/outputgrafanacloud.py +37 -288
  126. cribl_control_plane/models/outputgraphite.py +19 -105
  127. cribl_control_plane/models/outputhoneycomb.py +19 -115
  128. cribl_control_plane/models/outputhumiohec.py +19 -126
  129. cribl_control_plane/models/outputinfluxdb.py +19 -130
  130. cribl_control_plane/models/outputkafka.py +34 -302
  131. cribl_control_plane/models/outputkinesis.py +19 -133
  132. cribl_control_plane/models/outputloki.py +17 -129
  133. cribl_control_plane/models/outputminio.py +1 -145
  134. cribl_control_plane/models/outputmsk.py +34 -193
  135. cribl_control_plane/models/outputnewrelic.py +19 -136
  136. cribl_control_plane/models/outputnewrelicevents.py +20 -128
  137. cribl_control_plane/models/outputopentelemetry.py +19 -178
  138. cribl_control_plane/models/outputprometheus.py +19 -115
  139. cribl_control_plane/models/outputring.py +1 -31
  140. cribl_control_plane/models/outputs3.py +1 -152
  141. cribl_control_plane/models/outputsecuritylake.py +1 -114
  142. cribl_control_plane/models/outputsentinel.py +19 -135
  143. cribl_control_plane/models/outputsentineloneaisiem.py +20 -134
  144. cribl_control_plane/models/outputservicenow.py +19 -168
  145. cribl_control_plane/models/outputsignalfx.py +19 -115
  146. cribl_control_plane/models/outputsns.py +17 -113
  147. cribl_control_plane/models/outputsplunk.py +19 -153
  148. cribl_control_plane/models/outputsplunkhec.py +19 -208
  149. cribl_control_plane/models/outputsplunklb.py +19 -182
  150. cribl_control_plane/models/outputsqs.py +17 -124
  151. cribl_control_plane/models/outputstatsd.py +19 -105
  152. cribl_control_plane/models/outputstatsdext.py +19 -105
  153. cribl_control_plane/models/outputsumologic.py +19 -117
  154. cribl_control_plane/models/outputsyslog.py +96 -259
  155. cribl_control_plane/models/outputtcpjson.py +19 -141
  156. cribl_control_plane/models/outputwavefront.py +19 -115
  157. cribl_control_plane/models/outputwebhook.py +19 -161
  158. cribl_control_plane/models/outputxsiam.py +17 -113
  159. cribl_control_plane/models/packinfo.py +5 -8
  160. cribl_control_plane/models/packinstallinfo.py +5 -8
  161. cribl_control_plane/models/resourcepolicy.py +0 -11
  162. cribl_control_plane/models/{uploadpackresponse.py → routecloneconf.py} +4 -4
  163. cribl_control_plane/models/routeconf.py +4 -3
  164. cribl_control_plane/models/runnablejobcollection.py +9 -72
  165. cribl_control_plane/models/runnablejobexecutor.py +9 -32
  166. cribl_control_plane/models/runnablejobscheduledsearch.py +9 -23
  167. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +0 -11
  168. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +0 -11
  169. cribl_control_plane/packs.py +7 -202
  170. cribl_control_plane/routes_sdk.py +6 -6
  171. cribl_control_plane/tokens.py +15 -23
  172. {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/METADATA +9 -50
  173. cribl_control_plane-0.3.0a1.dist-info/RECORD +330 -0
  174. cribl_control_plane/models/groupcreaterequest.py +0 -171
  175. cribl_control_plane/models/outpostnodeinfo.py +0 -16
  176. cribl_control_plane/models/outputdatabricks.py +0 -482
  177. cribl_control_plane/models/updatepacksop.py +0 -25
  178. cribl_control_plane-0.2.1rc7.dist-info/RECORD +0 -331
  179. {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/WHEEL +0 -0
@@ -1,12 +1,11 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from cribl_control_plane import utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
- from pydantic import field_serializer
10
9
  from pydantic.functional_validators import PlainValidator
11
10
  from typing import List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -19,29 +18,22 @@ class OutputFilesystemType(str, Enum):
19
18
  class OutputFilesystemDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
20
19
  r"""Format of the output data"""
21
20
 
22
- # JSON
23
21
  JSON = "json"
24
- # Raw
25
22
  RAW = "raw"
26
- # Parquet
27
23
  PARQUET = "parquet"
28
24
 
29
25
 
30
26
  class OutputFilesystemBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
31
27
  r"""How to handle events when all receivers are exerting backpressure"""
32
28
 
33
- # Block
34
29
  BLOCK = "block"
35
- # Drop
36
30
  DROP = "drop"
37
31
 
38
32
 
39
33
  class OutputFilesystemDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
40
34
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
41
35
 
42
- # Block
43
36
  BLOCK = "block"
44
- # Drop
45
37
  DROP = "drop"
46
38
 
47
39
 
@@ -55,31 +47,23 @@ class OutputFilesystemCompression(str, Enum, metaclass=utils.OpenEnumMeta):
55
47
  class OutputFilesystemCompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
56
48
  r"""Compression level to apply before moving files to final destination"""
57
49
 
58
- # Best Speed
59
50
  BEST_SPEED = "best_speed"
60
- # Normal
61
51
  NORMAL = "normal"
62
- # Best Compression
63
52
  BEST_COMPRESSION = "best_compression"
64
53
 
65
54
 
66
55
  class OutputFilesystemParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
67
56
  r"""Determines which data types are supported and how they are represented"""
68
57
 
69
- # 1.0
70
58
  PARQUET_1_0 = "PARQUET_1_0"
71
- # 2.4
72
59
  PARQUET_2_4 = "PARQUET_2_4"
73
- # 2.6
74
60
  PARQUET_2_6 = "PARQUET_2_6"
75
61
 
76
62
 
77
63
  class OutputFilesystemDataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
78
64
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
79
65
 
80
- # V1
81
66
  DATA_PAGE_V1 = "DATA_PAGE_V1"
82
- # V2
83
67
  DATA_PAGE_V2 = "DATA_PAGE_V2"
84
68
 
85
69
 
@@ -147,8 +131,6 @@ class OutputFilesystemTypedDict(TypedDict):
147
131
  r"""Compression level to apply before moving files to final destination"""
148
132
  automatic_schema: NotRequired[bool]
149
133
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
150
- parquet_schema: NotRequired[str]
151
- r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
152
134
  parquet_version: NotRequired[OutputFilesystemParquetVersion]
153
135
  r"""Determines which data types are supported and how they are represented"""
154
136
  parquet_data_page_version: NotRequired[OutputFilesystemDataPageVersion]
@@ -307,11 +289,6 @@ class OutputFilesystem(BaseModel):
307
289
  ] = False
308
290
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
309
291
 
310
- parquet_schema: Annotated[Optional[str], pydantic.Field(alias="parquetSchema")] = (
311
- None
312
- )
313
- r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
314
-
315
292
  parquet_version: Annotated[
316
293
  Annotated[
317
294
  Optional[OutputFilesystemParquetVersion],
@@ -378,66 +355,3 @@ class OutputFilesystem(BaseModel):
378
355
 
379
356
  max_retry_num: Annotated[Optional[float], pydantic.Field(alias="maxRetryNum")] = 20
380
357
  r"""The maximum number of times a file will attempt to move to its final destination before being dead-lettered"""
381
-
382
- @field_serializer("format_")
383
- def serialize_format_(self, value):
384
- if isinstance(value, str):
385
- try:
386
- return models.OutputFilesystemDataFormat(value)
387
- except ValueError:
388
- return value
389
- return value
390
-
391
- @field_serializer("on_backpressure")
392
- def serialize_on_backpressure(self, value):
393
- if isinstance(value, str):
394
- try:
395
- return models.OutputFilesystemBackpressureBehavior(value)
396
- except ValueError:
397
- return value
398
- return value
399
-
400
- @field_serializer("on_disk_full_backpressure")
401
- def serialize_on_disk_full_backpressure(self, value):
402
- if isinstance(value, str):
403
- try:
404
- return models.OutputFilesystemDiskSpaceProtection(value)
405
- except ValueError:
406
- return value
407
- return value
408
-
409
- @field_serializer("compress")
410
- def serialize_compress(self, value):
411
- if isinstance(value, str):
412
- try:
413
- return models.OutputFilesystemCompression(value)
414
- except ValueError:
415
- return value
416
- return value
417
-
418
- @field_serializer("compression_level")
419
- def serialize_compression_level(self, value):
420
- if isinstance(value, str):
421
- try:
422
- return models.OutputFilesystemCompressionLevel(value)
423
- except ValueError:
424
- return value
425
- return value
426
-
427
- @field_serializer("parquet_version")
428
- def serialize_parquet_version(self, value):
429
- if isinstance(value, str):
430
- try:
431
- return models.OutputFilesystemParquetVersion(value)
432
- except ValueError:
433
- return value
434
- return value
435
-
436
- @field_serializer("parquet_data_page_version")
437
- def serialize_parquet_data_page_version(self, value):
438
- if isinstance(value, str):
439
- try:
440
- return models.OutputFilesystemDataPageVersion(value)
441
- except ValueError:
442
- return value
443
- return value
@@ -1,12 +1,11 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from cribl_control_plane import utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
- from pydantic import field_serializer
10
9
  from pydantic.functional_validators import PlainValidator
11
10
  from typing import List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -17,22 +16,16 @@ class OutputGoogleChronicleType(str, Enum):
17
16
 
18
17
 
19
18
  class OutputGoogleChronicleAPIVersion(str, Enum, metaclass=utils.OpenEnumMeta):
20
- # V1
21
19
  V1 = "v1"
22
- # V2
23
20
  V2 = "v2"
24
21
 
25
22
 
26
23
  class OutputGoogleChronicleAuthenticationMethod(
27
24
  str, Enum, metaclass=utils.OpenEnumMeta
28
25
  ):
29
- # API key
30
26
  MANUAL = "manual"
31
- # API key secret
32
27
  SECRET = "secret"
33
- # Service account credentials
34
28
  SERVICE_ACCOUNT = "serviceAccount"
35
- # Service account credentials secret
36
29
  SERVICE_ACCOUNT_SECRET = "serviceAccountSecret"
37
30
 
38
31
 
@@ -91,9 +84,7 @@ class OutputGoogleChronicleTimeoutRetrySettings(BaseModel):
91
84
 
92
85
 
93
86
  class SendEventsAs(str, Enum, metaclass=utils.OpenEnumMeta):
94
- # Unstructured
95
87
  UNSTRUCTURED = "unstructured"
96
- # UDM
97
88
  UDM = "udm"
98
89
 
99
90
 
@@ -113,11 +104,8 @@ class OutputGoogleChronicleFailedRequestLoggingMode(
113
104
  ):
114
105
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
115
106
 
116
- # Payload
117
107
  PAYLOAD = "payload"
118
- # Payload + Headers
119
108
  PAYLOAD_AND_HEADERS = "payloadAndHeaders"
120
- # None
121
109
  NONE = "none"
122
110
 
123
111
 
@@ -126,11 +114,8 @@ class OutputGoogleChronicleBackpressureBehavior(
126
114
  ):
127
115
  r"""How to handle events when all receivers are exerting backpressure"""
128
116
 
129
- # Block
130
117
  BLOCK = "block"
131
- # Drop
132
118
  DROP = "drop"
133
- # Persistent Queue
134
119
  QUEUE = "queue"
135
120
 
136
121
 
@@ -156,42 +141,28 @@ class OutputGoogleChronicleCustomLabel(BaseModel):
156
141
  value: str
157
142
 
158
143
 
159
- class UDMType(str, Enum, metaclass=utils.OpenEnumMeta):
160
- r"""Defines the specific format for UDM events sent to Google SecOps. This must match the type of UDM data being sent."""
161
-
162
- ENTITIES = "entities"
163
- LOGS = "logs"
164
-
165
-
166
- class OutputGoogleChronicleMode(str, Enum, metaclass=utils.OpenEnumMeta):
167
- 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."""
168
-
169
- # Error
170
- ERROR = "error"
171
- # Backpressure
172
- ALWAYS = "always"
173
- # Always On
174
- BACKPRESSURE = "backpressure"
175
-
176
-
177
144
  class OutputGoogleChronicleCompression(str, Enum, metaclass=utils.OpenEnumMeta):
178
145
  r"""Codec to use to compress the persisted data"""
179
146
 
180
- # None
181
147
  NONE = "none"
182
- # Gzip
183
148
  GZIP = "gzip"
184
149
 
185
150
 
186
151
  class OutputGoogleChronicleQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
187
152
  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."""
188
153
 
189
- # Block
190
154
  BLOCK = "block"
191
- # Drop new data
192
155
  DROP = "drop"
193
156
 
194
157
 
158
+ class OutputGoogleChronicleMode(str, Enum, metaclass=utils.OpenEnumMeta):
159
+ 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."""
160
+
161
+ ERROR = "error"
162
+ BACKPRESSURE = "backpressure"
163
+ ALWAYS = "always"
164
+
165
+
195
166
  class OutputGoogleChroniclePqControlsTypedDict(TypedDict):
196
167
  pass
197
168
 
@@ -270,8 +241,6 @@ class OutputGoogleChronicleTypedDict(TypedDict):
270
241
  r"""User-configured environment namespace to identify the data domain the logs originated from. Use namespace as a tag to identify the appropriate data domain for indexing and enrichment functionality. Can be overwritten by event field __namespace."""
271
242
  custom_labels: NotRequired[List[OutputGoogleChronicleCustomLabelTypedDict]]
272
243
  r"""Custom labels to be added to every batch"""
273
- udm_type: NotRequired[UDMType]
274
- r"""Defines the specific format for UDM events sent to Google SecOps. This must match the type of UDM data being sent."""
275
244
  api_key: NotRequired[str]
276
245
  r"""Organization's API key in Google SecOps"""
277
246
  api_key_secret: NotRequired[str]
@@ -280,16 +249,6 @@ class OutputGoogleChronicleTypedDict(TypedDict):
280
249
  r"""Contents of service account credentials (JSON keys) file downloaded from Google Cloud. To upload a file, click the upload button at this field's upper right."""
281
250
  service_account_credentials_secret: NotRequired[str]
282
251
  r"""Select or create a stored text secret"""
283
- pq_strict_ordering: NotRequired[bool]
284
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
285
- pq_rate_per_sec: NotRequired[float]
286
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
287
- pq_mode: NotRequired[OutputGoogleChronicleMode]
288
- 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."""
289
- pq_max_buffer_size: NotRequired[float]
290
- r"""The maximum number of events to hold in memory before writing the events to disk"""
291
- pq_max_backpressure_sec: NotRequired[float]
292
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
293
252
  pq_max_file_size: NotRequired[str]
294
253
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
295
254
  pq_max_size: NotRequired[str]
@@ -300,6 +259,8 @@ class OutputGoogleChronicleTypedDict(TypedDict):
300
259
  r"""Codec to use to compress the persisted data"""
301
260
  pq_on_backpressure: NotRequired[OutputGoogleChronicleQueueFullBehavior]
302
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[OutputGoogleChronicleMode]
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."""
303
264
  pq_controls: NotRequired[OutputGoogleChroniclePqControlsTypedDict]
304
265
 
305
266
 
@@ -461,12 +422,6 @@ class OutputGoogleChronicle(BaseModel):
461
422
  ] = None
462
423
  r"""Custom labels to be added to every batch"""
463
424
 
464
- udm_type: Annotated[
465
- Annotated[Optional[UDMType], PlainValidator(validate_open_enum(False))],
466
- pydantic.Field(alias="udmType"),
467
- ] = UDMType.LOGS
468
- r"""Defines the specific format for UDM events sent to Google SecOps. This must match the type of UDM data being sent."""
469
-
470
425
  api_key: Annotated[Optional[str], pydantic.Field(alias="apiKey")] = None
471
426
  r"""Organization's API key in Google SecOps"""
472
427
 
@@ -485,35 +440,6 @@ class OutputGoogleChronicle(BaseModel):
485
440
  ] = None
486
441
  r"""Select or create a stored text secret"""
487
442
 
488
- pq_strict_ordering: Annotated[
489
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
490
- ] = True
491
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
492
-
493
- pq_rate_per_sec: Annotated[
494
- Optional[float], pydantic.Field(alias="pqRatePerSec")
495
- ] = 0
496
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
497
-
498
- pq_mode: Annotated[
499
- Annotated[
500
- Optional[OutputGoogleChronicleMode],
501
- PlainValidator(validate_open_enum(False)),
502
- ],
503
- pydantic.Field(alias="pqMode"),
504
- ] = OutputGoogleChronicleMode.ERROR
505
- 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."""
506
-
507
- pq_max_buffer_size: Annotated[
508
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
509
- ] = 42
510
- r"""The maximum number of events to hold in memory before writing the events to disk"""
511
-
512
- pq_max_backpressure_sec: Annotated[
513
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
514
- ] = 30
515
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
516
-
517
443
  pq_max_file_size: Annotated[
518
444
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
519
445
  ] = "1 MB"
@@ -545,87 +471,15 @@ class OutputGoogleChronicle(BaseModel):
545
471
  ] = OutputGoogleChronicleQueueFullBehavior.BLOCK
546
472
  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."""
547
473
 
474
+ pq_mode: Annotated[
475
+ Annotated[
476
+ Optional[OutputGoogleChronicleMode],
477
+ PlainValidator(validate_open_enum(False)),
478
+ ],
479
+ pydantic.Field(alias="pqMode"),
480
+ ] = OutputGoogleChronicleMode.ERROR
481
+ 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."""
482
+
548
483
  pq_controls: Annotated[
549
484
  Optional[OutputGoogleChroniclePqControls], pydantic.Field(alias="pqControls")
550
485
  ] = None
551
-
552
- @field_serializer("api_version")
553
- def serialize_api_version(self, value):
554
- if isinstance(value, str):
555
- try:
556
- return models.OutputGoogleChronicleAPIVersion(value)
557
- except ValueError:
558
- return value
559
- return value
560
-
561
- @field_serializer("authentication_method")
562
- def serialize_authentication_method(self, value):
563
- if isinstance(value, str):
564
- try:
565
- return models.OutputGoogleChronicleAuthenticationMethod(value)
566
- except ValueError:
567
- return value
568
- return value
569
-
570
- @field_serializer("log_format_type")
571
- def serialize_log_format_type(self, value):
572
- if isinstance(value, str):
573
- try:
574
- return models.SendEventsAs(value)
575
- except ValueError:
576
- return value
577
- return value
578
-
579
- @field_serializer("failed_request_logging_mode")
580
- def serialize_failed_request_logging_mode(self, value):
581
- if isinstance(value, str):
582
- try:
583
- return models.OutputGoogleChronicleFailedRequestLoggingMode(value)
584
- except ValueError:
585
- return value
586
- return value
587
-
588
- @field_serializer("on_backpressure")
589
- def serialize_on_backpressure(self, value):
590
- if isinstance(value, str):
591
- try:
592
- return models.OutputGoogleChronicleBackpressureBehavior(value)
593
- except ValueError:
594
- return value
595
- return value
596
-
597
- @field_serializer("udm_type")
598
- def serialize_udm_type(self, value):
599
- if isinstance(value, str):
600
- try:
601
- return models.UDMType(value)
602
- except ValueError:
603
- return value
604
- return value
605
-
606
- @field_serializer("pq_mode")
607
- def serialize_pq_mode(self, value):
608
- if isinstance(value, str):
609
- try:
610
- return models.OutputGoogleChronicleMode(value)
611
- except ValueError:
612
- return value
613
- return value
614
-
615
- @field_serializer("pq_compress")
616
- def serialize_pq_compress(self, value):
617
- if isinstance(value, str):
618
- try:
619
- return models.OutputGoogleChronicleCompression(value)
620
- except ValueError:
621
- return value
622
- return value
623
-
624
- @field_serializer("pq_on_backpressure")
625
- def serialize_pq_on_backpressure(self, value):
626
- if isinstance(value, str):
627
- try:
628
- return models.OutputGoogleChronicleQueueFullBehavior(value)
629
- except ValueError:
630
- return value
631
- return value