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
@@ -30,11 +29,8 @@ class OutputElasticExtraHTTPHeader(BaseModel):
30
29
  class OutputElasticFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
31
30
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
32
31
 
33
- # Payload
34
32
  PAYLOAD = "payload"
35
- # Payload + Headers
36
33
  PAYLOAD_AND_HEADERS = "payloadAndHeaders"
37
- # None
38
34
  NONE = "none"
39
35
 
40
36
 
@@ -114,25 +110,13 @@ class OutputElasticAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta)
114
110
 
115
111
  class OutputElasticAuthTypedDict(TypedDict):
116
112
  disabled: NotRequired[bool]
117
- username: NotRequired[str]
118
- password: NotRequired[str]
119
113
  auth_type: NotRequired[OutputElasticAuthenticationMethod]
120
114
  r"""Enter credentials directly, or select a stored secret"""
121
- credentials_secret: NotRequired[str]
122
- r"""Select or create a secret that references your credentials"""
123
- manual_api_key: NotRequired[str]
124
- r"""Enter API key directly"""
125
- text_secret: NotRequired[str]
126
- r"""Select or create a stored text secret"""
127
115
 
128
116
 
129
117
  class OutputElasticAuth(BaseModel):
130
118
  disabled: Optional[bool] = True
131
119
 
