cribl-control-plane 0.0.44a1__py3-none-any.whl → 0.0.44a2__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.
- cribl_control_plane/_hooks/clientcredentials.py +1 -1
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/acl.py +5 -3
- cribl_control_plane/auth_sdk.py +6 -3
- cribl_control_plane/basesdk.py +11 -1
- cribl_control_plane/commits.py +5 -3
- cribl_control_plane/destinations.py +6 -4
- cribl_control_plane/errors/__init__.py +15 -3
- cribl_control_plane/errors/healthstatus_error.py +8 -2
- cribl_control_plane/groups_configs.py +8 -3
- cribl_control_plane/groups_sdk.py +6 -4
- cribl_control_plane/models/__init__.py +17 -4
- cribl_control_plane/models/appmode.py +2 -1
- cribl_control_plane/models/cacheconnection.py +10 -2
- cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
- cribl_control_plane/models/cloudprovider.py +2 -1
- cribl_control_plane/models/configgroup.py +7 -2
- cribl_control_plane/models/configgroupcloud.py +6 -2
- cribl_control_plane/models/createconfiggroupbyproductop.py +8 -2
- cribl_control_plane/models/cribllakedataset.py +8 -2
- cribl_control_plane/models/datasetmetadata.py +8 -2
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +7 -2
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +4 -2
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +4 -2
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +3 -1
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +7 -2
- cribl_control_plane/models/getsummaryop.py +7 -2
- cribl_control_plane/models/hbcriblinfo.py +6 -1
- cribl_control_plane/models/healthstatus.py +7 -4
- cribl_control_plane/models/inputappscope.py +34 -14
- cribl_control_plane/models/inputazureblob.py +17 -6
- cribl_control_plane/models/inputcollection.py +11 -4
- cribl_control_plane/models/inputconfluentcloud.py +47 -20
- cribl_control_plane/models/inputcribl.py +11 -4
- cribl_control_plane/models/inputcriblhttp.py +23 -8
- cribl_control_plane/models/inputcribllakehttp.py +22 -10
- cribl_control_plane/models/inputcriblmetrics.py +12 -4
- cribl_control_plane/models/inputcribltcp.py +23 -8
- cribl_control_plane/models/inputcrowdstrike.py +26 -10
- cribl_control_plane/models/inputdatadogagent.py +24 -8
- cribl_control_plane/models/inputdatagen.py +11 -4
- cribl_control_plane/models/inputedgeprometheus.py +58 -24
- cribl_control_plane/models/inputelastic.py +40 -14
- cribl_control_plane/models/inputeventhub.py +15 -6
- cribl_control_plane/models/inputexec.py +14 -6
- cribl_control_plane/models/inputfile.py +15 -6
- cribl_control_plane/models/inputfirehose.py +23 -8
- cribl_control_plane/models/inputgooglepubsub.py +19 -6
- cribl_control_plane/models/inputgrafana.py +67 -24
- cribl_control_plane/models/inputhttp.py +23 -8
- cribl_control_plane/models/inputhttpraw.py +23 -8
- cribl_control_plane/models/inputjournalfiles.py +12 -4
- cribl_control_plane/models/inputkafka.py +46 -16
- cribl_control_plane/models/inputkinesis.py +38 -14
- cribl_control_plane/models/inputkubeevents.py +11 -4
- cribl_control_plane/models/inputkubelogs.py +16 -8
- cribl_control_plane/models/inputkubemetrics.py +16 -8
- cribl_control_plane/models/inputloki.py +29 -10
- cribl_control_plane/models/inputmetrics.py +23 -8
- cribl_control_plane/models/inputmodeldriventelemetry.py +27 -10
- cribl_control_plane/models/inputmsk.py +53 -18
- cribl_control_plane/models/inputnetflow.py +11 -4
- cribl_control_plane/models/inputoffice365mgmt.py +33 -14
- cribl_control_plane/models/inputoffice365msgtrace.py +35 -16
- cribl_control_plane/models/inputoffice365service.py +35 -16
- cribl_control_plane/models/inputopentelemetry.py +38 -16
- cribl_control_plane/models/inputprometheus.py +50 -18
- cribl_control_plane/models/inputprometheusrw.py +30 -10
- cribl_control_plane/models/inputrawudp.py +11 -4
- cribl_control_plane/models/inputs3.py +21 -8
- cribl_control_plane/models/inputs3inventory.py +26 -10
- cribl_control_plane/models/inputsecuritylake.py +27 -10
- cribl_control_plane/models/inputsnmp.py +16 -6
- cribl_control_plane/models/inputsplunk.py +33 -12
- cribl_control_plane/models/inputsplunkhec.py +29 -10
- cribl_control_plane/models/inputsplunksearch.py +33 -14
- cribl_control_plane/models/inputsqs.py +27 -10
- cribl_control_plane/models/inputsyslog.py +43 -16
- cribl_control_plane/models/inputsystemmetrics.py +48 -24
- cribl_control_plane/models/inputsystemstate.py +16 -8
- cribl_control_plane/models/inputtcp.py +29 -10
- cribl_control_plane/models/inputtcpjson.py +29 -10
- cribl_control_plane/models/inputwef.py +37 -14
- cribl_control_plane/models/inputwindowsmetrics.py +44 -24
- cribl_control_plane/models/inputwineventlogs.py +20 -10
- cribl_control_plane/models/inputwiz.py +21 -8
- cribl_control_plane/models/inputwizwebhook.py +23 -8
- cribl_control_plane/models/inputzscalerhec.py +29 -10
- cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
- cribl_control_plane/models/listconfiggroupbyproductop.py +3 -1
- cribl_control_plane/models/masterworkerentry.py +7 -2
- cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
- cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeupgradestate.py +2 -1
- cribl_control_plane/models/nodeupgradestatus.py +13 -5
- cribl_control_plane/models/outputazureblob.py +48 -18
- cribl_control_plane/models/outputazuredataexplorer.py +74 -29
- cribl_control_plane/models/outputazureeventhub.py +40 -18
- cribl_control_plane/models/outputazurelogs.py +36 -13
- cribl_control_plane/models/outputclickhouse.py +56 -21
- cribl_control_plane/models/outputcloudwatch.py +29 -10
- cribl_control_plane/models/outputconfluentcloud.py +77 -32
- cribl_control_plane/models/outputcriblhttp.py +46 -18
- cribl_control_plane/models/outputcribllake.py +46 -16
- cribl_control_plane/models/outputcribltcp.py +45 -18
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +50 -15
- cribl_control_plane/models/outputdatadog.py +48 -20
- cribl_control_plane/models/outputdataset.py +46 -18
- cribl_control_plane/models/outputdiskspool.py +7 -2
- cribl_control_plane/models/outputdls3.py +68 -24
- cribl_control_plane/models/outputdynatracehttp.py +54 -21
- cribl_control_plane/models/outputdynatraceotlp.py +56 -23
- cribl_control_plane/models/outputelastic.py +44 -19
- cribl_control_plane/models/outputelasticcloud.py +37 -13
- cribl_control_plane/models/outputexabeam.py +29 -10
- cribl_control_plane/models/outputfilesystem.py +39 -14
- cribl_control_plane/models/outputgooglechronicle.py +50 -16
- cribl_control_plane/models/outputgooglecloudlogging.py +41 -14
- cribl_control_plane/models/outputgooglecloudstorage.py +66 -24
- cribl_control_plane/models/outputgooglepubsub.py +31 -10
- cribl_control_plane/models/outputgrafanacloud.py +99 -34
- cribl_control_plane/models/outputgraphite.py +31 -14
- cribl_control_plane/models/outputhoneycomb.py +36 -13
- cribl_control_plane/models/outputhumiohec.py +44 -17
- cribl_control_plane/models/outputinfluxdb.py +43 -17
- cribl_control_plane/models/outputkafka.py +74 -28
- cribl_control_plane/models/outputkinesis.py +40 -16
- cribl_control_plane/models/outputloki.py +41 -16
- cribl_control_plane/models/outputminio.py +65 -24
- cribl_control_plane/models/outputmsk.py +82 -30
- cribl_control_plane/models/outputnewrelic.py +43 -18
- cribl_control_plane/models/outputnewrelicevents.py +42 -15
- cribl_control_plane/models/outputopentelemetry.py +68 -27
- cribl_control_plane/models/outputprometheus.py +36 -13
- cribl_control_plane/models/outputring.py +19 -8
- cribl_control_plane/models/outputs3.py +68 -26
- cribl_control_plane/models/outputsecuritylake.py +52 -18
- cribl_control_plane/models/outputsentinel.py +45 -18
- cribl_control_plane/models/outputsentineloneaisiem.py +51 -19
- cribl_control_plane/models/outputservicenow.py +61 -25
- cribl_control_plane/models/outputsignalfx.py +38 -15
- cribl_control_plane/models/outputsns.py +36 -14
- cribl_control_plane/models/outputsplunk.py +60 -24
- cribl_control_plane/models/outputsplunkhec.py +36 -13
- cribl_control_plane/models/outputsplunklb.py +77 -30
- cribl_control_plane/models/outputsqs.py +41 -16
- cribl_control_plane/models/outputstatsd.py +30 -14
- cribl_control_plane/models/outputstatsdext.py +29 -12
- cribl_control_plane/models/outputsumologic.py +35 -12
- cribl_control_plane/models/outputsyslog.py +58 -24
- cribl_control_plane/models/outputtcpjson.py +52 -20
- cribl_control_plane/models/outputwavefront.py +36 -13
- cribl_control_plane/models/outputwebhook.py +58 -22
- cribl_control_plane/models/outputxsiam.py +36 -15
- cribl_control_plane/models/productscore.py +2 -1
- cribl_control_plane/models/rbacresource.py +2 -1
- cribl_control_plane/models/resourcepolicy.py +4 -2
- cribl_control_plane/models/runnablejobcollection.py +30 -13
- cribl_control_plane/models/runnablejobexecutor.py +13 -4
- cribl_control_plane/models/runnablejobscheduledsearch.py +7 -2
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +8 -2
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +8 -2
- cribl_control_plane/models/workertypes.py +2 -1
- cribl_control_plane/nodes.py +5 -3
- cribl_control_plane/sdk.py +15 -2
- cribl_control_plane/sources.py +5 -3
- cribl_control_plane/utils/__init__.py +15 -3
- cribl_control_plane/utils/eventstreaming.py +10 -0
- cribl_control_plane/versions.py +11 -6
- {cribl_control_plane-0.0.44a1.dist-info → cribl_control_plane-0.0.44a2.dist-info}/METADATA +1 -1
- cribl_control_plane-0.0.44a2.dist-info/RECORD +325 -0
- cribl_control_plane-0.0.44a1.dist-info/RECORD +0 -325
- {cribl_control_plane-0.0.44a1.dist-info → cribl_control_plane-0.0.44a2.dist-info}/WHEEL +0 -0
|
@@ -1,9 +1,12 @@
|
|
|
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 utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -12,19 +15,19 @@ class OutputDynatraceOtlpType(str, Enum):
|
|
|
12
15
|
DYNATRACE_OTLP = "dynatrace_otlp"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class OutputDynatraceOtlpProtocol(str, Enum):
|
|
18
|
+
class OutputDynatraceOtlpProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
19
|
r"""Select a transport option for Dynatrace"""
|
|
17
20
|
|
|
18
21
|
HTTP = "http"
|
|
19
22
|
|
|
20
23
|
|
|
21
|
-
class OutputDynatraceOTLPOTLPVersion(str, Enum):
|
|
24
|
+
class OutputDynatraceOTLPOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
22
25
|
r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
|
|
23
26
|
|
|
24
27
|
ONE_DOT_3_DOT_1 = "1.3.1"
|
|
25
28
|
|
|
26
29
|
|
|
27
|
-
class OutputDynatraceOtlpCompressCompression(str, Enum):
|
|
30
|
+
class OutputDynatraceOtlpCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
28
31
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
29
32
|
|
|
30
33
|
NONE = "none"
|
|
@@ -32,7 +35,9 @@ class OutputDynatraceOtlpCompressCompression(str, Enum):
|
|
|
32
35
|
GZIP = "gzip"
|
|
33
36
|
|
|
34
37
|
|
|
35
|
-
class OutputDynatraceOtlpHTTPCompressCompression(
|
|
38
|
+
class OutputDynatraceOtlpHTTPCompressCompression(
|
|
39
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
40
|
+
):
|
|
36
41
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
37
42
|
|
|
38
43
|
NONE = "none"
|
|
@@ -50,7 +55,9 @@ class OutputDynatraceOtlpMetadatum(BaseModel):
|
|
|
50
55
|
key: Optional[str] = ""
|
|
51
56
|
|
|
52
57
|
|
|
53
|
-
class OutputDynatraceOtlpFailedRequestLoggingMode(
|
|
58
|
+
class OutputDynatraceOtlpFailedRequestLoggingMode(
|
|
59
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
60
|
+
):
|
|
54
61
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
55
62
|
|
|
56
63
|
PAYLOAD = "payload"
|
|
@@ -58,14 +65,14 @@ class OutputDynatraceOtlpFailedRequestLoggingMode(str, Enum):
|
|
|
58
65
|
NONE = "none"
|
|
59
66
|
|
|
60
67
|
|
|
61
|
-
class EndpointType(str, Enum):
|
|
68
|
+
class EndpointType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
62
69
|
r"""Select the type of Dynatrace endpoint configured"""
|
|
63
70
|
|
|
64
71
|
SAAS = "saas"
|
|
65
72
|
AG = "ag"
|
|
66
73
|
|
|
67
74
|
|
|
68
|
-
class OutputDynatraceOtlpBackpressureBehavior(str, Enum):
|
|
75
|
+
class OutputDynatraceOtlpBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
69
76
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
70
77
|
|
|
71
78
|
BLOCK = "block"
|
|
@@ -138,21 +145,21 @@ class OutputDynatraceOtlpTimeoutRetrySettings(BaseModel):
|
|
|
138
145
|
r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
|
|
139
146
|
|
|
140
147
|
|
|
141
|
-
class OutputDynatraceOtlpPqCompressCompression(str, Enum):
|
|
148
|
+
class OutputDynatraceOtlpPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
142
149
|
r"""Codec to use to compress the persisted data"""
|
|
143
150
|
|
|
144
151
|
NONE = "none"
|
|
145
152
|
GZIP = "gzip"
|
|
146
153
|
|
|
147
154
|
|
|
148
|
-
class OutputDynatraceOtlpQueueFullBehavior(str, Enum):
|
|
155
|
+
class OutputDynatraceOtlpQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
149
156
|
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."""
|
|
150
157
|
|
|
151
158
|
BLOCK = "block"
|
|
152
159
|
DROP = "drop"
|
|
153
160
|
|
|
154
161
|
|
|
155
|
-
class OutputDynatraceOtlpMode(str, Enum):
|
|
162
|
+
class OutputDynatraceOtlpMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
156
163
|
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
164
|
|
|
158
165
|
ERROR = "error"
|
|
@@ -282,7 +289,9 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
282
289
|
streamtags: Optional[List[str]] = None
|
|
283
290
|
r"""Tags for filtering and grouping in @{product}"""
|
|
284
291
|
|
|
285
|
-
protocol:
|
|
292
|
+
protocol: Annotated[
|
|
293
|
+
Optional[OutputDynatraceOtlpProtocol], PlainValidator(validate_open_enum(False))
|
|
294
|
+
] = OutputDynatraceOtlpProtocol.HTTP
|
|
286
295
|
r"""Select a transport option for Dynatrace"""
|
|
287
296
|
|
|
288
297
|
endpoint: Optional[str] = (
|
|
@@ -291,17 +300,25 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
291
300
|
r"""The endpoint where Dynatrace events will be sent. Enter any valid URL or an IP address (IPv4 or IPv6; enclose IPv6 addresses in square brackets)"""
|
|
292
301
|
|
|
293
302
|
otlp_version: Annotated[
|
|
294
|
-
|
|
303
|
+
Annotated[
|
|
304
|
+
Optional[OutputDynatraceOTLPOTLPVersion],
|
|
305
|
+
PlainValidator(validate_open_enum(False)),
|
|
306
|
+
],
|
|
307
|
+
pydantic.Field(alias="otlpVersion"),
|
|
295
308
|
] = OutputDynatraceOTLPOTLPVersion.ONE_DOT_3_DOT_1
|
|
296
309
|
r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
|
|
297
310
|
|
|
298
|
-
compress:
|
|
299
|
-
OutputDynatraceOtlpCompressCompression
|
|
300
|
-
|
|
311
|
+
compress: Annotated[
|
|
312
|
+
Optional[OutputDynatraceOtlpCompressCompression],
|
|
313
|
+
PlainValidator(validate_open_enum(False)),
|
|
314
|
+
] = OutputDynatraceOtlpCompressCompression.GZIP
|
|
301
315
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
302
316
|
|
|
303
317
|
http_compress: Annotated[
|
|
304
|
-
|
|
318
|
+
Annotated[
|
|
319
|
+
Optional[OutputDynatraceOtlpHTTPCompressCompression],
|
|
320
|
+
PlainValidator(validate_open_enum(False)),
|
|
321
|
+
],
|
|
305
322
|
pydantic.Field(alias="httpCompress"),
|
|
306
323
|
] = OutputDynatraceOtlpHTTPCompressCompression.GZIP
|
|
307
324
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
@@ -341,7 +358,10 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
341
358
|
r"""Maximum time between requests. Small values could cause the payload size to be smaller than the configured Body size limit."""
|
|
342
359
|
|
|
343
360
|
failed_request_logging_mode: Annotated[
|
|
344
|
-
|
|
361
|
+
Annotated[
|
|
362
|
+
Optional[OutputDynatraceOtlpFailedRequestLoggingMode],
|
|
363
|
+
PlainValidator(validate_open_enum(False)),
|
|
364
|
+
],
|
|
345
365
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
346
366
|
] = OutputDynatraceOtlpFailedRequestLoggingMode.NONE
|
|
347
367
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -360,7 +380,8 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
360
380
|
r"""Disable to close the connection immediately after sending the outgoing request"""
|
|
361
381
|
|
|
362
382
|
endpoint_type: Annotated[
|
|
363
|
-
Optional[EndpointType],
|
|
383
|
+
Annotated[Optional[EndpointType], PlainValidator(validate_open_enum(False))],
|
|
384
|
+
pydantic.Field(alias="endpointType"),
|
|
364
385
|
] = EndpointType.SAAS
|
|
365
386
|
r"""Select the type of Dynatrace endpoint configured"""
|
|
366
387
|
|
|
@@ -369,7 +390,10 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
369
390
|
)
|
|
370
391
|
|
|
371
392
|
on_backpressure: Annotated[
|
|
372
|
-
|
|
393
|
+
Annotated[
|
|
394
|
+
Optional[OutputDynatraceOtlpBackpressureBehavior],
|
|
395
|
+
PlainValidator(validate_open_enum(False)),
|
|
396
|
+
],
|
|
373
397
|
pydantic.Field(alias="onBackpressure"),
|
|
374
398
|
] = OutputDynatraceOtlpBackpressureBehavior.BLOCK
|
|
375
399
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -413,7 +437,7 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
413
437
|
|
|
414
438
|
response_honor_retry_after_header: Annotated[
|
|
415
439
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
416
|
-
] =
|
|
440
|
+
] = True
|
|
417
441
|
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."""
|
|
418
442
|
|
|
419
443
|
pq_max_file_size: Annotated[
|
|
@@ -430,19 +454,28 @@ class OutputDynatraceOtlp(BaseModel):
|
|
|
430
454
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
431
455
|
|
|
432
456
|
pq_compress: Annotated[
|
|
433
|
-
|
|
457
|
+
Annotated[
|
|
458
|
+
Optional[OutputDynatraceOtlpPqCompressCompression],
|
|
459
|
+
PlainValidator(validate_open_enum(False)),
|
|
460
|
+
],
|
|
434
461
|
pydantic.Field(alias="pqCompress"),
|
|
435
462
|
] = OutputDynatraceOtlpPqCompressCompression.NONE
|
|
436
463
|
r"""Codec to use to compress the persisted data"""
|
|
437
464
|
|
|
438
465
|
pq_on_backpressure: Annotated[
|
|
439
|
-
|
|
466
|
+
Annotated[
|
|
467
|
+
Optional[OutputDynatraceOtlpQueueFullBehavior],
|
|
468
|
+
PlainValidator(validate_open_enum(False)),
|
|
469
|
+
],
|
|
440
470
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
441
471
|
] = OutputDynatraceOtlpQueueFullBehavior.BLOCK
|
|
442
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."""
|
|
443
473
|
|
|
444
474
|
pq_mode: Annotated[
|
|
445
|
-
|
|
475
|
+
Annotated[
|
|
476
|
+
Optional[OutputDynatraceOtlpMode], PlainValidator(validate_open_enum(False))
|
|
477
|
+
],
|
|
478
|
+
pydantic.Field(alias="pqMode"),
|
|
446
479
|
] = OutputDynatraceOtlpMode.ERROR
|
|
447
480
|
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."""
|
|
448
481
|
|
|
@@ -1,9 +1,12 @@
|
|
|
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 utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,7 +26,7 @@ class OutputElasticExtraHTTPHeader(BaseModel):
|
|
|
23
26
|
name: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class OutputElasticFailedRequestLoggingMode(str, Enum):
|
|
29
|
+
class OutputElasticFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
28
31
|
|
|
29
32
|
PAYLOAD = "payload"
|
|
@@ -96,7 +99,7 @@ class OutputElasticExtraParam(BaseModel):
|
|
|
96
99
|
value: str
|
|
97
100
|
|
|
98
101
|
|
|
99
|
-
class OutputElasticAuthenticationMethod(str, Enum):
|
|
102
|
+
class OutputElasticAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
103
|
r"""Enter credentials directly, or select a stored secret"""
|
|
101
104
|
|
|
102
105
|
MANUAL = "manual"
|
|
@@ -115,12 +118,16 @@ class OutputElasticAuth(BaseModel):
|
|
|
115
118
|
disabled: Optional[bool] = True
|
|
116
119
|
|
|
117
120
|
auth_type: Annotated[
|
|
118
|
-
|
|
121
|
+
Annotated[
|
|
122
|
+
Optional[OutputElasticAuthenticationMethod],
|
|
123
|
+
PlainValidator(validate_open_enum(False)),
|
|
124
|
+
],
|
|
125
|
+
pydantic.Field(alias="authType"),
|
|
119
126
|
] = OutputElasticAuthenticationMethod.MANUAL
|
|
120
127
|
r"""Enter credentials directly, or select a stored secret"""
|
|
121
128
|
|
|
122
129
|
|
|
123
|
-
class ElasticVersion(str, Enum):
|
|
130
|
+
class ElasticVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
124
131
|
r"""Optional Elasticsearch version, used to format events. If not specified, will auto-discover version."""
|
|
125
132
|
|
|
126
133
|
AUTO = "auto"
|
|
@@ -128,14 +135,14 @@ class ElasticVersion(str, Enum):
|
|
|
128
135
|
SEVEN = "7"
|
|
129
136
|
|
|
130
137
|
|
|
131
|
-
class WriteAction(str, Enum):
|
|
138
|
+
class WriteAction(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
132
139
|
r"""Action to use when writing events. Must be set to `Create` when writing to a data stream."""
|
|
133
140
|
|
|
134
141
|
INDEX = "index"
|
|
135
142
|
CREATE = "create"
|
|
136
143
|
|
|
137
144
|
|
|
138
|
-
class OutputElasticBackpressureBehavior(str, Enum):
|
|
145
|
+
class OutputElasticBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
139
146
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
140
147
|
|
|
141
148
|
BLOCK = "block"
|
|
@@ -158,21 +165,21 @@ class OutputElasticURL(BaseModel):
|
|
|
158
165
|
r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
|
|
159
166
|
|
|
160
167
|
|
|
161
|
-
class OutputElasticCompression(str, Enum):
|
|
168
|
+
class OutputElasticCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
162
169
|
r"""Codec to use to compress the persisted data"""
|
|
163
170
|
|
|
164
171
|
NONE = "none"
|
|
165
172
|
GZIP = "gzip"
|
|
166
173
|
|
|
167
174
|
|
|
168
|
-
class OutputElasticQueueFullBehavior(str, Enum):
|
|
175
|
+
class OutputElasticQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
169
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."""
|
|
170
177
|
|
|
171
178
|
BLOCK = "block"
|
|
172
179
|
DROP = "drop"
|
|
173
180
|
|
|
174
181
|
|
|
175
|
-
class OutputElasticMode(str, Enum):
|
|
182
|
+
class OutputElasticMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
176
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."""
|
|
177
184
|
|
|
178
185
|
ERROR = "error"
|
|
@@ -347,7 +354,10 @@ class OutputElastic(BaseModel):
|
|
|
347
354
|
r"""Headers to add to all events"""
|
|
348
355
|
|
|
349
356
|
failed_request_logging_mode: Annotated[
|
|
350
|
-
|
|
357
|
+
Annotated[
|
|
358
|
+
Optional[OutputElasticFailedRequestLoggingMode],
|
|
359
|
+
PlainValidator(validate_open_enum(False)),
|
|
360
|
+
],
|
|
351
361
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
352
362
|
] = OutputElasticFailedRequestLoggingMode.NONE
|
|
353
363
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -370,7 +380,7 @@ class OutputElastic(BaseModel):
|
|
|
370
380
|
|
|
371
381
|
response_honor_retry_after_header: Annotated[
|
|
372
382
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
373
|
-
] =
|
|
383
|
+
] = True
|
|
374
384
|
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."""
|
|
375
385
|
|
|
376
386
|
extra_params: Annotated[
|
|
@@ -380,7 +390,8 @@ class OutputElastic(BaseModel):
|
|
|
380
390
|
auth: Optional[OutputElasticAuth] = None
|
|
381
391
|
|
|
382
392
|
elastic_version: Annotated[
|
|
383
|
-
Optional[ElasticVersion],
|
|
393
|
+
Annotated[Optional[ElasticVersion], PlainValidator(validate_open_enum(False))],
|
|
394
|
+
pydantic.Field(alias="elasticVersion"),
|
|
384
395
|
] = ElasticVersion.AUTO
|
|
385
396
|
r"""Optional Elasticsearch version, used to format events. If not specified, will auto-discover version."""
|
|
386
397
|
|
|
@@ -395,7 +406,8 @@ class OutputElastic(BaseModel):
|
|
|
395
406
|
r"""Include the `document_id` field when sending events to an Elastic TSDS (time series data stream)"""
|
|
396
407
|
|
|
397
408
|
write_action: Annotated[
|
|
398
|
-
Optional[WriteAction],
|
|
409
|
+
Annotated[Optional[WriteAction], PlainValidator(validate_open_enum(False))],
|
|
410
|
+
pydantic.Field(alias="writeAction"),
|
|
399
411
|
] = WriteAction.CREATE
|
|
400
412
|
r"""Action to use when writing events. Must be set to `Create` when writing to a data stream."""
|
|
401
413
|
|
|
@@ -405,7 +417,10 @@ class OutputElastic(BaseModel):
|
|
|
405
417
|
r"""Retry failed events when a bulk request to Elastic is successful, but the response body returns an error for one or more events in the batch"""
|
|
406
418
|
|
|
407
419
|
on_backpressure: Annotated[
|
|
408
|
-
|
|
420
|
+
Annotated[
|
|
421
|
+
Optional[OutputElasticBackpressureBehavior],
|
|
422
|
+
PlainValidator(validate_open_enum(False)),
|
|
423
|
+
],
|
|
409
424
|
pydantic.Field(alias="onBackpressure"),
|
|
410
425
|
] = OutputElasticBackpressureBehavior.BLOCK
|
|
411
426
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -449,19 +464,29 @@ class OutputElastic(BaseModel):
|
|
|
449
464
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
450
465
|
|
|
451
466
|
pq_compress: Annotated[
|
|
452
|
-
|
|
467
|
+
Annotated[
|
|
468
|
+
Optional[OutputElasticCompression],
|
|
469
|
+
PlainValidator(validate_open_enum(False)),
|
|
470
|
+
],
|
|
471
|
+
pydantic.Field(alias="pqCompress"),
|
|
453
472
|
] = OutputElasticCompression.NONE
|
|
454
473
|
r"""Codec to use to compress the persisted data"""
|
|
455
474
|
|
|
456
475
|
pq_on_backpressure: Annotated[
|
|
457
|
-
|
|
476
|
+
Annotated[
|
|
477
|
+
Optional[OutputElasticQueueFullBehavior],
|
|
478
|
+
PlainValidator(validate_open_enum(False)),
|
|
479
|
+
],
|
|
458
480
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
459
481
|
] = OutputElasticQueueFullBehavior.BLOCK
|
|
460
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."""
|
|
461
483
|
|
|
462
|
-
pq_mode: Annotated[
|
|
463
|
-
|
|
464
|
-
|
|
484
|
+
pq_mode: Annotated[
|
|
485
|
+
Annotated[
|
|
486
|
+
Optional[OutputElasticMode], PlainValidator(validate_open_enum(False))
|
|
487
|
+
],
|
|
488
|
+
pydantic.Field(alias="pqMode"),
|
|
489
|
+
] = OutputElasticMode.ERROR
|
|
465
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."""
|
|
466
491
|
|
|
467
492
|
pq_controls: Annotated[
|
|
@@ -1,9 +1,12 @@
|
|
|
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 utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,7 +26,9 @@ class OutputElasticCloudExtraHTTPHeader(BaseModel):
|
|
|
23
26
|
name: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class OutputElasticCloudFailedRequestLoggingMode(
|
|
29
|
+
class OutputElasticCloudFailedRequestLoggingMode(
|
|
30
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
31
|
+
):
|
|
27
32
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
28
33
|
|
|
29
34
|
PAYLOAD = "payload"
|
|
@@ -42,7 +47,7 @@ class OutputElasticCloudExtraParam(BaseModel):
|
|
|
42
47
|
value: str
|
|
43
48
|
|
|
44
49
|
|
|
45
|
-
class OutputElasticCloudAuthenticationMethod(str, Enum):
|
|
50
|
+
class OutputElasticCloudAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
46
51
|
r"""Enter credentials directly, or select a stored secret"""
|
|
47
52
|
|
|
48
53
|
MANUAL = "manual"
|
|
@@ -61,7 +66,10 @@ class OutputElasticCloudAuth(BaseModel):
|
|
|
61
66
|
disabled: Optional[bool] = False
|
|
62
67
|
|
|
63
68
|
auth_type: Annotated[
|
|
64
|
-
|
|
69
|
+
Annotated[
|
|
70
|
+
Optional[OutputElasticCloudAuthenticationMethod],
|
|
71
|
+
PlainValidator(validate_open_enum(False)),
|
|
72
|
+
],
|
|
65
73
|
pydantic.Field(alias="authType"),
|
|
66
74
|
] = OutputElasticCloudAuthenticationMethod.MANUAL
|
|
67
75
|
r"""Enter credentials directly, or select a stored secret"""
|
|
@@ -121,7 +129,7 @@ class OutputElasticCloudTimeoutRetrySettings(BaseModel):
|
|
|
121
129
|
r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
|
|
122
130
|
|
|
123
131
|
|
|
124
|
-
class OutputElasticCloudBackpressureBehavior(str, Enum):
|
|
132
|
+
class OutputElasticCloudBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
125
133
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
126
134
|
|
|
127
135
|
BLOCK = "block"
|
|
@@ -129,21 +137,21 @@ class OutputElasticCloudBackpressureBehavior(str, Enum):
|
|
|
129
137
|
QUEUE = "queue"
|
|
130
138
|
|
|
131
139
|
|
|
132
|
-
class OutputElasticCloudCompression(str, Enum):
|
|
140
|
+
class OutputElasticCloudCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
133
141
|
r"""Codec to use to compress the persisted data"""
|
|
134
142
|
|
|
135
143
|
NONE = "none"
|
|
136
144
|
GZIP = "gzip"
|
|
137
145
|
|
|
138
146
|
|
|
139
|
-
class OutputElasticCloudQueueFullBehavior(str, Enum):
|
|
147
|
+
class OutputElasticCloudQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
140
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."""
|
|
141
149
|
|
|
142
150
|
BLOCK = "block"
|
|
143
151
|
DROP = "drop"
|
|
144
152
|
|
|
145
153
|
|
|
146
|
-
class OutputElasticCloudMode(str, Enum):
|
|
154
|
+
class OutputElasticCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
147
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."""
|
|
148
156
|
|
|
149
157
|
ERROR = "error"
|
|
@@ -295,7 +303,10 @@ class OutputElasticCloud(BaseModel):
|
|
|
295
303
|
r"""Headers to add to all events"""
|
|
296
304
|
|
|
297
305
|
failed_request_logging_mode: Annotated[
|
|
298
|
-
|
|
306
|
+
Annotated[
|
|
307
|
+
Optional[OutputElasticCloudFailedRequestLoggingMode],
|
|
308
|
+
PlainValidator(validate_open_enum(False)),
|
|
309
|
+
],
|
|
299
310
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
300
311
|
] = OutputElasticCloudFailedRequestLoggingMode.NONE
|
|
301
312
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -336,11 +347,14 @@ class OutputElasticCloud(BaseModel):
|
|
|
336
347
|
|
|
337
348
|
response_honor_retry_after_header: Annotated[
|
|
338
349
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
339
|
-
] =
|
|
350
|
+
] = True
|
|
340
351
|
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."""
|
|
341
352
|
|
|
342
353
|
on_backpressure: Annotated[
|
|
343
|
-
|
|
354
|
+
Annotated[
|
|
355
|
+
Optional[OutputElasticCloudBackpressureBehavior],
|
|
356
|
+
PlainValidator(validate_open_enum(False)),
|
|
357
|
+
],
|
|
344
358
|
pydantic.Field(alias="onBackpressure"),
|
|
345
359
|
] = OutputElasticCloudBackpressureBehavior.BLOCK
|
|
346
360
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -361,18 +375,28 @@ class OutputElasticCloud(BaseModel):
|
|
|
361
375
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
362
376
|
|
|
363
377
|
pq_compress: Annotated[
|
|
364
|
-
|
|
378
|
+
Annotated[
|
|
379
|
+
Optional[OutputElasticCloudCompression],
|
|
380
|
+
PlainValidator(validate_open_enum(False)),
|
|
381
|
+
],
|
|
382
|
+
pydantic.Field(alias="pqCompress"),
|
|
365
383
|
] = OutputElasticCloudCompression.NONE
|
|
366
384
|
r"""Codec to use to compress the persisted data"""
|
|
367
385
|
|
|
368
386
|
pq_on_backpressure: Annotated[
|
|
369
|
-
|
|
387
|
+
Annotated[
|
|
388
|
+
Optional[OutputElasticCloudQueueFullBehavior],
|
|
389
|
+
PlainValidator(validate_open_enum(False)),
|
|
390
|
+
],
|
|
370
391
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
371
392
|
] = OutputElasticCloudQueueFullBehavior.BLOCK
|
|
372
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."""
|
|
373
394
|
|
|
374
395
|
pq_mode: Annotated[
|
|
375
|
-
|
|
396
|
+
Annotated[
|
|
397
|
+
Optional[OutputElasticCloudMode], PlainValidator(validate_open_enum(False))
|
|
398
|
+
],
|
|
399
|
+
pydantic.Field(alias="pqMode"),
|
|
376
400
|
] = OutputElasticCloudMode.ERROR
|
|
377
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."""
|
|
378
402
|
|
|
@@ -1,9 +1,12 @@
|
|
|
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 utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -12,14 +15,14 @@ class OutputExabeamType(str, Enum):
|
|
|
12
15
|
EXABEAM = "exabeam"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class OutputExabeamSignatureVersion(str, Enum):
|
|
18
|
+
class OutputExabeamSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
19
|
r"""Signature version to use for signing Google Cloud Storage requests"""
|
|
17
20
|
|
|
18
21
|
V2 = "v2"
|
|
19
22
|
V4 = "v4"
|
|
20
23
|
|
|
21
24
|
|
|
22
|
-
class OutputExabeamObjectACL(str, Enum):
|
|
25
|
+
class OutputExabeamObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
23
26
|
r"""Object ACL to assign to uploaded objects"""
|
|
24
27
|
|
|
25
28
|
PRIVATE = "private"
|
|
@@ -30,7 +33,7 @@ class OutputExabeamObjectACL(str, Enum):
|
|
|
30
33
|
PUBLIC_READ = "public-read"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class OutputExabeamStorageClass(str, Enum):
|
|
36
|
+
class OutputExabeamStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Storage class to select for uploaded objects"""
|
|
35
38
|
|
|
36
39
|
STANDARD = "STANDARD"
|
|
@@ -39,14 +42,14 @@ class OutputExabeamStorageClass(str, Enum):
|
|
|
39
42
|
ARCHIVE = "ARCHIVE"
|
|
40
43
|
|
|
41
44
|
|
|
42
|
-
class OutputExabeamBackpressureBehavior(str, Enum):
|
|
45
|
+
class OutputExabeamBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
43
46
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
44
47
|
|
|
45
48
|
BLOCK = "block"
|
|
46
49
|
DROP = "drop"
|
|
47
50
|
|
|
48
51
|
|
|
49
|
-
class OutputExabeamDiskSpaceProtection(str, Enum):
|
|
52
|
+
class OutputExabeamDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
50
53
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
51
54
|
|
|
52
55
|
BLOCK = "block"
|
|
@@ -165,18 +168,28 @@ class OutputExabeam(BaseModel):
|
|
|
165
168
|
r"""Google Cloud Storage service endpoint"""
|
|
166
169
|
|
|
167
170
|
signature_version: Annotated[
|
|
168
|
-
|
|
171
|
+
Annotated[
|
|
172
|
+
Optional[OutputExabeamSignatureVersion],
|
|
173
|
+
PlainValidator(validate_open_enum(False)),
|
|
174
|
+
],
|
|
169
175
|
pydantic.Field(alias="signatureVersion"),
|
|
170
176
|
] = OutputExabeamSignatureVersion.V4
|
|
171
177
|
r"""Signature version to use for signing Google Cloud Storage requests"""
|
|
172
178
|
|
|
173
179
|
object_acl: Annotated[
|
|
174
|
-
|
|
180
|
+
Annotated[
|
|
181
|
+
Optional[OutputExabeamObjectACL], PlainValidator(validate_open_enum(False))
|
|
182
|
+
],
|
|
183
|
+
pydantic.Field(alias="objectACL"),
|
|
175
184
|
] = OutputExabeamObjectACL.PRIVATE
|
|
176
185
|
r"""Object ACL to assign to uploaded objects"""
|
|
177
186
|
|
|
178
187
|
storage_class: Annotated[
|
|
179
|
-
|
|
188
|
+
Annotated[
|
|
189
|
+
Optional[OutputExabeamStorageClass],
|
|
190
|
+
PlainValidator(validate_open_enum(False)),
|
|
191
|
+
],
|
|
192
|
+
pydantic.Field(alias="storageClass"),
|
|
180
193
|
] = None
|
|
181
194
|
r"""Storage class to select for uploaded objects"""
|
|
182
195
|
|
|
@@ -216,7 +229,10 @@ class OutputExabeam(BaseModel):
|
|
|
216
229
|
r"""Maximum number of files to keep open concurrently. When exceeded, @{product} will close the oldest open files and move them to the final output location."""
|
|
217
230
|
|
|
218
231
|
on_backpressure: Annotated[
|
|
219
|
-
|
|
232
|
+
Annotated[
|
|
233
|
+
Optional[OutputExabeamBackpressureBehavior],
|
|
234
|
+
PlainValidator(validate_open_enum(False)),
|
|
235
|
+
],
|
|
220
236
|
pydantic.Field(alias="onBackpressure"),
|
|
221
237
|
] = OutputExabeamBackpressureBehavior.BLOCK
|
|
222
238
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -227,7 +243,10 @@ class OutputExabeam(BaseModel):
|
|
|
227
243
|
r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
|
|
228
244
|
|
|
229
245
|
on_disk_full_backpressure: Annotated[
|
|
230
|
-
|
|
246
|
+
Annotated[
|
|
247
|
+
Optional[OutputExabeamDiskSpaceProtection],
|
|
248
|
+
PlainValidator(validate_open_enum(False)),
|
|
249
|
+
],
|
|
231
250
|
pydantic.Field(alias="onDiskFullBackpressure"),
|
|
232
251
|
] = OutputExabeamDiskSpaceProtection.BLOCK
|
|
233
252
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|