cribl-control-plane 0.0.50__py3-none-any.whl → 0.0.50rc2__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/_version.py +3 -5
- cribl_control_plane/errors/healthstatus_error.py +8 -2
- cribl_control_plane/groups_sdk.py +4 -4
- cribl_control_plane/health.py +6 -2
- cribl_control_plane/models/__init__.py +56 -31
- 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 +24 -4
- cribl_control_plane/models/configgroupcloud.py +6 -2
- cribl_control_plane/models/createconfiggroupbyproductop.py +8 -2
- cribl_control_plane/models/createinputhectokenbyidop.py +6 -5
- cribl_control_plane/models/createversionpushop.py +5 -5
- 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/error.py +16 -0
- 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/gethealthinfoop.py +17 -0
- cribl_control_plane/models/getsummaryop.py +7 -2
- cribl_control_plane/models/getversionshowop.py +6 -5
- cribl_control_plane/models/gitinfo.py +14 -3
- cribl_control_plane/models/gitshowresult.py +19 -0
- cribl_control_plane/models/hbcriblinfo.py +24 -3
- cribl_control_plane/models/healthstatus.py +7 -4
- cribl_control_plane/models/heartbeatmetadata.py +3 -0
- cribl_control_plane/models/input.py +65 -63
- 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 +41 -32
- 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 +41 -28
- 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 +32 -10
- cribl_control_plane/models/inputmsk.py +48 -30
- 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/nodeprovidedinfo.py +3 -0
- 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/output.py +84 -79
- cribl_control_plane/models/outputazureblob.py +48 -18
- cribl_control_plane/models/outputazuredataexplorer.py +73 -28
- cribl_control_plane/models/outputazureeventhub.py +40 -18
- cribl_control_plane/models/outputazurelogs.py +35 -12
- cribl_control_plane/models/outputclickhouse.py +55 -20
- cribl_control_plane/models/outputcloudwatch.py +29 -10
- cribl_control_plane/models/outputconfluentcloud.py +71 -44
- cribl_control_plane/models/outputcriblhttp.py +44 -16
- cribl_control_plane/models/outputcribllake.py +46 -16
- cribl_control_plane/models/outputcribltcp.py +45 -18
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +49 -14
- cribl_control_plane/models/outputdatabricks.py +282 -0
- 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 +53 -20
- cribl_control_plane/models/outputdynatraceotlp.py +55 -22
- cribl_control_plane/models/outputelastic.py +43 -18
- cribl_control_plane/models/outputelasticcloud.py +36 -12
- 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 +50 -18
- cribl_control_plane/models/outputgooglecloudstorage.py +66 -24
- cribl_control_plane/models/outputgooglepubsub.py +31 -10
- cribl_control_plane/models/outputgrafanacloud.py +97 -32
- cribl_control_plane/models/outputgraphite.py +31 -14
- cribl_control_plane/models/outputhoneycomb.py +35 -12
- cribl_control_plane/models/outputhumiohec.py +43 -16
- cribl_control_plane/models/outputinfluxdb.py +42 -16
- cribl_control_plane/models/outputkafka.py +69 -40
- 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 +77 -42
- cribl_control_plane/models/outputnewrelic.py +43 -18
- cribl_control_plane/models/outputnewrelicevents.py +41 -14
- cribl_control_plane/models/outputopentelemetry.py +67 -26
- cribl_control_plane/models/outputprometheus.py +35 -12
- 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 +50 -18
- cribl_control_plane/models/outputservicenow.py +60 -24
- cribl_control_plane/models/outputsignalfx.py +37 -14
- cribl_control_plane/models/outputsns.py +36 -14
- cribl_control_plane/models/outputsplunk.py +60 -24
- cribl_control_plane/models/outputsplunkhec.py +35 -12
- 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 +35 -12
- cribl_control_plane/models/outputwebhook.py +58 -22
- cribl_control_plane/models/outputxsiam.py +35 -14
- 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/routeconf.py +3 -4
- 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/updateinputhectokenbyidandtokenop.py +6 -5
- cribl_control_plane/models/workertypes.py +2 -1
- {cribl_control_plane-0.0.50.dist-info → cribl_control_plane-0.0.50rc2.dist-info}/METADATA +1 -1
- cribl_control_plane-0.0.50rc2.dist-info/RECORD +327 -0
- cribl_control_plane/models/appmode.py +0 -13
- cribl_control_plane/models/routecloneconf.py +0 -13
- cribl_control_plane-0.0.50.dist-info/RECORD +0 -325
- {cribl_control_plane-0.0.50.dist-info → cribl_control_plane-0.0.50rc2.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,12 +15,14 @@ class OutputGoogleChronicleType(str, Enum):
|
|
|
12
15
|
GOOGLE_CHRONICLE = "google_chronicle"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class OutputGoogleChronicleAPIVersion(str, Enum):
|
|
18
|
+
class OutputGoogleChronicleAPIVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
19
|
V1 = "v1"
|
|
17
20
|
V2 = "v2"
|
|
18
21
|
|
|
19
22
|
|
|
20
|
-
class OutputGoogleChronicleAuthenticationMethod(
|
|
23
|
+
class OutputGoogleChronicleAuthenticationMethod(
|
|
24
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
25
|
+
):
|
|
21
26
|
MANUAL = "manual"
|
|
22
27
|
SECRET = "secret"
|
|
23
28
|
SERVICE_ACCOUNT = "serviceAccount"
|
|
@@ -78,7 +83,7 @@ class OutputGoogleChronicleTimeoutRetrySettings(BaseModel):
|
|
|
78
83
|
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)."""
|
|
79
84
|
|
|
80
85
|
|
|
81
|
-
class SendEventsAs(str, Enum):
|
|
86
|
+
class SendEventsAs(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
82
87
|
UNSTRUCTURED = "unstructured"
|
|
83
88
|
UDM = "udm"
|
|
84
89
|
|
|
@@ -94,7 +99,9 @@ class OutputGoogleChronicleExtraHTTPHeader(BaseModel):
|
|
|
94
99
|
name: Optional[str] = None
|
|
95
100
|
|
|
96
101
|
|
|
97
|
-
class OutputGoogleChronicleFailedRequestLoggingMode(
|
|
102
|
+
class OutputGoogleChronicleFailedRequestLoggingMode(
|
|
103
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
104
|
+
):
|
|
98
105
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
99
106
|
|
|
100
107
|
PAYLOAD = "payload"
|
|
@@ -102,7 +109,9 @@ class OutputGoogleChronicleFailedRequestLoggingMode(str, Enum):
|
|
|
102
109
|
NONE = "none"
|
|
103
110
|
|
|
104
111
|
|
|
105
|
-
class OutputGoogleChronicleBackpressureBehavior(
|
|
112
|
+
class OutputGoogleChronicleBackpressureBehavior(
|
|
113
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
114
|
+
):
|
|
106
115
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
107
116
|
|
|
108
117
|
BLOCK = "block"
|
|
@@ -132,21 +141,21 @@ class CustomLabel(BaseModel):
|
|
|
132
141
|
value: str
|
|
133
142
|
|
|
134
143
|
|
|
135
|
-
class OutputGoogleChronicleCompression(str, Enum):
|
|
144
|
+
class OutputGoogleChronicleCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
136
145
|
r"""Codec to use to compress the persisted data"""
|
|
137
146
|
|
|
138
147
|
NONE = "none"
|
|
139
148
|
GZIP = "gzip"
|
|
140
149
|
|
|
141
150
|
|
|
142
|
-
class OutputGoogleChronicleQueueFullBehavior(str, Enum):
|
|
151
|
+
class OutputGoogleChronicleQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
143
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."""
|
|
144
153
|
|
|
145
154
|
BLOCK = "block"
|
|
146
155
|
DROP = "drop"
|
|
147
156
|
|
|
148
157
|
|
|
149
|
-
class OutputGoogleChronicleMode(str, Enum):
|
|
158
|
+
class OutputGoogleChronicleMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
150
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."""
|
|
151
160
|
|
|
152
161
|
ERROR = "error"
|
|
@@ -276,11 +285,18 @@ class OutputGoogleChronicle(BaseModel):
|
|
|
276
285
|
r"""Tags for filtering and grouping in @{product}"""
|
|
277
286
|
|
|
278
287
|
api_version: Annotated[
|
|
279
|
-
|
|
288
|
+
Annotated[
|
|
289
|
+
Optional[OutputGoogleChronicleAPIVersion],
|
|
290
|
+
PlainValidator(validate_open_enum(False)),
|
|
291
|
+
],
|
|
292
|
+
pydantic.Field(alias="apiVersion"),
|
|
280
293
|
] = OutputGoogleChronicleAPIVersion.V1
|
|
281
294
|
|
|
282
295
|
authentication_method: Annotated[
|
|
283
|
-
|
|
296
|
+
Annotated[
|
|
297
|
+
Optional[OutputGoogleChronicleAuthenticationMethod],
|
|
298
|
+
PlainValidator(validate_open_enum(False)),
|
|
299
|
+
],
|
|
284
300
|
pydantic.Field(alias="authenticationMethod"),
|
|
285
301
|
] = OutputGoogleChronicleAuthenticationMethod.SERVICE_ACCOUNT
|
|
286
302
|
|
|
@@ -301,7 +317,8 @@ class OutputGoogleChronicle(BaseModel):
|
|
|
301
317
|
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."""
|
|
302
318
|
|
|
303
319
|
log_format_type: Annotated[
|
|
304
|
-
Optional[SendEventsAs],
|
|
320
|
+
Annotated[Optional[SendEventsAs], PlainValidator(validate_open_enum(False))],
|
|
321
|
+
pydantic.Field(alias="logFormatType"),
|
|
305
322
|
] = SendEventsAs.UNSTRUCTURED
|
|
306
323
|
|
|
307
324
|
region: Optional[str] = None
|
|
@@ -346,7 +363,10 @@ class OutputGoogleChronicle(BaseModel):
|
|
|
346
363
|
r"""Headers to add to all events"""
|
|
347
364
|
|
|
348
365
|
failed_request_logging_mode: Annotated[
|
|
349
|
-
|
|
366
|
+
Annotated[
|
|
367
|
+
Optional[OutputGoogleChronicleFailedRequestLoggingMode],
|
|
368
|
+
PlainValidator(validate_open_enum(False)),
|
|
369
|
+
],
|
|
350
370
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
351
371
|
] = OutputGoogleChronicleFailedRequestLoggingMode.NONE
|
|
352
372
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -362,7 +382,10 @@ class OutputGoogleChronicle(BaseModel):
|
|
|
362
382
|
r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned."""
|
|
363
383
|
|
|
364
384
|
on_backpressure: Annotated[
|
|
365
|
-
|
|
385
|
+
Annotated[
|
|
386
|
+
Optional[OutputGoogleChronicleBackpressureBehavior],
|
|
387
|
+
PlainValidator(validate_open_enum(False)),
|
|
388
|
+
],
|
|
366
389
|
pydantic.Field(alias="onBackpressure"),
|
|
367
390
|
] = OutputGoogleChronicleBackpressureBehavior.BLOCK
|
|
368
391
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -430,18 +453,29 @@ class OutputGoogleChronicle(BaseModel):
|
|
|
430
453
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
431
454
|
|
|
432
455
|
pq_compress: Annotated[
|
|
433
|
-
|
|
456
|
+
Annotated[
|
|
457
|
+
Optional[OutputGoogleChronicleCompression],
|
|
458
|
+
PlainValidator(validate_open_enum(False)),
|
|
459
|
+
],
|
|
460
|
+
pydantic.Field(alias="pqCompress"),
|
|
434
461
|
] = OutputGoogleChronicleCompression.NONE
|
|
435
462
|
r"""Codec to use to compress the persisted data"""
|
|
436
463
|
|
|
437
464
|
pq_on_backpressure: Annotated[
|
|
438
|
-
|
|
465
|
+
Annotated[
|
|
466
|
+
Optional[OutputGoogleChronicleQueueFullBehavior],
|
|
467
|
+
PlainValidator(validate_open_enum(False)),
|
|
468
|
+
],
|
|
439
469
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
440
470
|
] = OutputGoogleChronicleQueueFullBehavior.BLOCK
|
|
441
471
|
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."""
|
|
442
472
|
|
|
443
473
|
pq_mode: Annotated[
|
|
444
|
-
|
|
474
|
+
Annotated[
|
|
475
|
+
Optional[OutputGoogleChronicleMode],
|
|
476
|
+
PlainValidator(validate_open_enum(False)),
|
|
477
|
+
],
|
|
478
|
+
pydantic.Field(alias="pqMode"),
|
|
445
479
|
] = OutputGoogleChronicleMode.ERROR
|
|
446
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."""
|
|
447
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
|
|
|
@@ -12,14 +15,14 @@ class OutputGoogleCloudLoggingType(str, Enum):
|
|
|
12
15
|
GOOGLE_CLOUD_LOGGING = "google_cloud_logging"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class LogLocationType(str, Enum):
|
|
18
|
+
class LogLocationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
19
|
PROJECT = "project"
|
|
17
20
|
ORGANIZATION = "organization"
|
|
18
21
|
BILLING_ACCOUNT = "billingAccount"
|
|
19
22
|
FOLDER = "folder"
|
|
20
23
|
|
|
21
24
|
|
|
22
|
-
class PayloadFormat(str, Enum):
|
|
25
|
+
class PayloadFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
23
26
|
r"""Format to use when sending payload. Defaults to Text."""
|
|
24
27
|
|
|
25
28
|
TEXT = "text"
|
|
@@ -56,7 +59,9 @@ class ResourceTypeLabel(BaseModel):
|
|
|
56
59
|
r"""JavaScript expression to compute the label's value."""
|
|
57
60
|
|
|
58
61
|
|
|
59
|
-
class OutputGoogleCloudLoggingGoogleAuthenticationMethod(
|
|
62
|
+
class OutputGoogleCloudLoggingGoogleAuthenticationMethod(
|
|
63
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
64
|
+
):
|
|
60
65
|
r"""Choose Auto to use Google Application Default Credentials (ADC), Manual to enter Google service account credentials directly, or Secret to select or create a stored secret that references Google service account credentials."""
|
|
61
66
|
|
|
62
67
|
AUTO = "auto"
|
|
@@ -64,7 +69,9 @@ class OutputGoogleCloudLoggingGoogleAuthenticationMethod(str, Enum):
|
|
|
64
69
|
SECRET = "secret"
|
|
65
70
|
|
|
66
71
|
|
|
67
|
-
class OutputGoogleCloudLoggingBackpressureBehavior(
|
|
72
|
+
class OutputGoogleCloudLoggingBackpressureBehavior(
|
|
73
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
74
|
+
):
|
|
68
75
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
69
76
|
|
|
70
77
|
BLOCK = "block"
|
|
@@ -72,21 +79,23 @@ class OutputGoogleCloudLoggingBackpressureBehavior(str, Enum):
|
|
|
72
79
|
QUEUE = "queue"
|
|
73
80
|
|
|
74
81
|
|
|
75
|
-
class OutputGoogleCloudLoggingCompression(str, Enum):
|
|
82
|
+
class OutputGoogleCloudLoggingCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
76
83
|
r"""Codec to use to compress the persisted data"""
|
|
77
84
|
|
|
78
85
|
NONE = "none"
|
|
79
86
|
GZIP = "gzip"
|
|
80
87
|
|
|
81
88
|
|
|
82
|
-
class OutputGoogleCloudLoggingQueueFullBehavior(
|
|
89
|
+
class OutputGoogleCloudLoggingQueueFullBehavior(
|
|
90
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
91
|
+
):
|
|
83
92
|
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."""
|
|
84
93
|
|
|
85
94
|
BLOCK = "block"
|
|
86
95
|
DROP = "drop"
|
|
87
96
|
|
|
88
97
|
|
|
89
|
-
class OutputGoogleCloudLoggingMode(str, Enum):
|
|
98
|
+
class OutputGoogleCloudLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
90
99
|
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."""
|
|
91
100
|
|
|
92
101
|
ERROR = "error"
|
|
@@ -106,9 +115,9 @@ class OutputGoogleCloudLoggingTypedDict(TypedDict):
|
|
|
106
115
|
type: OutputGoogleCloudLoggingType
|
|
107
116
|
log_location_type: LogLocationType
|
|
108
117
|
log_name_expression: str
|
|
109
|
-
r"""JavaScript expression to compute the value of the log name."""
|
|
118
|
+
r"""JavaScript expression to compute the value of the log name. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
110
119
|
log_location_expression: str
|
|
111
|
-
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated."""
|
|
120
|
+
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
112
121
|
id: NotRequired[str]
|
|
113
122
|
r"""Unique ID for this output"""
|
|
114
123
|
pipeline: NotRequired[str]
|
|
@@ -119,6 +128,7 @@ class OutputGoogleCloudLoggingTypedDict(TypedDict):
|
|
|
119
128
|
r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
|
|
120
129
|
streamtags: NotRequired[List[str]]
|
|
121
130
|
r"""Tags for filtering and grouping in @{product}"""
|
|
131
|
+
sanitize_log_names: NotRequired[bool]
|
|
122
132
|
payload_format: NotRequired[PayloadFormat]
|
|
123
133
|
r"""Format to use when sending payload. Defaults to Text."""
|
|
124
134
|
log_labels: NotRequired[List[LogLabelTypedDict]]
|
|
@@ -233,16 +243,17 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
233
243
|
type: OutputGoogleCloudLoggingType
|
|
234
244
|
|
|
235
245
|
log_location_type: Annotated[
|
|
236
|
-
LogLocationType,
|
|
246
|
+
Annotated[LogLocationType, PlainValidator(validate_open_enum(False))],
|
|
247
|
+
pydantic.Field(alias="logLocationType"),
|
|
237
248
|
]
|
|
238
249
|
|
|
239
250
|
log_name_expression: Annotated[str, pydantic.Field(alias="logNameExpression")]
|
|
240
|
-
r"""JavaScript expression to compute the value of the log name."""
|
|
251
|
+
r"""JavaScript expression to compute the value of the log name. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
241
252
|
|
|
242
253
|
log_location_expression: Annotated[
|
|
243
254
|
str, pydantic.Field(alias="logLocationExpression")
|
|
244
255
|
]
|
|
245
|
-
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated."""
|
|
256
|
+
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
246
257
|
|
|
247
258
|
id: Optional[str] = None
|
|
248
259
|
r"""Unique ID for this output"""
|
|
@@ -261,8 +272,13 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
261
272
|
streamtags: Optional[List[str]] = None
|
|
262
273
|
r"""Tags for filtering and grouping in @{product}"""
|
|
263
274
|
|
|
275
|
+
sanitize_log_names: Annotated[
|
|
276
|
+
Optional[bool], pydantic.Field(alias="sanitizeLogNames")
|
|
277
|
+
] = False
|
|
278
|
+
|
|
264
279
|
payload_format: Annotated[
|
|
265
|
-
Optional[PayloadFormat],
|
|
280
|
+
Annotated[Optional[PayloadFormat], PlainValidator(validate_open_enum(False))],
|
|
281
|
+
pydantic.Field(alias="payloadFormat"),
|
|
266
282
|
] = PayloadFormat.TEXT
|
|
267
283
|
r"""Format to use when sending payload. Defaults to Text."""
|
|
268
284
|
|
|
@@ -292,7 +308,10 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
292
308
|
r"""JavaScript expression to compute the value of the insert ID field."""
|
|
293
309
|
|
|
294
310
|
google_auth_method: Annotated[
|
|
295
|
-
|
|
311
|
+
Annotated[
|
|
312
|
+
Optional[OutputGoogleCloudLoggingGoogleAuthenticationMethod],
|
|
313
|
+
PlainValidator(validate_open_enum(False)),
|
|
314
|
+
],
|
|
296
315
|
pydantic.Field(alias="googleAuthMethod"),
|
|
297
316
|
] = OutputGoogleCloudLoggingGoogleAuthenticationMethod.MANUAL
|
|
298
317
|
r"""Choose Auto to use Google Application Default Credentials (ADC), Manual to enter Google service account credentials directly, or Secret to select or create a stored secret that references Google service account credentials."""
|
|
@@ -475,7 +494,10 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
475
494
|
r"""A JavaScript expression that evaluates to the the sampling decision of the span associated with the log entry. See the [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) for details."""
|
|
476
495
|
|
|
477
496
|
on_backpressure: Annotated[
|
|
478
|
-
|
|
497
|
+
Annotated[
|
|
498
|
+
Optional[OutputGoogleCloudLoggingBackpressureBehavior],
|
|
499
|
+
PlainValidator(validate_open_enum(False)),
|
|
500
|
+
],
|
|
479
501
|
pydantic.Field(alias="onBackpressure"),
|
|
480
502
|
] = OutputGoogleCloudLoggingBackpressureBehavior.BLOCK
|
|
481
503
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -506,19 +528,29 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
506
528
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
507
529
|
|
|
508
530
|
pq_compress: Annotated[
|
|
509
|
-
|
|
531
|
+
Annotated[
|
|
532
|
+
Optional[OutputGoogleCloudLoggingCompression],
|
|
533
|
+
PlainValidator(validate_open_enum(False)),
|
|
534
|
+
],
|
|
510
535
|
pydantic.Field(alias="pqCompress"),
|
|
511
536
|
] = OutputGoogleCloudLoggingCompression.NONE
|
|
512
537
|
r"""Codec to use to compress the persisted data"""
|
|
513
538
|
|
|
514
539
|
pq_on_backpressure: Annotated[
|
|
515
|
-
|
|
540
|
+
Annotated[
|
|
541
|
+
Optional[OutputGoogleCloudLoggingQueueFullBehavior],
|
|
542
|
+
PlainValidator(validate_open_enum(False)),
|
|
543
|
+
],
|
|
516
544
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
517
545
|
] = OutputGoogleCloudLoggingQueueFullBehavior.BLOCK
|
|
518
546
|
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."""
|
|
519
547
|
|
|
520
548
|
pq_mode: Annotated[
|
|
521
|
-
|
|
549
|
+
Annotated[
|
|
550
|
+
Optional[OutputGoogleCloudLoggingMode],
|
|
551
|
+
PlainValidator(validate_open_enum(False)),
|
|
552
|
+
],
|
|
553
|
+
pydantic.Field(alias="pqMode"),
|
|
522
554
|
] = OutputGoogleCloudLoggingMode.ERROR
|
|
523
555
|
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."""
|
|
524
556
|
|
|
@@ -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,20 +15,22 @@ class OutputGoogleCloudStorageType(str, Enum):
|
|
|
12
15
|
GOOGLE_CLOUD_STORAGE = "google_cloud_storage"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class OutputGoogleCloudStorageSignatureVersion(str, Enum):
|
|
18
|
+
class OutputGoogleCloudStorageSignatureVersion(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 OutputGoogleCloudStorageAuthenticationMethod(
|
|
25
|
+
class OutputGoogleCloudStorageAuthenticationMethod(
|
|
26
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
27
|
+
):
|
|
23
28
|
AUTO = "auto"
|
|
24
29
|
MANUAL = "manual"
|
|
25
30
|
SECRET = "secret"
|
|
26
31
|
|
|
27
32
|
|
|
28
|
-
class OutputGoogleCloudStorageObjectACL(str, Enum):
|
|
33
|
+
class OutputGoogleCloudStorageObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
29
34
|
r"""Object ACL to assign to uploaded objects"""
|
|
30
35
|
|
|
31
36
|
PRIVATE = "private"
|
|
@@ -36,7 +41,7 @@ class OutputGoogleCloudStorageObjectACL(str, Enum):
|
|
|
36
41
|
PUBLIC_READ = "public-read"
|
|
37
42
|
|
|
38
43
|
|
|
39
|
-
class OutputGoogleCloudStorageStorageClass(str, Enum):
|
|
44
|
+
class OutputGoogleCloudStorageStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
40
45
|
r"""Storage class to select for uploaded objects"""
|
|
41
46
|
|
|
42
47
|
STANDARD = "STANDARD"
|
|
@@ -45,7 +50,7 @@ class OutputGoogleCloudStorageStorageClass(str, Enum):
|
|
|
45
50
|
ARCHIVE = "ARCHIVE"
|
|
46
51
|
|
|
47
52
|
|
|
48
|
-
class OutputGoogleCloudStorageDataFormat(str, Enum):
|
|
53
|
+
class OutputGoogleCloudStorageDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
49
54
|
r"""Format of the output data"""
|
|
50
55
|
|
|
51
56
|
JSON = "json"
|
|
@@ -53,28 +58,32 @@ class OutputGoogleCloudStorageDataFormat(str, Enum):
|
|
|
53
58
|
PARQUET = "parquet"
|
|
54
59
|
|
|
55
60
|
|
|
56
|
-
class OutputGoogleCloudStorageBackpressureBehavior(
|
|
61
|
+
class OutputGoogleCloudStorageBackpressureBehavior(
|
|
62
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
63
|
+
):
|
|
57
64
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
58
65
|
|
|
59
66
|
BLOCK = "block"
|
|
60
67
|
DROP = "drop"
|
|
61
68
|
|
|
62
69
|
|
|
63
|
-
class OutputGoogleCloudStorageDiskSpaceProtection(
|
|
70
|
+
class OutputGoogleCloudStorageDiskSpaceProtection(
|
|
71
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
72
|
+
):
|
|
64
73
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
65
74
|
|
|
66
75
|
BLOCK = "block"
|
|
67
76
|
DROP = "drop"
|
|
68
77
|
|
|
69
78
|
|
|
70
|
-
class OutputGoogleCloudStorageCompression(str, Enum):
|
|
79
|
+
class OutputGoogleCloudStorageCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
71
80
|
r"""Data compression format to apply to HTTP content before it is delivered"""
|
|
72
81
|
|
|
73
82
|
NONE = "none"
|
|
74
83
|
GZIP = "gzip"
|
|
75
84
|
|
|
76
85
|
|
|
77
|
-
class OutputGoogleCloudStorageCompressionLevel(str, Enum):
|
|
86
|
+
class OutputGoogleCloudStorageCompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
78
87
|
r"""Compression level to apply before moving files to final destination"""
|
|
79
88
|
|
|
80
89
|
BEST_SPEED = "best_speed"
|
|
@@ -82,7 +91,7 @@ class OutputGoogleCloudStorageCompressionLevel(str, Enum):
|
|
|
82
91
|
BEST_COMPRESSION = "best_compression"
|
|
83
92
|
|
|
84
93
|
|
|
85
|
-
class OutputGoogleCloudStorageParquetVersion(str, Enum):
|
|
94
|
+
class OutputGoogleCloudStorageParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
86
95
|
r"""Determines which data types are supported and how they are represented"""
|
|
87
96
|
|
|
88
97
|
PARQUET_1_0 = "PARQUET_1_0"
|
|
@@ -90,7 +99,7 @@ class OutputGoogleCloudStorageParquetVersion(str, Enum):
|
|
|
90
99
|
PARQUET_2_6 = "PARQUET_2_6"
|
|
91
100
|
|
|
92
101
|
|
|
93
|
-
class OutputGoogleCloudStorageDataPageVersion(str, Enum):
|
|
102
|
+
class OutputGoogleCloudStorageDataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
94
103
|
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."""
|
|
95
104
|
|
|
96
105
|
DATA_PAGE_V1 = "DATA_PAGE_V1"
|
|
@@ -244,13 +253,19 @@ class OutputGoogleCloudStorage(BaseModel):
|
|
|
244
253
|
r"""Google Cloud Storage service endpoint"""
|
|
245
254
|
|
|
246
255
|
signature_version: Annotated[
|
|
247
|
-
|
|
256
|
+
Annotated[
|
|
257
|
+
Optional[OutputGoogleCloudStorageSignatureVersion],
|
|
258
|
+
PlainValidator(validate_open_enum(False)),
|
|
259
|
+
],
|
|
248
260
|
pydantic.Field(alias="signatureVersion"),
|
|
249
261
|
] = OutputGoogleCloudStorageSignatureVersion.V4
|
|
250
262
|
r"""Signature version to use for signing Google Cloud Storage requests"""
|
|
251
263
|
|
|
252
264
|
aws_authentication_method: Annotated[
|
|
253
|
-
|
|
265
|
+
Annotated[
|
|
266
|
+
Optional[OutputGoogleCloudStorageAuthenticationMethod],
|
|
267
|
+
PlainValidator(validate_open_enum(False)),
|
|
268
|
+
],
|
|
254
269
|
pydantic.Field(alias="awsAuthenticationMethod"),
|
|
255
270
|
] = OutputGoogleCloudStorageAuthenticationMethod.MANUAL
|
|
256
271
|
|
|
@@ -268,12 +283,19 @@ class OutputGoogleCloudStorage(BaseModel):
|
|
|
268
283
|
r"""Disable if you can access files within the bucket but not the bucket itself"""
|
|
269
284
|
|
|
270
285
|
object_acl: Annotated[
|
|
271
|
-
|
|
286
|
+
Annotated[
|
|
287
|
+
Optional[OutputGoogleCloudStorageObjectACL],
|
|
288
|
+
PlainValidator(validate_open_enum(False)),
|
|
289
|
+
],
|
|
290
|
+
pydantic.Field(alias="objectACL"),
|
|
272
291
|
] = OutputGoogleCloudStorageObjectACL.PRIVATE
|
|
273
292
|
r"""Object ACL to assign to uploaded objects"""
|
|
274
293
|
|
|
275
294
|
storage_class: Annotated[
|
|
276
|
-
|
|
295
|
+
Annotated[
|
|
296
|
+
Optional[OutputGoogleCloudStorageStorageClass],
|
|
297
|
+
PlainValidator(validate_open_enum(False)),
|
|
298
|
+
],
|
|
277
299
|
pydantic.Field(alias="storageClass"),
|
|
278
300
|
] = None
|
|
279
301
|
r"""Storage class to select for uploaded objects"""
|
|
@@ -304,7 +326,11 @@ class OutputGoogleCloudStorage(BaseModel):
|
|
|
304
326
|
r"""JavaScript expression defining how files are partitioned and organized. Default is date-based. If blank, Stream will fall back to the event's __partition field value – if present – otherwise to each location's root directory."""
|
|
305
327
|
|
|
306
328
|
format_: Annotated[
|
|
307
|
-
|
|
329
|
+
Annotated[
|
|
330
|
+
Optional[OutputGoogleCloudStorageDataFormat],
|
|
331
|
+
PlainValidator(validate_open_enum(False)),
|
|
332
|
+
],
|
|
333
|
+
pydantic.Field(alias="format"),
|
|
308
334
|
] = OutputGoogleCloudStorageDataFormat.JSON
|
|
309
335
|
r"""Format of the output data"""
|
|
310
336
|
|
|
@@ -347,7 +373,10 @@ class OutputGoogleCloudStorage(BaseModel):
|
|
|
347
373
|
r"""Buffer size used to write to a file"""
|
|
348
374
|
|
|
349
375
|
on_backpressure: Annotated[
|
|
350
|
-
|
|
376
|
+
Annotated[
|
|
377
|
+
Optional[OutputGoogleCloudStorageBackpressureBehavior],
|
|
378
|
+
PlainValidator(validate_open_enum(False)),
|
|
379
|
+
],
|
|
351
380
|
pydantic.Field(alias="onBackpressure"),
|
|
352
381
|
] = OutputGoogleCloudStorageBackpressureBehavior.BLOCK
|
|
353
382
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -358,20 +387,27 @@ class OutputGoogleCloudStorage(BaseModel):
|
|
|
358
387
|
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"""
|
|
359
388
|
|
|
360
389
|
on_disk_full_backpressure: Annotated[
|
|
361
|
-
|
|
390
|
+
Annotated[
|
|
391
|
+
Optional[OutputGoogleCloudStorageDiskSpaceProtection],
|
|
392
|
+
PlainValidator(validate_open_enum(False)),
|
|
393
|
+
],
|
|
362
394
|
pydantic.Field(alias="onDiskFullBackpressure"),
|
|
363
395
|
] = OutputGoogleCloudStorageDiskSpaceProtection.BLOCK
|
|
364
396
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
365
397
|
|
|
366
398
|
description: Optional[str] = None
|
|
367
399
|
|
|
368
|
-
compress:
|
|
369
|
-
OutputGoogleCloudStorageCompression
|
|
370
|
-
|
|
400
|
+
compress: Annotated[
|
|
401
|
+
Optional[OutputGoogleCloudStorageCompression],
|
|
402
|
+
PlainValidator(validate_open_enum(False)),
|
|
403
|
+
] = OutputGoogleCloudStorageCompression.GZIP
|
|
371
404
|
r"""Data compression format to apply to HTTP content before it is delivered"""
|
|
372
405
|
|
|
373
406
|
compression_level: Annotated[
|
|
374
|
-
|
|
407
|
+
Annotated[
|
|
408
|
+
Optional[OutputGoogleCloudStorageCompressionLevel],
|
|
409
|
+
PlainValidator(validate_open_enum(False)),
|
|
410
|
+
],
|
|
375
411
|
pydantic.Field(alias="compressionLevel"),
|
|
376
412
|
] = OutputGoogleCloudStorageCompressionLevel.BEST_SPEED
|
|
377
413
|
r"""Compression level to apply before moving files to final destination"""
|
|
@@ -382,13 +418,19 @@ class OutputGoogleCloudStorage(BaseModel):
|
|
|
382
418
|
r"""Automatically calculate the schema based on the events of each Parquet file generated"""
|
|
383
419
|
|
|
384
420
|
parquet_version: Annotated[
|
|
385
|
-
|
|
421
|
+
Annotated[
|
|
422
|
+
Optional[OutputGoogleCloudStorageParquetVersion],
|
|
423
|
+
PlainValidator(validate_open_enum(False)),
|
|
424
|
+
],
|
|
386
425
|
pydantic.Field(alias="parquetVersion"),
|
|
387
426
|
] = OutputGoogleCloudStorageParquetVersion.PARQUET_2_6
|
|
388
427
|
r"""Determines which data types are supported and how they are represented"""
|
|
389
428
|
|
|
390
429
|
parquet_data_page_version: Annotated[
|
|
391
|
-
|
|
430
|
+
Annotated[
|
|
431
|
+
Optional[OutputGoogleCloudStorageDataPageVersion],
|
|
432
|
+
PlainValidator(validate_open_enum(False)),
|
|
433
|
+
],
|
|
392
434
|
pydantic.Field(alias="parquetDataPageVersion"),
|
|
393
435
|
] = OutputGoogleCloudStorageDataPageVersion.DATA_PAGE_V2
|
|
394
436
|
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."""
|