132
- username: Optional[str] = None
133
-
134
- password: Optional[str] = None
135
-
136
120
  auth_type: Annotated[
137
121
  Annotated[
138
122
  Optional[OutputElasticAuthenticationMethod],
@@ -142,57 +126,27 @@ class OutputElasticAuth(BaseModel):
142
126
  ] = OutputElasticAuthenticationMethod.MANUAL
143
127
  r"""Enter credentials directly, or select a stored secret"""
144
128
 
145
- credentials_secret: Annotated[
146
- Optional[str], pydantic.Field(alias="credentialsSecret")
147
- ] = None
148
- r"""Select or create a secret that references your credentials"""
149
-
150
- manual_api_key: Annotated[Optional[str], pydantic.Field(alias="manualAPIKey")] = (
151
- None
152
- )
153
- r"""Enter API key directly"""
154
-
155
- text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
156
- r"""Select or create a stored text secret"""
157
-
158
- @field_serializer("auth_type")
159
- def serialize_auth_type(self, value):
160
- if isinstance(value, str):
161
- try:
162
- return models.OutputElasticAuthenticationMethod(value)
163
- except ValueError:
164
- return value
165
- return value
166
-
167
129
 
168
130
  class ElasticVersion(str, Enum, metaclass=utils.OpenEnumMeta):
169
131
  r"""Optional Elasticsearch version, used to format events. If not specified, will auto-discover version."""
170
132
 
171
- # Auto
172
133
  AUTO = "auto"
173
- # 6.x
174
134
  SIX = "6"
175
- # 7.x
176
135
  SEVEN = "7"
177
136
 
178
137
 
179
138
  class WriteAction(str, Enum, metaclass=utils.OpenEnumMeta):
180
139
  r"""Action to use when writing events. Must be set to `Create` when writing to a data stream."""
181
140
 
182
- # Index
183
141
  INDEX = "index"
184
- # Create
185
142
  CREATE = "create"
186
143
 
187
144
 
188
145
  class OutputElasticBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
189
146
  r"""How to handle events when all receivers are exerting backpressure"""
190
147
 
191
- # Block
192
148
  BLOCK = "block"
193
- # Drop
194
149
  DROP = "drop"
195
- # Persistent Queue
196
150
  QUEUE = "queue"
197
151
 
198
152
 
@@ -211,35 +165,28 @@ class OutputElasticURL(BaseModel):
211
165
  r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
212
166
 
213
167
 
214
- class OutputElasticMode(str, Enum, metaclass=utils.OpenEnumMeta):
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
-
217
- # Error
218
- ERROR = "error"
219
- # Backpressure
220
- ALWAYS = "always"
221
- # Always On
222
- BACKPRESSURE = "backpressure"
223
-
224
-
225
168
  class OutputElasticCompression(str, Enum, metaclass=utils.OpenEnumMeta):
226
169
  r"""Codec to use to compress the persisted data"""
227
170
 
228
- # None
229
171
  NONE = "none"
230
- # Gzip
231
172
  GZIP = "gzip"
232
173
 
233
174
 
234
175
  class OutputElasticQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
235
176
  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."""
236
177
 
237
- # Block
238
178
  BLOCK = "block"
239
- # Drop new data
240
179
  DROP = "drop"
241
180
 
242
181
 
182
+ class OutputElasticMode(str, Enum, metaclass=utils.OpenEnumMeta):
183
+ 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."""
184
+
185
+ ERROR = "error"
186
+ BACKPRESSURE = "backpressure"
187
+ ALWAYS = "always"
188
+
189
+
243
190
  class OutputElasticPqControlsTypedDict(TypedDict):
244
191
  pass
245
192
 
@@ -322,16 +269,6 @@ class OutputElasticTypedDict(TypedDict):
322
269
  r"""The interval in which to re-resolve any hostnames and pick up destinations from A records"""
323
270
  load_balance_stats_period_sec: NotRequired[float]
324
271
  r"""How far back in time to keep traffic stats for load balancing purposes"""
325
- pq_strict_ordering: NotRequired[bool]
326
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
327
- pq_rate_per_sec: NotRequired[float]
328
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
329
- pq_mode: NotRequired[OutputElasticMode]
330
- 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."""
331
- pq_max_buffer_size: NotRequired[float]
332
- r"""The maximum number of events to hold in memory before writing the events to disk"""
333
- pq_max_backpressure_sec: NotRequired[float]
334
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
335
272
  pq_max_file_size: NotRequired[str]
336
273
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
337
274
  pq_max_size: NotRequired[str]
@@ -342,6 +279,8 @@ class OutputElasticTypedDict(TypedDict):
342
279
  r"""Codec to use to compress the persisted data"""
343
280
  pq_on_backpressure: NotRequired[OutputElasticQueueFullBehavior]
344
281
  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."""
282
+ pq_mode: NotRequired[OutputElasticMode]
283
+ 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."""
345
284
  pq_controls: NotRequired[OutputElasticPqControlsTypedDict]
346
285
 
347
286
 
@@ -511,34 +450,6 @@ class OutputElastic(BaseModel):
511
450
  ] = 300
512
451
  r"""How far back in time to keep traffic stats for load balancing purposes"""
513
452
 
514
- pq_strict_ordering: Annotated[
515
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
516
- ] = True
517
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
518
-
519
- pq_rate_per_sec: Annotated[
520
- Optional[float], pydantic.Field(alias="pqRatePerSec")
521
- ] = 0
522
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
523
-
524
- pq_mode: Annotated[
525
- Annotated[
526
- Optional[OutputElasticMode], PlainValidator(validate_open_enum(False))
527
- ],
528
- pydantic.Field(alias="pqMode"),
529
- ] = OutputElasticMode.ERROR
530
- 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."""
531
-
532
- pq_max_buffer_size: Annotated[
533
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
534
- ] = 42
535
- r"""The maximum number of events to hold in memory before writing the events to disk"""
536
-
537
- pq_max_backpressure_sec: Annotated[
538
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
539
- ] = 30
540
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
541
-
542
453
  pq_max_file_size: Annotated[
543
454
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
544
455
  ] = "1 MB"
@@ -570,69 +481,14 @@ class OutputElastic(BaseModel):
570
481
  ] = OutputElasticQueueFullBehavior.BLOCK
571
482
  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."""
572
483
 
484
+ pq_mode: Annotated[
485
+ Annotated[
486
+ Optional[OutputElasticMode], PlainValidator(validate_open_enum(False))
487
+ ],
488
+ pydantic.Field(alias="pqMode"),
489
+ ] = OutputElasticMode.ERROR
490
+ 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."""
491
+
573
492
  pq_controls: Annotated[
574
493
  Optional[OutputElasticPqControls], pydantic.Field(alias="pqControls")
575
494
  ] = None
