cribl-control-plane 0.0.16__py3-none-any.whl → 0.0.18__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 -3
- cribl_control_plane/errors/healthstatus_error.py +2 -8
- cribl_control_plane/models/__init__.py +4365 -4124
- cribl_control_plane/models/createinputop.py +1734 -2771
- cribl_control_plane/models/createoutputop.py +2153 -4314
- cribl_control_plane/models/createversioncommitop.py +24 -0
- cribl_control_plane/models/createversionpushop.py +23 -0
- cribl_control_plane/models/createversionrevertop.py +47 -0
- cribl_control_plane/models/createversionsyncop.py +23 -0
- cribl_control_plane/models/createversionundoop.py +37 -0
- cribl_control_plane/models/getversionbranchop.py +23 -0
- cribl_control_plane/models/getversioncountop.py +47 -0
- cribl_control_plane/models/getversioncurrentbranchop.py +23 -0
- cribl_control_plane/models/getversiondiffop.py +63 -0
- cribl_control_plane/models/getversionfilesop.py +48 -0
- cribl_control_plane/models/getversioninfoop.py +24 -0
- cribl_control_plane/models/getversionshowop.py +63 -0
- cribl_control_plane/models/getversionstatusop.py +38 -0
- cribl_control_plane/models/gitcommitparams.py +23 -0
- cribl_control_plane/models/gitcommitsummary.py +68 -0
- cribl_control_plane/models/gitfile.py +20 -0
- cribl_control_plane/models/gitfilesresponse.py +22 -0
- cribl_control_plane/models/gitinfo.py +23 -0
- cribl_control_plane/models/gitrevertparams.py +20 -0
- cribl_control_plane/models/gitrevertresult.py +48 -0
- cribl_control_plane/models/gitstatusresult.py +73 -0
- cribl_control_plane/models/healthstatus.py +4 -7
- cribl_control_plane/models/inputappscope.py +16 -36
- cribl_control_plane/models/inputazureblob.py +8 -19
- cribl_control_plane/models/inputcollection.py +6 -15
- cribl_control_plane/models/inputconfluentcloud.py +20 -45
- cribl_control_plane/models/inputcribl.py +6 -13
- cribl_control_plane/models/inputcriblhttp.py +10 -27
- cribl_control_plane/models/inputcribllakehttp.py +12 -26
- cribl_control_plane/models/inputcriblmetrics.py +6 -14
- cribl_control_plane/models/inputcribltcp.py +10 -27
- cribl_control_plane/models/inputcrowdstrike.py +12 -28
- cribl_control_plane/models/inputdatadogagent.py +10 -28
- cribl_control_plane/models/inputdatagen.py +6 -13
- cribl_control_plane/models/inputedgeprometheus.py +31 -64
- cribl_control_plane/models/inputelastic.py +16 -44
- cribl_control_plane/models/inputeventhub.py +8 -19
- cribl_control_plane/models/inputexec.py +8 -16
- cribl_control_plane/models/inputfile.py +8 -17
- cribl_control_plane/models/inputfirehose.py +10 -27
- cribl_control_plane/models/inputgooglepubsub.py +8 -23
- cribl_control_plane/models/inputgrafana_union.py +35 -81
- cribl_control_plane/models/inputhttp.py +10 -27
- cribl_control_plane/models/inputhttpraw.py +10 -27
- cribl_control_plane/models/inputjournalfiles.py +6 -16
- cribl_control_plane/models/inputkafka.py +16 -45
- cribl_control_plane/models/inputkinesis.py +16 -42
- cribl_control_plane/models/inputkubeevents.py +6 -13
- cribl_control_plane/models/inputkubelogs.py +10 -18
- cribl_control_plane/models/inputkubemetrics.py +10 -18
- cribl_control_plane/models/inputloki.py +12 -33
- cribl_control_plane/models/inputmetrics.py +10 -25
- cribl_control_plane/models/inputmodeldriventelemetry.py +12 -32
- cribl_control_plane/models/inputmsk.py +18 -52
- cribl_control_plane/models/inputnetflow.py +6 -15
- cribl_control_plane/models/inputoffice365mgmt.py +16 -37
- cribl_control_plane/models/inputoffice365msgtrace.py +18 -39
- cribl_control_plane/models/inputoffice365service.py +18 -39
- cribl_control_plane/models/inputopentelemetry.py +18 -42
- cribl_control_plane/models/inputprometheus.py +20 -54
- cribl_control_plane/models/inputprometheusrw.py +12 -34
- cribl_control_plane/models/inputrawudp.py +6 -15
- cribl_control_plane/models/inputs3.py +10 -23
- cribl_control_plane/models/inputs3inventory.py +12 -28
- cribl_control_plane/models/inputsecuritylake.py +12 -29
- cribl_control_plane/models/inputsnmp.py +8 -20
- cribl_control_plane/models/inputsplunk.py +14 -37
- cribl_control_plane/models/inputsplunkhec.py +12 -33
- cribl_control_plane/models/inputsplunksearch.py +16 -37
- cribl_control_plane/models/inputsqs.py +12 -31
- cribl_control_plane/models/inputsyslog_union.py +29 -53
- cribl_control_plane/models/inputsystemmetrics.py +26 -50
- cribl_control_plane/models/inputsystemstate.py +10 -18
- cribl_control_plane/models/inputtcp.py +12 -33
- cribl_control_plane/models/inputtcpjson.py +12 -33
- cribl_control_plane/models/inputwef.py +20 -45
- cribl_control_plane/models/inputwindowsmetrics.py +26 -46
- cribl_control_plane/models/inputwineventlogs.py +12 -22
- cribl_control_plane/models/inputwiz.py +10 -25
- cribl_control_plane/models/inputzscalerhec.py +12 -33
- cribl_control_plane/models/output.py +3 -6
- cribl_control_plane/models/outputazureblob.py +20 -52
- cribl_control_plane/models/outputazuredataexplorer.py +30 -77
- cribl_control_plane/models/outputazureeventhub.py +20 -44
- cribl_control_plane/models/outputazurelogs.py +14 -37
- cribl_control_plane/models/outputclickhouse.py +22 -59
- cribl_control_plane/models/outputcloudwatch.py +12 -33
- cribl_control_plane/models/outputconfluentcloud.py +32 -75
- cribl_control_plane/models/outputcriblhttp.py +18 -46
- cribl_control_plane/models/outputcribllake.py +18 -48
- cribl_control_plane/models/outputcribltcp.py +20 -47
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
- cribl_control_plane/models/outputdatadog.py +22 -50
- cribl_control_plane/models/outputdataset.py +20 -48
- cribl_control_plane/models/outputdefault.py +2 -5
- cribl_control_plane/models/outputdevnull.py +2 -5
- cribl_control_plane/models/outputdiskspool.py +4 -9
- cribl_control_plane/models/outputdls3.py +26 -72
- cribl_control_plane/models/outputdynatracehttp.py +22 -57
- cribl_control_plane/models/outputdynatraceotlp.py +24 -59
- cribl_control_plane/models/outputelastic.py +20 -45
- cribl_control_plane/models/outputelasticcloud.py +14 -40
- cribl_control_plane/models/outputexabeam.py +12 -33
- cribl_control_plane/models/outputfilesystem.py +16 -41
- cribl_control_plane/models/outputgooglechronicle.py +18 -54
- cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
- cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
- cribl_control_plane/models/outputgooglepubsub.py +16 -39
- cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
- cribl_control_plane/models/outputgraphite.py +16 -35
- cribl_control_plane/models/outputhoneycomb.py +14 -37
- cribl_control_plane/models/outputhumiohec.py +18 -47
- cribl_control_plane/models/outputinfluxdb.py +18 -44
- cribl_control_plane/models/outputkafka.py +28 -73
- cribl_control_plane/models/outputkinesis.py +18 -44
- cribl_control_plane/models/outputloki.py +18 -43
- cribl_control_plane/models/outputminio.py +26 -69
- cribl_control_plane/models/outputmsk.py +30 -81
- cribl_control_plane/models/outputnetflow.py +2 -5
- cribl_control_plane/models/outputnewrelic.py +20 -45
- cribl_control_plane/models/outputnewrelicevents.py +16 -45
- cribl_control_plane/models/outputopentelemetry.py +28 -69
- cribl_control_plane/models/outputprometheus.py +14 -37
- cribl_control_plane/models/outputring.py +10 -21
- cribl_control_plane/models/outputrouter.py +2 -5
- cribl_control_plane/models/outputs3.py +28 -72
- cribl_control_plane/models/outputsecuritylake.py +20 -56
- cribl_control_plane/models/outputsentinel.py +20 -49
- cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
- cribl_control_plane/models/outputservicenow.py +26 -64
- cribl_control_plane/models/outputsignalfx.py +16 -39
- cribl_control_plane/models/outputsnmp.py +2 -5
- cribl_control_plane/models/outputsns.py +16 -40
- cribl_control_plane/models/outputsplunk.py +26 -64
- cribl_control_plane/models/outputsplunkhec.py +14 -37
- cribl_control_plane/models/outputsplunklb.py +36 -83
- cribl_control_plane/models/outputsqs.py +18 -45
- cribl_control_plane/models/outputstatsd.py +16 -34
- cribl_control_plane/models/outputstatsdext.py +14 -33
- cribl_control_plane/models/outputsumologic.py +14 -37
- cribl_control_plane/models/outputsyslog.py +26 -60
- cribl_control_plane/models/outputtcpjson.py +22 -54
- cribl_control_plane/models/outputwavefront.py +14 -37
- cribl_control_plane/models/outputwebhook.py +24 -60
- cribl_control_plane/models/outputxsiam.py +16 -37
- cribl_control_plane/sdk.py +4 -0
- cribl_control_plane/versioning.py +2309 -0
- {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.18.dist-info}/METADATA +18 -2
- cribl_control_plane-0.0.18.dist-info/RECORD +237 -0
- cribl_control_plane-0.0.16.dist-info/RECORD +0 -215
- {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.18.dist-info}/WHEEL +0 -0
|
@@ -1,17 +1,14 @@
|
|
|
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
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
|
-
from cribl_control_plane.utils import validate_open_enum
|
|
7
5
|
from enum import Enum
|
|
8
6
|
import pydantic
|
|
9
|
-
from pydantic.functional_validators import PlainValidator
|
|
10
7
|
from typing import List, Optional
|
|
11
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
9
|
|
|
13
10
|
|
|
14
|
-
class OutputPrometheusType(str, Enum
|
|
11
|
+
class OutputPrometheusType(str, Enum):
|
|
15
12
|
PROMETHEUS = "prometheus"
|
|
16
13
|
|
|
17
14
|
|
|
@@ -26,7 +23,7 @@ class OutputPrometheusExtraHTTPHeader(BaseModel):
|
|
|
26
23
|
name: Optional[str] = None
|
|
27
24
|
|
|
28
25
|
|
|
29
|
-
class OutputPrometheusFailedRequestLoggingMode(str, Enum
|
|
26
|
+
class OutputPrometheusFailedRequestLoggingMode(str, Enum):
|
|
30
27
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
31
28
|
|
|
32
29
|
PAYLOAD = "payload"
|
|
@@ -88,7 +85,7 @@ class OutputPrometheusTimeoutRetrySettings(BaseModel):
|
|
|
88
85
|
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)."""
|
|
89
86
|
|
|
90
87
|
|
|
91
|
-
class OutputPrometheusBackpressureBehavior(str, Enum
|
|
88
|
+
class OutputPrometheusBackpressureBehavior(str, Enum):
|
|
92
89
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
93
90
|
|
|
94
91
|
BLOCK = "block"
|
|
@@ -96,7 +93,7 @@ class OutputPrometheusBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMe
|
|
|
96
93
|
QUEUE = "queue"
|
|
97
94
|
|
|
98
95
|
|
|
99
|
-
class OutputPrometheusAuthenticationType(str, Enum
|
|
96
|
+
class OutputPrometheusAuthenticationType(str, Enum):
|
|
100
97
|
r"""Remote Write authentication type"""
|
|
101
98
|
|
|
102
99
|
NONE = "none"
|
|
@@ -107,21 +104,21 @@ class OutputPrometheusAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta
|
|
|
107
104
|
OAUTH = "oauth"
|
|
108
105
|
|
|
109
106
|
|
|
110
|
-
class OutputPrometheusCompression(str, Enum
|
|
107
|
+
class OutputPrometheusCompression(str, Enum):
|
|
111
108
|
r"""Codec to use to compress the persisted data"""
|
|
112
109
|
|
|
113
110
|
NONE = "none"
|
|
114
111
|
GZIP = "gzip"
|
|
115
112
|
|
|
116
113
|
|
|
117
|
-
class OutputPrometheusQueueFullBehavior(str, Enum
|
|
114
|
+
class OutputPrometheusQueueFullBehavior(str, Enum):
|
|
118
115
|
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."""
|
|
119
116
|
|
|
120
117
|
BLOCK = "block"
|
|
121
118
|
DROP = "drop"
|
|
122
119
|
|
|
123
120
|
|
|
124
|
-
class OutputPrometheusMode(str, Enum
|
|
121
|
+
class OutputPrometheusMode(str, Enum):
|
|
125
122
|
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."""
|
|
126
123
|
|
|
127
124
|
ERROR = "error"
|
|
@@ -262,7 +259,7 @@ class OutputPrometheusTypedDict(TypedDict):
|
|
|
262
259
|
|
|
263
260
|
|
|
264
261
|
class OutputPrometheus(BaseModel):
|
|
265
|
-
type:
|
|
262
|
+
type: OutputPrometheusType
|
|
266
263
|
|
|
267
264
|
url: str
|
|
268
265
|
r"""The endpoint to send metrics to"""
|
|
@@ -335,10 +332,7 @@ class OutputPrometheus(BaseModel):
|
|
|
335
332
|
r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
|
|
336
333
|
|
|
337
334
|
failed_request_logging_mode: Annotated[
|
|
338
|
-
|
|
339
|
-
Optional[OutputPrometheusFailedRequestLoggingMode],
|
|
340
|
-
PlainValidator(validate_open_enum(False)),
|
|
341
|
-
],
|
|
335
|
+
Optional[OutputPrometheusFailedRequestLoggingMode],
|
|
342
336
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
343
337
|
] = OutputPrometheusFailedRequestLoggingMode.NONE
|
|
344
338
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -365,20 +359,13 @@ class OutputPrometheus(BaseModel):
|
|
|
365
359
|
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."""
|
|
366
360
|
|
|
367
361
|
on_backpressure: Annotated[
|
|
368
|
-
|
|
369
|
-
Optional[OutputPrometheusBackpressureBehavior],
|
|
370
|
-
PlainValidator(validate_open_enum(False)),
|
|
371
|
-
],
|
|
362
|
+
Optional[OutputPrometheusBackpressureBehavior],
|
|
372
363
|
pydantic.Field(alias="onBackpressure"),
|
|
373
364
|
] = OutputPrometheusBackpressureBehavior.BLOCK
|
|
374
365
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
375
366
|
|
|
376
367
|
auth_type: Annotated[
|
|
377
|
-
|
|
378
|
-
Optional[OutputPrometheusAuthenticationType],
|
|
379
|
-
PlainValidator(validate_open_enum(False)),
|
|
380
|
-
],
|
|
381
|
-
pydantic.Field(alias="authType"),
|
|
368
|
+
Optional[OutputPrometheusAuthenticationType], pydantic.Field(alias="authType")
|
|
382
369
|
] = OutputPrometheusAuthenticationType.NONE
|
|
383
370
|
r"""Remote Write authentication type"""
|
|
384
371
|
|
|
@@ -403,28 +390,18 @@ class OutputPrometheus(BaseModel):
|
|
|
403
390
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
404
391
|
|
|
405
392
|
pq_compress: Annotated[
|
|
406
|
-
|
|
407
|
-
Optional[OutputPrometheusCompression],
|
|
408
|
-
PlainValidator(validate_open_enum(False)),
|
|
409
|
-
],
|
|
410
|
-
pydantic.Field(alias="pqCompress"),
|
|
393
|
+
Optional[OutputPrometheusCompression], pydantic.Field(alias="pqCompress")
|
|
411
394
|
] = OutputPrometheusCompression.NONE
|
|
412
395
|
r"""Codec to use to compress the persisted data"""
|
|
413
396
|
|
|
414
397
|
pq_on_backpressure: Annotated[
|
|
415
|
-
|
|
416
|
-
Optional[OutputPrometheusQueueFullBehavior],
|
|
417
|
-
PlainValidator(validate_open_enum(False)),
|
|
418
|
-
],
|
|
398
|
+
Optional[OutputPrometheusQueueFullBehavior],
|
|
419
399
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
420
400
|
] = OutputPrometheusQueueFullBehavior.BLOCK
|
|
421
401
|
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."""
|
|
422
402
|
|
|
423
403
|
pq_mode: Annotated[
|
|
424
|
-
|
|
425
|
-
Optional[OutputPrometheusMode], PlainValidator(validate_open_enum(False))
|
|
426
|
-
],
|
|
427
|
-
pydantic.Field(alias="pqMode"),
|
|
404
|
+
Optional[OutputPrometheusMode], pydantic.Field(alias="pqMode")
|
|
428
405
|
] = OutputPrometheusMode.ERROR
|
|
429
406
|
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
430
407
|
|
|
@@ -1,33 +1,30 @@
|
|
|
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
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
|
-
from cribl_control_plane.utils import validate_open_enum
|
|
7
5
|
from enum import Enum
|
|
8
6
|
import pydantic
|
|
9
|
-
from pydantic.functional_validators import PlainValidator
|
|
10
7
|
from typing import List, Optional
|
|
11
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
9
|
|
|
13
10
|
|
|
14
|
-
class OutputRingType(str, Enum
|
|
11
|
+
class OutputRingType(str, Enum):
|
|
15
12
|
RING = "ring"
|
|
16
13
|
|
|
17
14
|
|
|
18
|
-
class OutputRingDataFormat(str, Enum
|
|
15
|
+
class OutputRingDataFormat(str, Enum):
|
|
19
16
|
r"""Format of the output data."""
|
|
20
17
|
|
|
21
18
|
JSON = "json"
|
|
22
19
|
RAW = "raw"
|
|
23
20
|
|
|
24
21
|
|
|
25
|
-
class OutputRingDataCompressionFormat(str, Enum
|
|
22
|
+
class OutputRingDataCompressionFormat(str, Enum):
|
|
26
23
|
NONE = "none"
|
|
27
24
|
GZIP = "gzip"
|
|
28
25
|
|
|
29
26
|
|
|
30
|
-
class OutputRingBackpressureBehavior(str, Enum
|
|
27
|
+
class OutputRingBackpressureBehavior(str, Enum):
|
|
31
28
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
32
29
|
|
|
33
30
|
BLOCK = "block"
|
|
@@ -66,7 +63,7 @@ class OutputRing(BaseModel):
|
|
|
66
63
|
id: str
|
|
67
64
|
r"""Unique ID for this output"""
|
|
68
65
|
|
|
69
|
-
type:
|
|
66
|
+
type: OutputRingType
|
|
70
67
|
|
|
71
68
|
pipeline: Optional[str] = None
|
|
72
69
|
r"""Pipeline to process data before sending out to this output"""
|
|
@@ -83,10 +80,7 @@ class OutputRing(BaseModel):
|
|
|
83
80
|
r"""Tags for filtering and grouping in @{product}"""
|
|
84
81
|
|
|
85
82
|
format_: Annotated[
|
|
86
|
-
|
|
87
|
-
Optional[OutputRingDataFormat], PlainValidator(validate_open_enum(False))
|
|
88
|
-
],
|
|
89
|
-
pydantic.Field(alias="format"),
|
|
83
|
+
Optional[OutputRingDataFormat], pydantic.Field(alias="format")
|
|
90
84
|
] = OutputRingDataFormat.JSON
|
|
91
85
|
r"""Format of the output data."""
|
|
92
86
|
|
|
@@ -101,20 +95,15 @@ class OutputRing(BaseModel):
|
|
|
101
95
|
max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
|
|
102
96
|
r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
|
|
103
97
|
|
|
104
|
-
compress:
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
] = OutputRingDataCompressionFormat.GZIP
|
|
98
|
+
compress: Optional[OutputRingDataCompressionFormat] = (
|
|
99
|
+
OutputRingDataCompressionFormat.GZIP
|
|
100
|
+
)
|
|
108
101
|
|
|
109
102
|
dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = None
|
|
110
103
|
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/<id>"""
|
|
111
104
|
|
|
112
105
|
on_backpressure: Annotated[
|
|
113
|
-
|
|
114
|
-
Optional[OutputRingBackpressureBehavior],
|
|
115
|
-
PlainValidator(validate_open_enum(False)),
|
|
116
|
-
],
|
|
117
|
-
pydantic.Field(alias="onBackpressure"),
|
|
106
|
+
Optional[OutputRingBackpressureBehavior], pydantic.Field(alias="onBackpressure")
|
|
118
107
|
] = OutputRingBackpressureBehavior.BLOCK
|
|
119
108
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
120
109
|
|
|
@@ -1,17 +1,14 @@
|
|
|
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
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
|
-
from cribl_control_plane.utils import validate_open_enum
|
|
7
5
|
from enum import Enum
|
|
8
6
|
import pydantic
|
|
9
|
-
from pydantic.functional_validators import PlainValidator
|
|
10
7
|
from typing import List, Optional
|
|
11
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
9
|
|
|
13
10
|
|
|
14
|
-
class OutputRouterType(str, Enum
|
|
11
|
+
class OutputRouterType(str, Enum):
|
|
15
12
|
ROUTER = "router"
|
|
16
13
|
|
|
17
14
|
|
|
@@ -58,7 +55,7 @@ class OutputRouterTypedDict(TypedDict):
|
|
|
58
55
|
|
|
59
56
|
|
|
60
57
|
class OutputRouter(BaseModel):
|
|
61
|
-
type:
|
|
58
|
+
type: OutputRouterType
|
|
62
59
|
|
|
63
60
|
rules: List[OutputRouterRule]
|
|
64
61
|
r"""Event routing rules"""
|
|
@@ -1,21 +1,18 @@
|
|
|
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
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
|
-
from cribl_control_plane.utils import validate_open_enum
|
|
7
5
|
from enum import Enum
|
|
8
6
|
import pydantic
|
|
9
|
-
from pydantic.functional_validators import PlainValidator
|
|
10
7
|
from typing import List, Optional
|
|
11
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
9
|
|
|
13
10
|
|
|
14
|
-
class OutputS3Type(str, Enum
|
|
11
|
+
class OutputS3Type(str, Enum):
|
|
15
12
|
S3 = "s3"
|
|
16
13
|
|
|
17
14
|
|
|
18
|
-
class OutputS3AuthenticationMethod(str, Enum
|
|
15
|
+
class OutputS3AuthenticationMethod(str, Enum):
|
|
19
16
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
20
17
|
|
|
21
18
|
AUTO = "auto"
|
|
@@ -23,14 +20,14 @@ class OutputS3AuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
23
20
|
SECRET = "secret"
|
|
24
21
|
|
|
25
22
|
|
|
26
|
-
class OutputS3SignatureVersion(str, Enum
|
|
23
|
+
class OutputS3SignatureVersion(str, Enum):
|
|
27
24
|
r"""Signature version to use for signing S3 requests"""
|
|
28
25
|
|
|
29
26
|
V2 = "v2"
|
|
30
27
|
V4 = "v4"
|
|
31
28
|
|
|
32
29
|
|
|
33
|
-
class OutputS3ObjectACL(str, Enum
|
|
30
|
+
class OutputS3ObjectACL(str, Enum):
|
|
34
31
|
r"""Object ACL to assign to uploaded objects"""
|
|
35
32
|
|
|
36
33
|
PRIVATE = "private"
|
|
@@ -42,7 +39,7 @@ class OutputS3ObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
42
39
|
BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
|
|
43
40
|
|
|
44
41
|
|
|
45
|
-
class OutputS3StorageClass(str, Enum
|
|
42
|
+
class OutputS3StorageClass(str, Enum):
|
|
46
43
|
r"""Storage class to select for uploaded objects"""
|
|
47
44
|
|
|
48
45
|
STANDARD = "STANDARD"
|
|
@@ -55,14 +52,12 @@ class OutputS3StorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
55
52
|
DEEP_ARCHIVE = "DEEP_ARCHIVE"
|
|
56
53
|
|
|
57
54
|
|
|
58
|
-
class OutputS3ServerSideEncryptionForUploadedObjects(
|
|
59
|
-
str, Enum, metaclass=utils.OpenEnumMeta
|
|
60
|
-
):
|
|
55
|
+
class OutputS3ServerSideEncryptionForUploadedObjects(str, Enum):
|
|
61
56
|
AES256 = "AES256"
|
|
62
57
|
AWS_KMS = "aws:kms"
|
|
63
58
|
|
|
64
59
|
|
|
65
|
-
class OutputS3DataFormat(str, Enum
|
|
60
|
+
class OutputS3DataFormat(str, Enum):
|
|
66
61
|
r"""Format of the output data"""
|
|
67
62
|
|
|
68
63
|
JSON = "json"
|
|
@@ -70,28 +65,28 @@ class OutputS3DataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
70
65
|
PARQUET = "parquet"
|
|
71
66
|
|
|
72
67
|
|
|
73
|
-
class OutputS3BackpressureBehavior(str, Enum
|
|
68
|
+
class OutputS3BackpressureBehavior(str, Enum):
|
|
74
69
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
75
70
|
|
|
76
71
|
BLOCK = "block"
|
|
77
72
|
DROP = "drop"
|
|
78
73
|
|
|
79
74
|
|
|
80
|
-
class OutputS3DiskSpaceProtection(str, Enum
|
|
75
|
+
class OutputS3DiskSpaceProtection(str, Enum):
|
|
81
76
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
82
77
|
|
|
83
78
|
BLOCK = "block"
|
|
84
79
|
DROP = "drop"
|
|
85
80
|
|
|
86
81
|
|
|
87
|
-
class OutputS3Compression(str, Enum
|
|
82
|
+
class OutputS3Compression(str, Enum):
|
|
88
83
|
r"""Data compression format to apply to HTTP content before it is delivered"""
|
|
89
84
|
|
|
90
85
|
NONE = "none"
|
|
91
86
|
GZIP = "gzip"
|
|
92
87
|
|
|
93
88
|
|
|
94
|
-
class OutputS3CompressionLevel(str, Enum
|
|
89
|
+
class OutputS3CompressionLevel(str, Enum):
|
|
95
90
|
r"""Compression level to apply before moving files to final destination"""
|
|
96
91
|
|
|
97
92
|
BEST_SPEED = "best_speed"
|
|
@@ -99,7 +94,7 @@ class OutputS3CompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
99
94
|
BEST_COMPRESSION = "best_compression"
|
|
100
95
|
|
|
101
96
|
|
|
102
|
-
class OutputS3ParquetVersion(str, Enum
|
|
97
|
+
class OutputS3ParquetVersion(str, Enum):
|
|
103
98
|
r"""Determines which data types are supported and how they are represented"""
|
|
104
99
|
|
|
105
100
|
PARQUET_1_0 = "PARQUET_1_0"
|
|
@@ -107,7 +102,7 @@ class OutputS3ParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
107
102
|
PARQUET_2_6 = "PARQUET_2_6"
|
|
108
103
|
|
|
109
104
|
|
|
110
|
-
class OutputS3DataPageVersion(str, Enum
|
|
105
|
+
class OutputS3DataPageVersion(str, Enum):
|
|
111
106
|
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."""
|
|
112
107
|
|
|
113
108
|
DATA_PAGE_V1 = "DATA_PAGE_V1"
|
|
@@ -252,9 +247,7 @@ class OutputS3(BaseModel):
|
|
|
252
247
|
id: Optional[str] = None
|
|
253
248
|
r"""Unique ID for this output"""
|
|
254
249
|
|
|
255
|
-
type:
|
|
256
|
-
Optional[OutputS3Type], PlainValidator(validate_open_enum(False))
|
|
257
|
-
] = None
|
|
250
|
+
type: Optional[OutputS3Type] = None
|
|
258
251
|
|
|
259
252
|
pipeline: Optional[str] = None
|
|
260
253
|
r"""Pipeline to process data before sending out to this output"""
|
|
@@ -279,10 +272,7 @@ class OutputS3(BaseModel):
|
|
|
279
272
|
r"""Secret key. This value can be a constant or a JavaScript expression. Example: `${C.env.SOME_SECRET}`)"""
|
|
280
273
|
|
|
281
274
|
aws_authentication_method: Annotated[
|
|
282
|
-
|
|
283
|
-
Optional[OutputS3AuthenticationMethod],
|
|
284
|
-
PlainValidator(validate_open_enum(False)),
|
|
285
|
-
],
|
|
275
|
+
Optional[OutputS3AuthenticationMethod],
|
|
286
276
|
pydantic.Field(alias="awsAuthenticationMethod"),
|
|
287
277
|
] = OutputS3AuthenticationMethod.AUTO
|
|
288
278
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
@@ -291,11 +281,7 @@ class OutputS3(BaseModel):
|
|
|
291
281
|
r"""S3 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to S3-compatible endpoint."""
|
|
292
282
|
|
|
293
283
|
signature_version: Annotated[
|
|
294
|
-
|
|
295
|
-
Optional[OutputS3SignatureVersion],
|
|
296
|
-
PlainValidator(validate_open_enum(False)),
|
|
297
|
-
],
|
|
298
|
-
pydantic.Field(alias="signatureVersion"),
|
|
284
|
+
Optional[OutputS3SignatureVersion], pydantic.Field(alias="signatureVersion")
|
|
299
285
|
] = OutputS3SignatureVersion.V4
|
|
300
286
|
r"""Signature version to use for signing S3 requests"""
|
|
301
287
|
|
|
@@ -343,26 +329,17 @@ class OutputS3(BaseModel):
|
|
|
343
329
|
r"""Prefix to append to files before uploading. Must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can be evaluated only at init time. Example referencing a Global Variable: `myKeyPrefix-${C.vars.myVar}`"""
|
|
344
330
|
|
|
345
331
|
object_acl: Annotated[
|
|
346
|
-
|
|
347
|
-
Optional[OutputS3ObjectACL], PlainValidator(validate_open_enum(False))
|
|
348
|
-
],
|
|
349
|
-
pydantic.Field(alias="objectACL"),
|
|
332
|
+
Optional[OutputS3ObjectACL], pydantic.Field(alias="objectACL")
|
|
350
333
|
] = OutputS3ObjectACL.PRIVATE
|
|
351
334
|
r"""Object ACL to assign to uploaded objects"""
|
|
352
335
|
|
|
353
336
|
storage_class: Annotated[
|
|
354
|
-
|
|
355
|
-
Optional[OutputS3StorageClass], PlainValidator(validate_open_enum(False))
|
|
356
|
-
],
|
|
357
|
-
pydantic.Field(alias="storageClass"),
|
|
337
|
+
Optional[OutputS3StorageClass], pydantic.Field(alias="storageClass")
|
|
358
338
|
] = None
|
|
359
339
|
r"""Storage class to select for uploaded objects"""
|
|
360
340
|
|
|
361
341
|
server_side_encryption: Annotated[
|
|
362
|
-
|
|
363
|
-
Optional[OutputS3ServerSideEncryptionForUploadedObjects],
|
|
364
|
-
PlainValidator(validate_open_enum(False)),
|
|
365
|
-
],
|
|
342
|
+
Optional[OutputS3ServerSideEncryptionForUploadedObjects],
|
|
366
343
|
pydantic.Field(alias="serverSideEncryption"),
|
|
367
344
|
] = None
|
|
368
345
|
|
|
@@ -379,12 +356,9 @@ class OutputS3(BaseModel):
|
|
|
379
356
|
)
|
|
380
357
|
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."""
|
|
381
358
|
|
|
382
|
-
format_: Annotated[
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
],
|
|
386
|
-
pydantic.Field(alias="format"),
|
|
387
|
-
] = OutputS3DataFormat.JSON
|
|
359
|
+
format_: Annotated[Optional[OutputS3DataFormat], pydantic.Field(alias="format")] = (
|
|
360
|
+
OutputS3DataFormat.JSON
|
|
361
|
+
)
|
|
388
362
|
r"""Format of the output data"""
|
|
389
363
|
|
|
390
364
|
base_file_name: Annotated[Optional[str], pydantic.Field(alias="baseFileName")] = (
|
|
@@ -416,11 +390,7 @@ class OutputS3(BaseModel):
|
|
|
416
390
|
r"""Buffer size used to write to a file"""
|
|
417
391
|
|
|
418
392
|
on_backpressure: Annotated[
|
|
419
|
-
|
|
420
|
-
Optional[OutputS3BackpressureBehavior],
|
|
421
|
-
PlainValidator(validate_open_enum(False)),
|
|
422
|
-
],
|
|
423
|
-
pydantic.Field(alias="onBackpressure"),
|
|
393
|
+
Optional[OutputS3BackpressureBehavior], pydantic.Field(alias="onBackpressure")
|
|
424
394
|
] = OutputS3BackpressureBehavior.BLOCK
|
|
425
395
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
426
396
|
|
|
@@ -430,10 +400,7 @@ class OutputS3(BaseModel):
|
|
|
430
400
|
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"""
|
|
431
401
|
|
|
432
402
|
on_disk_full_backpressure: Annotated[
|
|
433
|
-
|
|
434
|
-
Optional[OutputS3DiskSpaceProtection],
|
|
435
|
-
PlainValidator(validate_open_enum(False)),
|
|
436
|
-
],
|
|
403
|
+
Optional[OutputS3DiskSpaceProtection],
|
|
437
404
|
pydantic.Field(alias="onDiskFullBackpressure"),
|
|
438
405
|
] = OutputS3DiskSpaceProtection.BLOCK
|
|
439
406
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
@@ -471,17 +438,11 @@ class OutputS3(BaseModel):
|
|
|
471
438
|
aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
|
|
472
439
|
r"""Select or create a stored secret that references your access key and secret key"""
|
|
473
440
|
|
|
474
|
-
compress:
|
|
475
|
-
Optional[OutputS3Compression], PlainValidator(validate_open_enum(False))
|
|
476
|
-
] = OutputS3Compression.GZIP
|
|
441
|
+
compress: Optional[OutputS3Compression] = OutputS3Compression.GZIP
|
|
477
442
|
r"""Data compression format to apply to HTTP content before it is delivered"""
|
|
478
443
|
|
|
479
444
|
compression_level: Annotated[
|
|
480
|
-
|
|
481
|
-
Optional[OutputS3CompressionLevel],
|
|
482
|
-
PlainValidator(validate_open_enum(False)),
|
|
483
|
-
],
|
|
484
|
-
pydantic.Field(alias="compressionLevel"),
|
|
445
|
+
Optional[OutputS3CompressionLevel], pydantic.Field(alias="compressionLevel")
|
|
485
446
|
] = OutputS3CompressionLevel.BEST_SPEED
|
|
486
447
|
r"""Compression level to apply before moving files to final destination"""
|
|
487
448
|
|
|
@@ -491,17 +452,12 @@ class OutputS3(BaseModel):
|
|
|
491
452
|
r"""Automatically calculate the schema based on the events of each Parquet file generated"""
|
|
492
453
|
|
|
493
454
|
parquet_version: Annotated[
|
|
494
|
-
|
|
495
|
-
Optional[OutputS3ParquetVersion], PlainValidator(validate_open_enum(False))
|
|
496
|
-
],
|
|
497
|
-
pydantic.Field(alias="parquetVersion"),
|
|
455
|
+
Optional[OutputS3ParquetVersion], pydantic.Field(alias="parquetVersion")
|
|
498
456
|
] = OutputS3ParquetVersion.PARQUET_2_6
|
|
499
457
|
r"""Determines which data types are supported and how they are represented"""
|
|
500
458
|
|
|
501
459
|
parquet_data_page_version: Annotated[
|
|
502
|
-
|
|
503
|
-
Optional[OutputS3DataPageVersion], PlainValidator(validate_open_enum(False))
|
|
504
|
-
],
|
|
460
|
+
Optional[OutputS3DataPageVersion],
|
|
505
461
|
pydantic.Field(alias="parquetDataPageVersion"),
|
|
506
462
|
] = OutputS3DataPageVersion.DATA_PAGE_V2
|
|
507
463
|
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."""
|