cribl-control-plane 0.0.44__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/_version.py +3 -3
- cribl_control_plane/errors/healthstatus_error.py +8 -2
- cribl_control_plane/models/__init__.py +3 -3
- 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-0.0.44.dist-info → cribl_control_plane-0.0.44a2.dist-info}/METADATA +1 -1
- {cribl_control_plane-0.0.44.dist-info → cribl_control_plane-0.0.44a2.dist-info}/RECORD +158 -158
- {cribl_control_plane-0.0.44.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,21 +15,21 @@ class OutputOpenTelemetryType(str, Enum):
|
|
|
12
15
|
OPEN_TELEMETRY = "open_telemetry"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class OutputOpenTelemetryProtocol(str, Enum):
|
|
18
|
+
class OutputOpenTelemetryProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
19
|
r"""Select a transport option for OpenTelemetry"""
|
|
17
20
|
|
|
18
21
|
GRPC = "grpc"
|
|
19
22
|
HTTP = "http"
|
|
20
23
|
|
|
21
24
|
|
|
22
|
-
class OutputOpenTelemetryOTLPVersion(str, Enum):
|
|
25
|
+
class OutputOpenTelemetryOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
23
26
|
r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
|
|
24
27
|
|
|
25
28
|
ZERO_DOT_10_DOT_0 = "0.10.0"
|
|
26
29
|
ONE_DOT_3_DOT_1 = "1.3.1"
|
|
27
30
|
|
|
28
31
|
|
|
29
|
-
class OutputOpenTelemetryCompressCompression(str, Enum):
|
|
32
|
+
class OutputOpenTelemetryCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
30
33
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
31
34
|
|
|
32
35
|
NONE = "none"
|
|
@@ -34,14 +37,16 @@ class OutputOpenTelemetryCompressCompression(str, Enum):
|
|
|
34
37
|
GZIP = "gzip"
|
|
35
38
|
|
|
36
39
|
|
|
37
|
-
class OutputOpenTelemetryHTTPCompressCompression(
|
|
40
|
+
class OutputOpenTelemetryHTTPCompressCompression(
|
|
41
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
42
|
+
):
|
|
38
43
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
39
44
|
|
|
40
45
|
NONE = "none"
|
|
41
46
|
GZIP = "gzip"
|
|
42
47
|
|
|
43
48
|
|
|
44
|
-
class OutputOpenTelemetryAuthenticationType(str, Enum):
|
|
49
|
+
class OutputOpenTelemetryAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
45
50
|
r"""OpenTelemetry authentication type"""
|
|
46
51
|
|
|
47
52
|
NONE = "none"
|
|
@@ -63,7 +68,9 @@ class OutputOpenTelemetryMetadatum(BaseModel):
|
|
|
63
68
|
key: Optional[str] = ""
|
|
64
69
|
|
|
65
70
|
|
|
66
|
-
class OutputOpenTelemetryFailedRequestLoggingMode(
|
|
71
|
+
class OutputOpenTelemetryFailedRequestLoggingMode(
|
|
72
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
73
|
+
):
|
|
67
74
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
68
75
|
|
|
69
76
|
PAYLOAD = "payload"
|
|
@@ -71,7 +78,7 @@ class OutputOpenTelemetryFailedRequestLoggingMode(str, Enum):
|
|
|
71
78
|
NONE = "none"
|
|
72
79
|
|
|
73
80
|
|
|
74
|
-
class OutputOpenTelemetryBackpressureBehavior(str, Enum):
|
|
81
|
+
class OutputOpenTelemetryBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
75
82
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
76
83
|
|
|
77
84
|
BLOCK = "block"
|
|
@@ -174,14 +181,14 @@ class OutputOpenTelemetryTimeoutRetrySettings(BaseModel):
|
|
|
174
181
|
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)."""
|
|
175
182
|
|
|
176
183
|
|
|
177
|
-
class OutputOpenTelemetryMinimumTLSVersion(str, Enum):
|
|
184
|
+
class OutputOpenTelemetryMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
178
185
|
TL_SV1 = "TLSv1"
|
|
179
186
|
TL_SV1_1 = "TLSv1.1"
|
|
180
187
|
TL_SV1_2 = "TLSv1.2"
|
|
181
188
|
TL_SV1_3 = "TLSv1.3"
|
|
182
189
|
|
|
183
190
|
|
|
184
|
-
class OutputOpenTelemetryMaximumTLSVersion(str, Enum):
|
|
191
|
+
class OutputOpenTelemetryMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
185
192
|
TL_SV1 = "TLSv1"
|
|
186
193
|
TL_SV1_1 = "TLSv1.1"
|
|
187
194
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -236,31 +243,37 @@ class OutputOpenTelemetryTLSSettingsClientSide(BaseModel):
|
|
|
236
243
|
r"""Passphrase to use to decrypt private key"""
|
|
237
244
|
|
|
238
245
|
min_version: Annotated[
|
|
239
|
-
|
|
246
|
+
Annotated[
|
|
247
|
+
Optional[OutputOpenTelemetryMinimumTLSVersion],
|
|
248
|
+
PlainValidator(validate_open_enum(False)),
|
|
249
|
+
],
|
|
240
250
|
pydantic.Field(alias="minVersion"),
|
|
241
251
|
] = None
|
|
242
252
|
|
|
243
253
|
max_version: Annotated[
|
|
244
|
-
|
|
254
|
+
Annotated[
|
|
255
|
+
Optional[OutputOpenTelemetryMaximumTLSVersion],
|
|
256
|
+
PlainValidator(validate_open_enum(False)),
|
|
257
|
+
],
|
|
245
258
|
pydantic.Field(alias="maxVersion"),
|
|
246
259
|
] = None
|
|
247
260
|
|
|
248
261
|
|
|
249
|
-
class OutputOpenTelemetryPqCompressCompression(str, Enum):
|
|
262
|
+
class OutputOpenTelemetryPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
250
263
|
r"""Codec to use to compress the persisted data"""
|
|
251
264
|
|
|
252
265
|
NONE = "none"
|
|
253
266
|
GZIP = "gzip"
|
|
254
267
|
|
|
255
268
|
|
|
256
|
-
class OutputOpenTelemetryQueueFullBehavior(str, Enum):
|
|
269
|
+
class OutputOpenTelemetryQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
257
270
|
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."""
|
|
258
271
|
|
|
259
272
|
BLOCK = "block"
|
|
260
273
|
DROP = "drop"
|
|
261
274
|
|
|
262
275
|
|
|
263
|
-
class OutputOpenTelemetryMode(str, Enum):
|
|
276
|
+
class OutputOpenTelemetryMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
264
277
|
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."""
|
|
265
278
|
|
|
266
279
|
ERROR = "error"
|
|
@@ -412,27 +425,40 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
412
425
|
streamtags: Optional[List[str]] = None
|
|
413
426
|
r"""Tags for filtering and grouping in @{product}"""
|
|
414
427
|
|
|
415
|
-
protocol:
|
|
428
|
+
protocol: Annotated[
|
|
429
|
+
Optional[OutputOpenTelemetryProtocol], PlainValidator(validate_open_enum(False))
|
|
430
|
+
] = OutputOpenTelemetryProtocol.GRPC
|
|
416
431
|
r"""Select a transport option for OpenTelemetry"""
|
|
417
432
|
|
|
418
433
|
otlp_version: Annotated[
|
|
419
|
-
|
|
434
|
+
Annotated[
|
|
435
|
+
Optional[OutputOpenTelemetryOTLPVersion],
|
|
436
|
+
PlainValidator(validate_open_enum(False)),
|
|
437
|
+
],
|
|
438
|
+
pydantic.Field(alias="otlpVersion"),
|
|
420
439
|
] = OutputOpenTelemetryOTLPVersion.ZERO_DOT_10_DOT_0
|
|
421
440
|
r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
|
|
422
441
|
|
|
423
|
-
compress:
|
|
424
|
-
OutputOpenTelemetryCompressCompression
|
|
425
|
-
|
|
442
|
+
compress: Annotated[
|
|
443
|
+
Optional[OutputOpenTelemetryCompressCompression],
|
|
444
|
+
PlainValidator(validate_open_enum(False)),
|
|
445
|
+
] = OutputOpenTelemetryCompressCompression.GZIP
|
|
426
446
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
427
447
|
|
|
428
448
|
http_compress: Annotated[
|
|
429
|
-
|
|
449
|
+
Annotated[
|
|
450
|
+
Optional[OutputOpenTelemetryHTTPCompressCompression],
|
|
451
|
+
PlainValidator(validate_open_enum(False)),
|
|
452
|
+
],
|
|
430
453
|
pydantic.Field(alias="httpCompress"),
|
|
431
454
|
] = OutputOpenTelemetryHTTPCompressCompression.GZIP
|
|
432
455
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
433
456
|
|
|
434
457
|
auth_type: Annotated[
|
|
435
|
-
|
|
458
|
+
Annotated[
|
|
459
|
+
Optional[OutputOpenTelemetryAuthenticationType],
|
|
460
|
+
PlainValidator(validate_open_enum(False)),
|
|
461
|
+
],
|
|
436
462
|
pydantic.Field(alias="authType"),
|
|
437
463
|
] = OutputOpenTelemetryAuthenticationType.NONE
|
|
438
464
|
r"""OpenTelemetry authentication type"""
|
|
@@ -472,7 +498,10 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
472
498
|
r"""Maximum time between requests. Small values could cause the payload size to be smaller than the configured Body size limit."""
|
|
473
499
|
|
|
474
500
|
failed_request_logging_mode: Annotated[
|
|
475
|
-
|
|
501
|
+
Annotated[
|
|
502
|
+
Optional[OutputOpenTelemetryFailedRequestLoggingMode],
|
|
503
|
+
PlainValidator(validate_open_enum(False)),
|
|
504
|
+
],
|
|
476
505
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
477
506
|
] = OutputOpenTelemetryFailedRequestLoggingMode.NONE
|
|
478
507
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -491,7 +520,10 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
491
520
|
r"""Disable to close the connection immediately after sending the outgoing request"""
|
|
492
521
|
|
|
493
522
|
on_backpressure: Annotated[
|
|
494
|
-
|
|
523
|
+
Annotated[
|
|
524
|
+
Optional[OutputOpenTelemetryBackpressureBehavior],
|
|
525
|
+
PlainValidator(validate_open_enum(False)),
|
|
526
|
+
],
|
|
495
527
|
pydantic.Field(alias="onBackpressure"),
|
|
496
528
|
] = OutputOpenTelemetryBackpressureBehavior.BLOCK
|
|
497
529
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -588,7 +620,7 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
588
620
|
|
|
589
621
|
response_honor_retry_after_header: Annotated[
|
|
590
622
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
591
|
-
] =
|
|
623
|
+
] = True
|
|
592
624
|
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."""
|
|
593
625
|
|
|
594
626
|
tls: Optional[OutputOpenTelemetryTLSSettingsClientSide] = None
|
|
@@ -607,19 +639,28 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
607
639
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
608
640
|
|
|
609
641
|
pq_compress: Annotated[
|
|
610
|
-
|
|
642
|
+
Annotated[
|
|
643
|
+
Optional[OutputOpenTelemetryPqCompressCompression],
|
|
644
|
+
PlainValidator(validate_open_enum(False)),
|
|
645
|
+
],
|
|
611
646
|
pydantic.Field(alias="pqCompress"),
|
|
612
647
|
] = OutputOpenTelemetryPqCompressCompression.NONE
|
|
613
648
|
r"""Codec to use to compress the persisted data"""
|
|
614
649
|
|
|
615
650
|
pq_on_backpressure: Annotated[
|
|
616
|
-
|
|
651
|
+
Annotated[
|
|
652
|
+
Optional[OutputOpenTelemetryQueueFullBehavior],
|
|
653
|
+
PlainValidator(validate_open_enum(False)),
|
|
654
|
+
],
|
|
617
655
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
618
656
|
] = OutputOpenTelemetryQueueFullBehavior.BLOCK
|
|
619
657
|
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."""
|
|
620
658
|
|
|
621
659
|
pq_mode: Annotated[
|
|
622
|
-
|
|
660
|
+
Annotated[
|
|
661
|
+
Optional[OutputOpenTelemetryMode], PlainValidator(validate_open_enum(False))
|
|
662
|
+
],
|
|
663
|
+
pydantic.Field(alias="pqMode"),
|
|
623
664
|
] = OutputOpenTelemetryMode.ERROR
|
|
624
665
|
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."""
|
|
625
666
|
|
|
@@ -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 OutputPrometheusExtraHTTPHeader(BaseModel):
|
|
|
23
26
|
name: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class OutputPrometheusFailedRequestLoggingMode(str, Enum):
|
|
29
|
+
class OutputPrometheusFailedRequestLoggingMode(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"
|
|
@@ -85,7 +88,7 @@ class OutputPrometheusTimeoutRetrySettings(BaseModel):
|
|
|
85
88
|
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)."""
|
|
86
89
|
|
|
87
90
|
|
|
88
|
-
class OutputPrometheusBackpressureBehavior(str, Enum):
|
|
91
|
+
class OutputPrometheusBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
89
92
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
90
93
|
|
|
91
94
|
BLOCK = "block"
|
|
@@ -93,7 +96,7 @@ class OutputPrometheusBackpressureBehavior(str, Enum):
|
|
|
93
96
|
QUEUE = "queue"
|
|
94
97
|
|
|
95
98
|
|
|
96
|
-
class OutputPrometheusAuthenticationType(str, Enum):
|
|
99
|
+
class OutputPrometheusAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
97
100
|
r"""Remote Write authentication type"""
|
|
98
101
|
|
|
99
102
|
NONE = "none"
|
|
@@ -104,21 +107,21 @@ class OutputPrometheusAuthenticationType(str, Enum):
|
|
|
104
107
|
OAUTH = "oauth"
|
|
105
108
|
|
|
106
109
|
|
|
107
|
-
class OutputPrometheusCompression(str, Enum):
|
|
110
|
+
class OutputPrometheusCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
108
111
|
r"""Codec to use to compress the persisted data"""
|
|
109
112
|
|
|
110
113
|
NONE = "none"
|
|
111
114
|
GZIP = "gzip"
|
|
112
115
|
|
|
113
116
|
|
|
114
|
-
class OutputPrometheusQueueFullBehavior(str, Enum):
|
|
117
|
+
class OutputPrometheusQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
115
118
|
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."""
|
|
116
119
|
|
|
117
120
|
BLOCK = "block"
|
|
118
121
|
DROP = "drop"
|
|
119
122
|
|
|
120
123
|
|
|
121
|
-
class OutputPrometheusMode(str, Enum):
|
|
124
|
+
class OutputPrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
122
125
|
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."""
|
|
123
126
|
|
|
124
127
|
ERROR = "error"
|
|
@@ -332,7 +335,10 @@ class OutputPrometheus(BaseModel):
|
|
|
332
335
|
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."""
|
|
333
336
|
|
|
334
337
|
failed_request_logging_mode: Annotated[
|
|
335
|
-
|
|
338
|
+
Annotated[
|
|
339
|
+
Optional[OutputPrometheusFailedRequestLoggingMode],
|
|
340
|
+
PlainValidator(validate_open_enum(False)),
|
|
341
|
+
],
|
|
336
342
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
337
343
|
] = OutputPrometheusFailedRequestLoggingMode.NONE
|
|
338
344
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -355,17 +361,24 @@ class OutputPrometheus(BaseModel):
|
|
|
355
361
|
|
|
356
362
|
response_honor_retry_after_header: Annotated[
|
|
357
363
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
358
|
-
] =
|
|
364
|
+
] = True
|
|
359
365
|
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."""
|
|
360
366
|
|
|
361
367
|
on_backpressure: Annotated[
|
|
362
|
-
|
|
368
|
+
Annotated[
|
|
369
|
+
Optional[OutputPrometheusBackpressureBehavior],
|
|
370
|
+
PlainValidator(validate_open_enum(False)),
|
|
371
|
+
],
|
|
363
372
|
pydantic.Field(alias="onBackpressure"),
|
|
364
373
|
] = OutputPrometheusBackpressureBehavior.BLOCK
|
|
365
374
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
366
375
|
|
|
367
376
|
auth_type: Annotated[
|
|
368
|
-
|
|
377
|
+
Annotated[
|
|
378
|
+
Optional[OutputPrometheusAuthenticationType],
|
|
379
|
+
PlainValidator(validate_open_enum(False)),
|
|
380
|
+
],
|
|
381
|
+
pydantic.Field(alias="authType"),
|
|
369
382
|
] = OutputPrometheusAuthenticationType.NONE
|
|
370
383
|
r"""Remote Write authentication type"""
|
|
371
384
|
|
|
@@ -390,18 +403,28 @@ class OutputPrometheus(BaseModel):
|
|
|
390
403
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
391
404
|
|
|
392
405
|
pq_compress: Annotated[
|
|
393
|
-
|
|
406
|
+
Annotated[
|
|
407
|
+
Optional[OutputPrometheusCompression],
|
|
408
|
+
PlainValidator(validate_open_enum(False)),
|
|
409
|
+
],
|
|
410
|
+
pydantic.Field(alias="pqCompress"),
|
|
394
411
|
] = OutputPrometheusCompression.NONE
|
|
395
412
|
r"""Codec to use to compress the persisted data"""
|
|
396
413
|
|
|
397
414
|
pq_on_backpressure: Annotated[
|
|
398
|
-
|
|
415
|
+
Annotated[
|
|
416
|
+
Optional[OutputPrometheusQueueFullBehavior],
|
|
417
|
+
PlainValidator(validate_open_enum(False)),
|
|
418
|
+
],
|
|
399
419
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
400
420
|
] = OutputPrometheusQueueFullBehavior.BLOCK
|
|
401
421
|
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."""
|
|
402
422
|
|
|
403
423
|
pq_mode: Annotated[
|
|
404
|
-
|
|
424
|
+
Annotated[
|
|
425
|
+
Optional[OutputPrometheusMode], PlainValidator(validate_open_enum(False))
|
|
426
|
+
],
|
|
427
|
+
pydantic.Field(alias="pqMode"),
|
|
405
428
|
] = OutputPrometheusMode.ERROR
|
|
406
429
|
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."""
|
|
407
430
|
|
|
@@ -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 OutputRingType(str, Enum):
|
|
|
12
15
|
RING = "ring"
|
|
13
16
|
|
|
14
17
|
|
|
15
|
-
class OutputRingDataFormat(str, Enum):
|
|
18
|
+
class OutputRingDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
19
|
r"""Format of the output data."""
|
|
17
20
|
|
|
18
21
|
JSON = "json"
|
|
19
22
|
RAW = "raw"
|
|
20
23
|
|
|
21
24
|
|
|
22
|
-
class OutputRingDataCompressionFormat(str, Enum):
|
|
25
|
+
class OutputRingDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
23
26
|
NONE = "none"
|
|
24
27
|
GZIP = "gzip"
|
|
25
28
|
|
|
26
29
|
|
|
27
|
-
class OutputRingBackpressureBehavior(str, Enum):
|
|
30
|
+
class OutputRingBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
28
31
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
29
32
|
|
|
30
33
|
BLOCK = "block"
|
|
@@ -80,7 +83,10 @@ class OutputRing(BaseModel):
|
|
|
80
83
|
r"""Tags for filtering and grouping in @{product}"""
|
|
81
84
|
|
|
82
85
|
format_: Annotated[
|
|
83
|
-
|
|
86
|
+
Annotated[
|
|
87
|
+
Optional[OutputRingDataFormat], PlainValidator(validate_open_enum(False))
|
|
88
|
+
],
|
|
89
|
+
pydantic.Field(alias="format"),
|
|
84
90
|
] = OutputRingDataFormat.JSON
|
|
85
91
|
r"""Format of the output data."""
|
|
86
92
|
|
|
@@ -95,15 +101,20 @@ class OutputRing(BaseModel):
|
|
|
95
101
|
max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
|
|
96
102
|
r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
|
|
97
103
|
|
|
98
|
-
compress:
|
|
99
|
-
OutputRingDataCompressionFormat
|
|
100
|
-
|
|
104
|
+
compress: Annotated[
|
|
105
|
+
Optional[OutputRingDataCompressionFormat],
|
|
106
|
+
PlainValidator(validate_open_enum(False)),
|
|
107
|
+
] = OutputRingDataCompressionFormat.GZIP
|
|
101
108
|
|
|
102
109
|
dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = None
|
|
103
110
|
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/<id>"""
|
|
104
111
|
|
|
105
112
|
on_backpressure: Annotated[
|
|
106
|
-
|
|
113
|
+
Annotated[
|
|
114
|
+
Optional[OutputRingBackpressureBehavior],
|
|
115
|
+
PlainValidator(validate_open_enum(False)),
|
|
116
|
+
],
|
|
117
|
+
pydantic.Field(alias="onBackpressure"),
|
|
107
118
|
] = OutputRingBackpressureBehavior.BLOCK
|
|
108
119
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
109
120
|
|