576
-
577
- @field_serializer("failed_request_logging_mode")
578
- def serialize_failed_request_logging_mode(self, value):
579
- if isinstance(value, str):
580
- try:
581
- return models.OutputElasticFailedRequestLoggingMode(value)
582
- except ValueError:
583
- return value
584
- return value
585
-
586
- @field_serializer("elastic_version")
587
- def serialize_elastic_version(self, value):
588
- if isinstance(value, str):
589
- try:
590
- return models.ElasticVersion(value)
591
- except ValueError:
592
- return value
593
- return value
594
-
595
- @field_serializer("write_action")
596
- def serialize_write_action(self, value):
597
- if isinstance(value, str):
598
- try:
599
- return models.WriteAction(value)
600
- except ValueError:
601
- return value
602
- return value
603
-
604
- @field_serializer("on_backpressure")
605
- def serialize_on_backpressure(self, value):
606
- if isinstance(value, str):
607
- try:
608
- return models.OutputElasticBackpressureBehavior(value)
609
- except ValueError:
610
- return value
611
- return value
612
-
613
- @field_serializer("pq_mode")
614
- def serialize_pq_mode(self, value):
615
- if isinstance(value, str):
616
- try:
617
- return models.OutputElasticMode(value)
618
- except ValueError:
619
- return value
620
- return value
621
-
622
- @field_serializer("pq_compress")
623
- def serialize_pq_compress(self, value):
624
- if isinstance(value, str):
625
- try:
626
- return models.OutputElasticCompression(value)
627
- except ValueError:
628
- return value
629
- return value
630
-
631
- @field_serializer("pq_on_backpressure")
632
- def serialize_pq_on_backpressure(self, value):
633
- if isinstance(value, str):
634
- try:
635
- return models.OutputElasticQueueFullBehavior(value)
636
- except ValueError:
637
- return value
638
- 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
@@ -32,11 +31,8 @@ class OutputElasticCloudFailedRequestLoggingMode(
32
31
  ):
33
32
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
34
33
 
35
- # Payload
36
34
  PAYLOAD = "payload"
37
- # Payload + Headers
38
35
  PAYLOAD_AND_HEADERS = "payloadAndHeaders"
39
- # None
40
36
  NONE = "none"
41
37
 
42
38
 
@@ -62,25 +58,13 @@ class OutputElasticCloudAuthenticationMethod(str, Enum, metaclass=utils.OpenEnum
62
58
 
63
59
  class OutputElasticCloudAuthTypedDict(TypedDict):
64
60
  disabled: NotRequired[bool]
65
- username: NotRequired[str]
66
- password: NotRequired[str]
67
61
  auth_type: NotRequired[OutputElasticCloudAuthenticationMethod]
68
62
  r"""Enter credentials directly, or select a stored secret"""
69
- credentials_secret: NotRequired[str]
70
- r"""Select or create a secret that references your credentials"""
71
- manual_api_key: NotRequired[str]
72
- r"""Enter API key directly"""
73
- text_secret: NotRequired[str]
74
- r"""Select or create a stored text secret"""
75
63
 
76
64
 
77
65
  class OutputElasticCloudAuth(BaseModel):
78
66
  disabled: Optional[bool] = False
79
67
 
80
- username: Optional[str] = None
81
-
82
- password: Optional[str] = None
83
-
84
68
  auth_type: Annotated[
85
69
  Annotated[
86
70
  Optional[OutputElasticCloudAuthenticationMethod],
@@ -90,28 +74,6 @@ class OutputElasticCloudAuth(BaseModel):
90
74
  ] = OutputElasticCloudAuthenticationMethod.MANUAL
91
75
  r"""Enter credentials directly, or select a stored secret"""
92
76
 
93
- credentials_secret: Annotated[
94
- Optional[str], pydantic.Field(alias="credentialsSecret")
95
- ] = None
96
- r"""Select or create a secret that references your credentials"""
97
-
98
- manual_api_key: Annotated[Optional[str], pydantic.Field(alias="manualAPIKey")] = (
99
- None
100
- )
101
- r"""Enter API key directly"""
102
-
103
- text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
104
- r"""Select or create a stored text secret"""
105
-
106
- @field_serializer("auth_type")
107
- def serialize_auth_type(self, value):
108
- if isinstance(value, str):
109
- try:
110
- return models.OutputElasticCloudAuthenticationMethod(value)
111
- except ValueError:
112
- return value
113
- return value
114
-
115
77
 
116
78
  class OutputElasticCloudResponseRetrySettingTypedDict(TypedDict):
117
79
  http_status: float
@@ -170,43 +132,33 @@ class OutputElasticCloudTimeoutRetrySettings(BaseModel):
170
132
  class OutputElasticCloudBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
171
133
  r"""How to handle events when all receivers are exerting backpressure"""
172
134
 
173
- # Block
174
135
  BLOCK = "block"
175
- # Drop
176
136
  DROP = "drop"
177
- # Persistent Queue
178
137
  QUEUE = "queue"
179
138
 
180
139
 
181
- class OutputElasticCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
182
- 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."""
183
-
184
- # Error
185
- ERROR = "error"
186
- # Backpressure
187
- ALWAYS = "always"
188
- # Always On
189
- BACKPRESSURE = "backpressure"
190
-
191
-
192
140
  class OutputElasticCloudCompression(str, Enum, metaclass=utils.OpenEnumMeta):
193
141
  r"""Codec to use to compress the persisted data"""
194
142
 
195
- # None
196
143
  NONE = "none"
197
- # Gzip
198
144
  GZIP = "gzip"
199
145
 
200
146
 
201
147
  class OutputElasticCloudQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
202
148
  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."""
203
149
 
204
- # Block
205
150
  BLOCK = "block"
206
- # Drop new data
207
151
  DROP = "drop"
208
152
 
209
153
 
154
+ class OutputElasticCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
155
+ 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."""
156
+
157
+ ERROR = "error"
158
+ BACKPRESSURE = "backpressure"
159
+ ALWAYS = "always"
160
+
161
+
210
162
  class OutputElasticCloudPqControlsTypedDict(TypedDict):
211
163
  pass
212
164
 
@@ -271,16 +223,6 @@ class OutputElasticCloudTypedDict(TypedDict):
271
223
  on_backpressure: NotRequired[OutputElasticCloudBackpressureBehavior]
272
224
  r"""How to handle events when all receivers are exerting backpressure"""
273
225
  description: NotRequired[str]
274
- pq_strict_ordering: NotRequired[bool]
275
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
276
- pq_rate_per_sec: NotRequired[float]
277
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
278
- pq_mode: NotRequired[OutputElasticCloudMode]
279
- 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."""
280
- pq_max_buffer_size: NotRequired[float]
281
- r"""The maximum number of events to hold in memory before writing the events to disk"""
282
- pq_max_backpressure_sec: NotRequired[float]
283
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
284
226
  pq_max_file_size: NotRequired[str]
285
227
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
286
228
  pq_max_size: NotRequired[str]
@@ -291,6 +233,8 @@ class OutputElasticCloudTypedDict(TypedDict):
291
233
  r"""Codec to use to compress the persisted data"""
292
234
  pq_on_backpressure: NotRequired[OutputElasticCloudQueueFullBehavior]
293
235
  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."""
236
+ pq_mode: NotRequired[OutputElasticCloudMode]
237
+ 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."""
294
238
  pq_controls: NotRequired[OutputElasticCloudPqControlsTypedDict]
295
239
 
296
240
 
@@ -417,34 +361,6 @@ class OutputElasticCloud(BaseModel):
417
361
 
418
362
  description: Optional[str] = None
419
363
 
420
- pq_strict_ordering: Annotated[
421
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
422
- ] = True
423
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
424
-
425
- pq_rate_per_sec: Annotated[
426
- Optional[float], pydantic.Field(alias="pqRatePerSec")
427
- ] = 0
428
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
429
-
430
- pq_mode: Annotated[
431
- Annotated[
432
- Optional[OutputElasticCloudMode], PlainValidator(validate_open_enum(False))
433
- ],
434
- pydantic.Field(alias="pqMode"),
435
- ] = OutputElasticCloudMode.ERROR
436
- 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."""
437
-
438
- pq_max_buffer_size: Annotated[
439
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
440
- ] = 42
441
- r"""The maximum number of events to hold in memory before writing the events to disk"""
442
-
443
- pq_max_backpressure_sec: Annotated[
444
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
445
- ] = 30
446
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
447
-
448
364
  pq_max_file_size: Annotated[
449
365
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
450
366
  ] = "1 MB"
@@ -476,51 +392,14 @@ class OutputElasticCloud(BaseModel):
476
392
  ] = OutputElasticCloudQueueFullBehavior.BLOCK
477
393
  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
394
 
395
+ pq_mode: Annotated[
396
+ Annotated[
397
+ Optional[OutputElasticCloudMode], PlainValidator(validate_open_enum(False))
398
+ ],
399
+ pydantic.Field(alias="pqMode"),
400
+ ] = OutputElasticCloudMode.ERROR
401
+ 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."""
402
+
479
403
  pq_controls: Annotated[
480
404
  Optional[OutputElasticCloudPqControls], pydantic.Field(alias="pqControls")
481
405
  ] = None
482
-
483
- @field_serializer("failed_request_logging_mode")
484
- def serialize_failed_request_logging_mode(self, value):
485
- if isinstance(value, str):
486
- try:
487
- return models.OutputElasticCloudFailedRequestLoggingMode(value)
488
- except ValueError:
489
- return value
490
- return value
491
-
492
- @field_serializer("on_backpressure")
493
- def serialize_on_backpressure(self, value):
494
- if isinstance(value, str):
495
- try:
496
- return models.OutputElasticCloudBackpressureBehavior(value)
497
- except ValueError:
498
- return value
499
- return value
500
-
501
- @field_serializer("pq_mode")
502
- def serialize_pq_mode(self, value):
503
- if isinstance(value, str):
504
- try:
505
- return models.OutputElasticCloudMode(value)
506
- except ValueError:
507
- return value
508
- return value
509
-
510
- @field_serializer("pq_compress")
511
- def serialize_pq_compress(self, value):
512
- if isinstance(value, str):
513
- try:
514
- return models.OutputElasticCloudCompression(value)
515
- except ValueError:
516
- return value
517
- return value
518
-
519
- @field_serializer("pq_on_backpressure")
520
- def serialize_pq_on_backpressure(self, value):
521
- if isinstance(value, str):
522
- try:
523
- return models.OutputElasticCloudQueueFullBehavior(value)
524
- except ValueError:
525
- return value
526
- 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
@@ -26,48 +25,34 @@ class OutputExabeamSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
26
25
  class OutputExabeamObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
27
26
  r"""Object ACL to assign to uploaded objects"""
28
27
 
29
- # private
30
28
  PRIVATE = "private"
31
- # bucket-owner-read
32
29
  BUCKET_OWNER_READ = "bucket-owner-read"
33
- # bucket-owner-full-control
34
30
  BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
35
- # project-private
36
31
  PROJECT_PRIVATE = "project-private"
37
- # authenticated-read
38
32
  AUTHENTICATED_READ = "authenticated-read"
39
- # public-read
40
33
  PUBLIC_READ = "public-read"
41
34
 
42
35
 
43
36
  class OutputExabeamStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
44
37
  r"""Storage class to select for uploaded objects"""
45
38
 
46
- # Standard Storage
47
39
  STANDARD = "STANDARD"
48
- # Nearline Storage
49
40
  NEARLINE = "NEARLINE"
50
- # Coldline Storage
51
41
  COLDLINE = "COLDLINE"
52
- # Archive Storage
53
42
  ARCHIVE = "ARCHIVE"
54
43
 
55
44
 
56
45
  class OutputExabeamBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
57
46
  r"""How to handle events when all receivers are exerting backpressure"""
58
47
 
59
- # Block
60
48
  BLOCK = "block"
61
- # Drop
62
49
  DROP = "drop"
63
50
 
64
51
 
65
52
  class OutputExabeamDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
66
53
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
67
54
 
68
- # Block
69
55
  BLOCK = "block"
70
- # Drop
71
56
  DROP = "drop"
72
57
 
73
58
 
@@ -308,48 +293,3 @@ class OutputExabeam(BaseModel):
308
293
 
309
294
  max_retry_num: Annotated[Optional[float], pydantic.Field(alias="maxRetryNum")] = 20
310
295
  r"""The maximum number of times a file will attempt to move to its final destination before being dead-lettered"""
311
-
312
- @field_serializer("signature_version")
313
- def serialize_signature_version(self, value):
314
- if isinstance(value, str):
315
- try:
316
- return models.OutputExabeamSignatureVersion(value)
317
- except ValueError:
318
- return value
319
- return value
320
-
321
- @field_serializer("object_acl")
322
- def serialize_object_acl(self, value):
323
- if isinstance(value, str):
324
- try:
325
- return models.OutputExabeamObjectACL(value)
326
- except ValueError:
327
- return value
328
- return value
329
-
330
- @field_serializer("storage_class")
331
- def serialize_storage_class(self, value):
332
- if isinstance(value, str):
333
- try:
334
- return models.OutputExabeamStorageClass(value)
335
- except ValueError:
336
- return value
337
- return value
338
-
339
- @field_serializer("on_backpressure")
340
- def serialize_on_backpressure(self, value):
341
- if isinstance(value, str):
342
- try:
343
- return models.OutputExabeamBackpressureBehavior(value)
344
- except ValueError:
345
- return value
346
- return value
347
-
348
- @field_serializer("on_disk_full_backpressure")
349
- def serialize_on_disk_full_backpressure(self, value):
350
- if isinstance(value, str):
351
- try:
352
- return models.OutputExabeamDiskSpaceProtection(value)
353
- except ValueError:
354
- return value
355
- return value