cribl-control-plane 0.2.1rc7__py3-none-any.whl → 0.3.0a1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of cribl-control-plane might be problematic. Click here for more details.
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/errors/__init__.py +5 -8
- cribl_control_plane/errors/{healthserverstatus_error.py → healthstatus_error.py} +9 -10
- cribl_control_plane/groups_sdk.py +28 -52
- cribl_control_plane/health.py +16 -22
- cribl_control_plane/models/__init__.py +54 -217
- cribl_control_plane/models/appmode.py +14 -0
- cribl_control_plane/models/authtoken.py +1 -5
- cribl_control_plane/models/cacheconnection.py +0 -20
- cribl_control_plane/models/configgroup.py +7 -55
- cribl_control_plane/models/configgroupcloud.py +1 -11
- cribl_control_plane/models/createconfiggroupbyproductop.py +5 -17
- cribl_control_plane/models/createroutesappendbyidop.py +2 -2
- cribl_control_plane/models/createversionundoop.py +3 -3
- cribl_control_plane/models/cribllakedataset.py +1 -11
- cribl_control_plane/models/cribllakedatasetupdate.py +1 -11
- cribl_control_plane/models/datasetmetadata.py +1 -11
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +0 -11
- cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
- cribl_control_plane/models/distributedsummary.py +0 -6
- cribl_control_plane/models/error.py +16 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +0 -20
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +0 -20
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +0 -11
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +0 -11
- cribl_control_plane/models/gethealthinfoop.py +17 -0
- cribl_control_plane/models/getsummaryop.py +0 -11
- cribl_control_plane/models/hbcriblinfo.py +3 -24
- cribl_control_plane/models/{healthserverstatus.py → healthstatus.py} +8 -27
- cribl_control_plane/models/heartbeatmetadata.py +0 -3
- cribl_control_plane/models/input.py +78 -80
- cribl_control_plane/models/inputappscope.py +17 -80
- cribl_control_plane/models/inputazureblob.py +1 -33
- cribl_control_plane/models/inputcollection.py +1 -24
- cribl_control_plane/models/inputconfluentcloud.py +18 -195
- cribl_control_plane/models/inputcribl.py +1 -24
- cribl_control_plane/models/inputcriblhttp.py +17 -62
- cribl_control_plane/models/inputcribllakehttp.py +17 -62
- cribl_control_plane/models/inputcriblmetrics.py +1 -24
- cribl_control_plane/models/inputcribltcp.py +17 -62
- cribl_control_plane/models/inputcrowdstrike.py +1 -54
- cribl_control_plane/models/inputdatadogagent.py +17 -62
- cribl_control_plane/models/inputdatagen.py +1 -24
- cribl_control_plane/models/inputedgeprometheus.py +34 -147
- cribl_control_plane/models/inputelastic.py +27 -119
- cribl_control_plane/models/inputeventhub.py +1 -182
- cribl_control_plane/models/inputexec.py +1 -33
- cribl_control_plane/models/inputfile.py +3 -42
- cribl_control_plane/models/inputfirehose.py +17 -62
- cribl_control_plane/models/inputgooglepubsub.py +1 -36
- cribl_control_plane/models/inputgrafana.py +32 -157
- cribl_control_plane/models/inputhttp.py +17 -62
- cribl_control_plane/models/inputhttpraw.py +17 -62
- cribl_control_plane/models/inputjournalfiles.py +1 -24
- cribl_control_plane/models/inputkafka.py +17 -189
- cribl_control_plane/models/inputkinesis.py +1 -80
- cribl_control_plane/models/inputkubeevents.py +1 -24
- cribl_control_plane/models/inputkubelogs.py +1 -33
- cribl_control_plane/models/inputkubemetrics.py +1 -33
- cribl_control_plane/models/inputloki.py +17 -71
- cribl_control_plane/models/inputmetrics.py +17 -62
- cribl_control_plane/models/inputmodeldriventelemetry.py +17 -62
- cribl_control_plane/models/inputmsk.py +18 -81
- cribl_control_plane/models/inputnetflow.py +1 -24
- cribl_control_plane/models/inputoffice365mgmt.py +1 -67
- cribl_control_plane/models/inputoffice365msgtrace.py +1 -67
- cribl_control_plane/models/inputoffice365service.py +1 -67
- cribl_control_plane/models/inputopentelemetry.py +16 -92
- cribl_control_plane/models/inputprometheus.py +34 -138
- cribl_control_plane/models/inputprometheusrw.py +17 -71
- cribl_control_plane/models/inputrawudp.py +1 -24
- cribl_control_plane/models/inputs3.py +1 -45
- cribl_control_plane/models/inputs3inventory.py +1 -54
- cribl_control_plane/models/inputsecuritylake.py +1 -54
- cribl_control_plane/models/inputsnmp.py +1 -40
- cribl_control_plane/models/inputsplunk.py +17 -85
- cribl_control_plane/models/inputsplunkhec.py +16 -70
- cribl_control_plane/models/inputsplunksearch.py +1 -63
- cribl_control_plane/models/inputsqs.py +1 -56
- cribl_control_plane/models/inputsyslog.py +32 -121
- cribl_control_plane/models/inputsystemmetrics.py +9 -142
- cribl_control_plane/models/inputsystemstate.py +1 -33
- cribl_control_plane/models/inputtcp.py +17 -81
- cribl_control_plane/models/inputtcpjson.py +17 -71
- cribl_control_plane/models/inputwef.py +1 -71
- cribl_control_plane/models/inputwindowsmetrics.py +9 -129
- cribl_control_plane/models/inputwineventlogs.py +1 -60
- cribl_control_plane/models/inputwiz.py +1 -45
- cribl_control_plane/models/inputwizwebhook.py +17 -62
- cribl_control_plane/models/inputzscalerhec.py +16 -70
- cribl_control_plane/models/jobinfo.py +1 -4
- cribl_control_plane/models/jobstatus.py +3 -34
- cribl_control_plane/models/listconfiggroupbyproductop.py +0 -11
- cribl_control_plane/models/logininfo.py +3 -3
- cribl_control_plane/models/masterworkerentry.py +1 -11
- cribl_control_plane/models/nodeprovidedinfo.py +1 -11
- cribl_control_plane/models/nodeupgradestatus.py +0 -38
- cribl_control_plane/models/output.py +88 -93
- cribl_control_plane/models/outputazureblob.py +1 -110
- cribl_control_plane/models/outputazuredataexplorer.py +87 -452
- cribl_control_plane/models/outputazureeventhub.py +19 -281
- cribl_control_plane/models/outputazurelogs.py +19 -115
- cribl_control_plane/models/outputchronicle.py +19 -115
- cribl_control_plane/models/outputclickhouse.py +19 -155
- cribl_control_plane/models/outputcloudwatch.py +19 -106
- cribl_control_plane/models/outputconfluentcloud.py +38 -311
- cribl_control_plane/models/outputcriblhttp.py +19 -135
- cribl_control_plane/models/outputcribllake.py +1 -97
- cribl_control_plane/models/outputcribltcp.py +19 -132
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +20 -129
- cribl_control_plane/models/outputdatadog.py +19 -159
- cribl_control_plane/models/outputdataset.py +19 -143
- cribl_control_plane/models/outputdiskspool.py +1 -11
- cribl_control_plane/models/outputdls3.py +1 -152
- cribl_control_plane/models/outputdynatracehttp.py +19 -160
- cribl_control_plane/models/outputdynatraceotlp.py +19 -160
- cribl_control_plane/models/outputelastic.py +19 -163
- cribl_control_plane/models/outputelasticcloud.py +19 -140
- cribl_control_plane/models/outputexabeam.py +1 -61
- cribl_control_plane/models/outputfilesystem.py +1 -87
- cribl_control_plane/models/outputgooglechronicle.py +20 -166
- cribl_control_plane/models/outputgooglecloudlogging.py +20 -131
- cribl_control_plane/models/outputgooglecloudstorage.py +1 -136
- cribl_control_plane/models/outputgooglepubsub.py +19 -106
- cribl_control_plane/models/outputgrafanacloud.py +37 -288
- cribl_control_plane/models/outputgraphite.py +19 -105
- cribl_control_plane/models/outputhoneycomb.py +19 -115
- cribl_control_plane/models/outputhumiohec.py +19 -126
- cribl_control_plane/models/outputinfluxdb.py +19 -130
- cribl_control_plane/models/outputkafka.py +34 -302
- cribl_control_plane/models/outputkinesis.py +19 -133
- cribl_control_plane/models/outputloki.py +17 -129
- cribl_control_plane/models/outputminio.py +1 -145
- cribl_control_plane/models/outputmsk.py +34 -193
- cribl_control_plane/models/outputnewrelic.py +19 -136
- cribl_control_plane/models/outputnewrelicevents.py +20 -128
- cribl_control_plane/models/outputopentelemetry.py +19 -178
- cribl_control_plane/models/outputprometheus.py +19 -115
- cribl_control_plane/models/outputring.py +1 -31
- cribl_control_plane/models/outputs3.py +1 -152
- cribl_control_plane/models/outputsecuritylake.py +1 -114
- cribl_control_plane/models/outputsentinel.py +19 -135
- cribl_control_plane/models/outputsentineloneaisiem.py +20 -134
- cribl_control_plane/models/outputservicenow.py +19 -168
- cribl_control_plane/models/outputsignalfx.py +19 -115
- cribl_control_plane/models/outputsns.py +17 -113
- cribl_control_plane/models/outputsplunk.py +19 -153
- cribl_control_plane/models/outputsplunkhec.py +19 -208
- cribl_control_plane/models/outputsplunklb.py +19 -182
- cribl_control_plane/models/outputsqs.py +17 -124
- cribl_control_plane/models/outputstatsd.py +19 -105
- cribl_control_plane/models/outputstatsdext.py +19 -105
- cribl_control_plane/models/outputsumologic.py +19 -117
- cribl_control_plane/models/outputsyslog.py +96 -259
- cribl_control_plane/models/outputtcpjson.py +19 -141
- cribl_control_plane/models/outputwavefront.py +19 -115
- cribl_control_plane/models/outputwebhook.py +19 -161
- cribl_control_plane/models/outputxsiam.py +17 -113
- cribl_control_plane/models/packinfo.py +5 -8
- cribl_control_plane/models/packinstallinfo.py +5 -8
- cribl_control_plane/models/resourcepolicy.py +0 -11
- cribl_control_plane/models/{uploadpackresponse.py → routecloneconf.py} +4 -4
- cribl_control_plane/models/routeconf.py +4 -3
- cribl_control_plane/models/runnablejobcollection.py +9 -72
- cribl_control_plane/models/runnablejobexecutor.py +9 -32
- cribl_control_plane/models/runnablejobscheduledsearch.py +9 -23
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +0 -11
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +0 -11
- cribl_control_plane/packs.py +7 -202
- cribl_control_plane/routes_sdk.py +6 -6
- cribl_control_plane/tokens.py +15 -23
- {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/METADATA +9 -50
- cribl_control_plane-0.3.0a1.dist-info/RECORD +330 -0
- cribl_control_plane/models/groupcreaterequest.py +0 -171
- cribl_control_plane/models/outpostnodeinfo.py +0 -16
- cribl_control_plane/models/outputdatabricks.py +0 -482
- cribl_control_plane/models/updatepacksop.py +0 -25
- cribl_control_plane-0.2.1rc7.dist-info/RECORD +0 -331
- {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/WHEEL +0 -0
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
-
from pydantic import field_serializer
|
|
10
9
|
from pydantic.functional_validators import PlainValidator
|
|
11
10
|
from typing import List, Optional
|
|
12
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -19,29 +18,22 @@ class OutputOpenTelemetryType(str, Enum):
|
|
|
19
18
|
class OutputOpenTelemetryProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
20
19
|
r"""Select a transport option for OpenTelemetry"""
|
|
21
20
|
|
|
22
|
-
# gRPC
|
|
23
21
|
GRPC = "grpc"
|
|
24
|
-
# HTTP
|
|
25
22
|
HTTP = "http"
|
|
26
23
|
|
|
27
24
|
|
|
28
25
|
class OutputOpenTelemetryOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
29
26
|
r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
|
|
30
27
|
|
|
31
|
-
# 0.10.0
|
|
32
28
|
ZERO_DOT_10_DOT_0 = "0.10.0"
|
|
33
|
-
# 1.3.1
|
|
34
29
|
ONE_DOT_3_DOT_1 = "1.3.1"
|
|
35
30
|
|
|
36
31
|
|
|
37
32
|
class OutputOpenTelemetryCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
38
33
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
39
34
|
|
|
40
|
-
# None
|
|
41
35
|
NONE = "none"
|
|
42
|
-
# Deflate
|
|
43
36
|
DEFLATE = "deflate"
|
|
44
|
-
# Gzip
|
|
45
37
|
GZIP = "gzip"
|
|
46
38
|
|
|
47
39
|
|
|
@@ -50,9 +42,7 @@ class OutputOpenTelemetryHTTPCompressCompression(
|
|
|
50
42
|
):
|
|
51
43
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
52
44
|
|
|
53
|
-
# None
|
|
54
45
|
NONE = "none"
|
|
55
|
-
# Gzip
|
|
56
46
|
GZIP = "gzip"
|
|
57
47
|
|
|
58
48
|
|
|
@@ -83,22 +73,16 @@ class OutputOpenTelemetryFailedRequestLoggingMode(
|
|
|
83
73
|
):
|
|
84
74
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
85
75
|
|
|
86
|
-
# Payload
|
|
87
76
|
PAYLOAD = "payload"
|
|
88
|
-
# Payload + Headers
|
|
89
77
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
90
|
-
# None
|
|
91
78
|
NONE = "none"
|
|
92
79
|
|
|
93
80
|
|
|
94
81
|
class OutputOpenTelemetryBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
95
82
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
96
83
|
|
|
97
|
-
# Block
|
|
98
84
|
BLOCK = "block"
|
|
99
|
-
# Drop
|
|
100
85
|
DROP = "drop"
|
|
101
|
-
# Persistent Queue
|
|
102
86
|
QUEUE = "queue"
|
|
103
87
|
|
|
104
88
|
|
|
@@ -274,54 +258,29 @@ class OutputOpenTelemetryTLSSettingsClientSide(BaseModel):
|
|
|
274
258
|
pydantic.Field(alias="maxVersion"),
|
|
275
259
|
] = None
|
|
276
260
|
|
|
277
|
-
@field_serializer("min_version")
|
|
278
|
-
def serialize_min_version(self, value):
|
|
279
|
-
if isinstance(value, str):
|
|
280
|
-
try:
|
|
281
|
-
return models.OutputOpenTelemetryMinimumTLSVersion(value)
|
|
282
|
-
except ValueError:
|
|
283
|
-
return value
|
|
284
|
-
return value
|
|
285
|
-
|
|
286
|
-
@field_serializer("max_version")
|
|
287
|
-
def serialize_max_version(self, value):
|
|
288
|
-
if isinstance(value, str):
|
|
289
|
-
try:
|
|
290
|
-
return models.OutputOpenTelemetryMaximumTLSVersion(value)
|
|
291
|
-
except ValueError:
|
|
292
|
-
return value
|
|
293
|
-
return value
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
class OutputOpenTelemetryMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
297
|
-
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."""
|
|
298
|
-
|
|
299
|
-
# Error
|
|
300
|
-
ERROR = "error"
|
|
301
|
-
# Backpressure
|
|
302
|
-
ALWAYS = "always"
|
|
303
|
-
# Always On
|
|
304
|
-
BACKPRESSURE = "backpressure"
|
|
305
|
-
|
|
306
261
|
|
|
307
262
|
class OutputOpenTelemetryPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
308
263
|
r"""Codec to use to compress the persisted data"""
|
|
309
264
|
|
|
310
|
-
# None
|
|
311
265
|
NONE = "none"
|
|
312
|
-
# Gzip
|
|
313
266
|
GZIP = "gzip"
|
|
314
267
|
|
|
315
268
|
|
|
316
269
|
class OutputOpenTelemetryQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
317
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."""
|
|
318
271
|
|
|
319
|
-
# Block
|
|
320
272
|
BLOCK = "block"
|
|
321
|
-
# Drop new data
|
|
322
273
|
DROP = "drop"
|
|
323
274
|
|
|
324
275
|
|
|
276
|
+
class OutputOpenTelemetryMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
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."""
|
|
278
|
+
|
|
279
|
+
ERROR = "error"
|
|
280
|
+
BACKPRESSURE = "backpressure"
|
|
281
|
+
ALWAYS = "always"
|
|
282
|
+
|
|
283
|
+
|
|
325
284
|
class OutputOpenTelemetryPqControlsTypedDict(TypedDict):
|
|
326
285
|
pass
|
|
327
286
|
|
|
@@ -428,16 +387,6 @@ class OutputOpenTelemetryTypedDict(TypedDict):
|
|
|
428
387
|
response_honor_retry_after_header: NotRequired[bool]
|
|
429
388
|
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."""
|
|
430
389
|
tls: NotRequired[OutputOpenTelemetryTLSSettingsClientSideTypedDict]
|
|
431
|
-
pq_strict_ordering: NotRequired[bool]
|
|
432
|
-
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
433
|
-
pq_rate_per_sec: NotRequired[float]
|
|
434
|
-
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
435
|
-
pq_mode: NotRequired[OutputOpenTelemetryMode]
|
|
436
|
-
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
437
|
-
pq_max_buffer_size: NotRequired[float]
|
|
438
|
-
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
439
|
-
pq_max_backpressure_sec: NotRequired[float]
|
|
440
|
-
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
441
390
|
pq_max_file_size: NotRequired[str]
|
|
442
391
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
443
392
|
pq_max_size: NotRequired[str]
|
|
@@ -448,6 +397,8 @@ class OutputOpenTelemetryTypedDict(TypedDict):
|
|
|
448
397
|
r"""Codec to use to compress the persisted data"""
|
|
449
398
|
pq_on_backpressure: NotRequired[OutputOpenTelemetryQueueFullBehavior]
|
|
450
399
|
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."""
|
|
400
|
+
pq_mode: NotRequired[OutputOpenTelemetryMode]
|
|
401
|
+
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
451
402
|
pq_controls: NotRequired[OutputOpenTelemetryPqControlsTypedDict]
|
|
452
403
|
|
|
453
404
|
|
|
@@ -674,34 +625,6 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
674
625
|
|
|
675
626
|
tls: Optional[OutputOpenTelemetryTLSSettingsClientSide] = None
|
|
676
627
|
|
|
677
|
-
pq_strict_ordering: Annotated[
|
|
678
|
-
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
679
|
-
] = True
|
|
680
|
-
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
681
|
-
|
|
682
|
-
pq_rate_per_sec: Annotated[
|
|
683
|
-
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
684
|
-
] = 0
|
|
685
|
-
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
686
|
-
|
|
687
|
-
pq_mode: Annotated[
|
|
688
|
-
Annotated[
|
|
689
|
-
Optional[OutputOpenTelemetryMode], PlainValidator(validate_open_enum(False))
|
|
690
|
-
],
|
|
691
|
-
pydantic.Field(alias="pqMode"),
|
|
692
|
-
] = OutputOpenTelemetryMode.ERROR
|
|
693
|
-
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."""
|
|
694
|
-
|
|
695
|
-
pq_max_buffer_size: Annotated[
|
|
696
|
-
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
697
|
-
] = 42
|
|
698
|
-
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
699
|
-
|
|
700
|
-
pq_max_backpressure_sec: Annotated[
|
|
701
|
-
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
702
|
-
] = 30
|
|
703
|
-
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
704
|
-
|
|
705
628
|
pq_max_file_size: Annotated[
|
|
706
629
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
707
630
|
] = "1 MB"
|
|
@@ -733,96 +656,14 @@ class OutputOpenTelemetry(BaseModel):
|
|
|
733
656
|
] = OutputOpenTelemetryQueueFullBehavior.BLOCK
|
|
734
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."""
|
|
735
658
|
|
|
659
|
+
pq_mode: Annotated[
|
|
660
|
+
Annotated[
|
|
661
|
+
Optional[OutputOpenTelemetryMode], PlainValidator(validate_open_enum(False))
|
|
662
|
+
],
|
|
663
|
+
pydantic.Field(alias="pqMode"),
|
|
664
|
+
] = OutputOpenTelemetryMode.ERROR
|
|
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."""
|
|
666
|
+
|
|
736
667
|
pq_controls: Annotated[
|
|
737
668
|
Optional[OutputOpenTelemetryPqControls], pydantic.Field(alias="pqControls")
|
|
738
669
|
] = None
|
|
739
|
-
|
|
740
|
-
@field_serializer("protocol")
|
|
741
|
-
def serialize_protocol(self, value):
|
|
742
|
-
if isinstance(value, str):
|
|
743
|
-
try:
|
|
744
|
-
return models.OutputOpenTelemetryProtocol(value)
|
|
745
|
-
except ValueError:
|
|
746
|
-
return value
|
|
747
|
-
return value
|
|
748
|
-
|
|
749
|
-
@field_serializer("otlp_version")
|
|
750
|
-
def serialize_otlp_version(self, value):
|
|
751
|
-
if isinstance(value, str):
|
|
752
|
-
try:
|
|
753
|
-
return models.OutputOpenTelemetryOTLPVersion(value)
|
|
754
|
-
except ValueError:
|
|
755
|
-
return value
|
|
756
|
-
return value
|
|
757
|
-
|
|
758
|
-
@field_serializer("compress")
|
|
759
|
-
def serialize_compress(self, value):
|
|
760
|
-
if isinstance(value, str):
|
|
761
|
-
try:
|
|
762
|
-
return models.OutputOpenTelemetryCompressCompression(value)
|
|
763
|
-
except ValueError:
|
|
764
|
-
return value
|
|
765
|
-
return value
|
|
766
|
-
|
|
767
|
-
@field_serializer("http_compress")
|
|
768
|
-
def serialize_http_compress(self, value):
|
|
769
|
-
if isinstance(value, str):
|
|
770
|
-
try:
|
|
771
|
-
return models.OutputOpenTelemetryHTTPCompressCompression(value)
|
|
772
|
-
except ValueError:
|
|
773
|
-
return value
|
|
774
|
-
return value
|
|
775
|
-
|
|
776
|
-
@field_serializer("auth_type")
|
|
777
|
-
def serialize_auth_type(self, value):
|
|
778
|
-
if isinstance(value, str):
|
|
779
|
-
try:
|
|
780
|
-
return models.OutputOpenTelemetryAuthenticationType(value)
|
|
781
|
-
except ValueError:
|
|
782
|
-
return value
|
|
783
|
-
return value
|
|
784
|
-
|
|
785
|
-
@field_serializer("failed_request_logging_mode")
|
|
786
|
-
def serialize_failed_request_logging_mode(self, value):
|
|
787
|
-
if isinstance(value, str):
|
|
788
|
-
try:
|
|
789
|
-
return models.OutputOpenTelemetryFailedRequestLoggingMode(value)
|
|
790
|
-
except ValueError:
|
|
791
|
-
return value
|
|
792
|
-
return value
|
|
793
|
-
|
|
794
|
-
@field_serializer("on_backpressure")
|
|
795
|
-
def serialize_on_backpressure(self, value):
|
|
796
|
-
if isinstance(value, str):
|
|
797
|
-
try:
|
|
798
|
-
return models.OutputOpenTelemetryBackpressureBehavior(value)
|
|
799
|
-
except ValueError:
|
|
800
|
-
return value
|
|
801
|
-
return value
|
|
802
|
-
|
|
803
|
-
@field_serializer("pq_mode")
|
|
804
|
-
def serialize_pq_mode(self, value):
|
|
805
|
-
if isinstance(value, str):
|
|
806
|
-
try:
|
|
807
|
-
return models.OutputOpenTelemetryMode(value)
|
|
808
|
-
except ValueError:
|
|
809
|
-
return value
|
|
810
|
-
return value
|
|
811
|
-
|
|
812
|
-
@field_serializer("pq_compress")
|
|
813
|
-
def serialize_pq_compress(self, value):
|
|
814
|
-
if isinstance(value, str):
|
|
815
|
-
try:
|
|
816
|
-
return models.OutputOpenTelemetryPqCompressCompression(value)
|
|
817
|
-
except ValueError:
|
|
818
|
-
return value
|
|
819
|
-
return value
|
|
820
|
-
|
|
821
|
-
@field_serializer("pq_on_backpressure")
|
|
822
|
-
def serialize_pq_on_backpressure(self, value):
|
|
823
|
-
if isinstance(value, str):
|
|
824
|
-
try:
|
|
825
|
-
return models.OutputOpenTelemetryQueueFullBehavior(value)
|
|
826
|
-
except ValueError:
|
|
827
|
-
return value
|
|
828
|
-
return value
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
-
from pydantic import field_serializer
|
|
10
9
|
from pydantic.functional_validators import PlainValidator
|
|
11
10
|
from typing import List, Optional
|
|
12
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -30,11 +29,8 @@ class OutputPrometheusExtraHTTPHeader(BaseModel):
|
|
|
30
29
|
class OutputPrometheusFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
31
30
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
32
31
|
|
|
33
|
-
# Payload
|
|
34
32
|
PAYLOAD = "payload"
|
|
35
|
-
# Payload + Headers
|
|
36
33
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
37
|
-
# None
|
|
38
34
|
NONE = "none"
|
|
39
35
|
|
|
40
36
|
|
|
@@ -95,11 +91,8 @@ class OutputPrometheusTimeoutRetrySettings(BaseModel):
|
|
|
95
91
|
class OutputPrometheusBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
96
92
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
97
93
|
|
|
98
|
-
# Block
|
|
99
94
|
BLOCK = "block"
|
|
100
|
-
# Drop
|
|
101
95
|
DROP = "drop"
|
|
102
|
-
# Persistent Queue
|
|
103
96
|
QUEUE = "queue"
|
|
104
97
|
|
|
105
98
|
|
|
@@ -114,35 +107,28 @@ class OutputPrometheusAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta
|
|
|
114
107
|
OAUTH = "oauth"
|
|
115
108
|
|
|
116
109
|
|
|
117
|
-
class OutputPrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
118
|
-
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."""
|
|
119
|
-
|
|
120
|
-
# Error
|
|
121
|
-
ERROR = "error"
|
|
122
|
-
# Backpressure
|
|
123
|
-
ALWAYS = "always"
|
|
124
|
-
# Always On
|
|
125
|
-
BACKPRESSURE = "backpressure"
|
|
126
|
-
|
|
127
|
-
|
|
128
110
|
class OutputPrometheusCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
129
111
|
r"""Codec to use to compress the persisted data"""
|
|
130
112
|
|
|
131
|
-
# None
|
|
132
113
|
NONE = "none"
|
|
133
|
-
# Gzip
|
|
134
114
|
GZIP = "gzip"
|
|
135
115
|
|
|
136
116
|
|
|
137
117
|
class OutputPrometheusQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
138
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."""
|
|
139
119
|
|
|
140
|
-
# Block
|
|
141
120
|
BLOCK = "block"
|
|
142
|
-
# Drop new data
|
|
143
121
|
DROP = "drop"
|
|
144
122
|
|
|
145
123
|
|
|
124
|
+
class OutputPrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
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."""
|
|
126
|
+
|
|
127
|
+
ERROR = "error"
|
|
128
|
+
BACKPRESSURE = "backpressure"
|
|
129
|
+
ALWAYS = "always"
|
|
130
|
+
|
|
131
|
+
|
|
146
132
|
class OutputPrometheusPqControlsTypedDict(TypedDict):
|
|
147
133
|
pass
|
|
148
134
|
|
|
@@ -236,16 +222,6 @@ class OutputPrometheusTypedDict(TypedDict):
|
|
|
236
222
|
description: NotRequired[str]
|
|
237
223
|
metrics_flush_period_sec: NotRequired[float]
|
|
238
224
|
r"""How frequently metrics metadata is sent out. Value cannot be smaller than the base Flush period set above."""
|
|
239
|
-
pq_strict_ordering: NotRequired[bool]
|
|
240
|
-
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
241
|
-
pq_rate_per_sec: NotRequired[float]
|
|
242
|
-
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
243
|
-
pq_mode: NotRequired[OutputPrometheusMode]
|
|
244
|
-
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."""
|
|
245
|
-
pq_max_buffer_size: NotRequired[float]
|
|
246
|
-
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
247
|
-
pq_max_backpressure_sec: NotRequired[float]
|
|
248
|
-
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
249
225
|
pq_max_file_size: NotRequired[str]
|
|
250
226
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
251
227
|
pq_max_size: NotRequired[str]
|
|
@@ -256,6 +232,8 @@ class OutputPrometheusTypedDict(TypedDict):
|
|
|
256
232
|
r"""Codec to use to compress the persisted data"""
|
|
257
233
|
pq_on_backpressure: NotRequired[OutputPrometheusQueueFullBehavior]
|
|
258
234
|
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."""
|
|
235
|
+
pq_mode: NotRequired[OutputPrometheusMode]
|
|
236
|
+
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."""
|
|
259
237
|
pq_controls: NotRequired[OutputPrometheusPqControlsTypedDict]
|
|
260
238
|
username: NotRequired[str]
|
|
261
239
|
password: NotRequired[str]
|
|
@@ -411,34 +389,6 @@ class OutputPrometheus(BaseModel):
|
|
|
411
389
|
] = 60
|
|
412
390
|
r"""How frequently metrics metadata is sent out. Value cannot be smaller than the base Flush period set above."""
|
|
413
391
|
|
|
414
|
-
pq_strict_ordering: Annotated[
|
|
415
|
-
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
416
|
-
] = True
|
|
417
|
-
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
418
|
-
|
|
419
|
-
pq_rate_per_sec: Annotated[
|
|
420
|
-
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
421
|
-
] = 0
|
|
422
|
-
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
423
|
-
|
|
424
|
-
pq_mode: Annotated[
|
|
425
|
-
Annotated[
|
|
426
|
-
Optional[OutputPrometheusMode], PlainValidator(validate_open_enum(False))
|
|
427
|
-
],
|
|
428
|
-
pydantic.Field(alias="pqMode"),
|
|
429
|
-
] = OutputPrometheusMode.ERROR
|
|
430
|
-
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."""
|
|
431
|
-
|
|
432
|
-
pq_max_buffer_size: Annotated[
|
|
433
|
-
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
434
|
-
] = 42
|
|
435
|
-
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
436
|
-
|
|
437
|
-
pq_max_backpressure_sec: Annotated[
|
|
438
|
-
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
439
|
-
] = 30
|
|
440
|
-
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
441
|
-
|
|
442
392
|
pq_max_file_size: Annotated[
|
|
443
393
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
444
394
|
] = "1 MB"
|
|
@@ -470,6 +420,14 @@ class OutputPrometheus(BaseModel):
|
|
|
470
420
|
] = OutputPrometheusQueueFullBehavior.BLOCK
|
|
471
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."""
|
|
472
422
|
|
|
423
|
+
pq_mode: Annotated[
|
|
424
|
+
Annotated[
|
|
425
|
+
Optional[OutputPrometheusMode], PlainValidator(validate_open_enum(False))
|
|
426
|
+
],
|
|
427
|
+
pydantic.Field(alias="pqMode"),
|
|
428
|
+
] = OutputPrometheusMode.ERROR
|
|
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."""
|
|
430
|
+
|
|
473
431
|
pq_controls: Annotated[
|
|
474
432
|
Optional[OutputPrometheusPqControls], pydantic.Field(alias="pqControls")
|
|
475
433
|
] = None
|
|
@@ -525,57 +483,3 @@ class OutputPrometheus(BaseModel):
|
|
|
525
483
|
pydantic.Field(alias="oauthHeaders"),
|
|
526
484
|
] = None
|
|
527
485
|
r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
|
|
528
|
-
|
|
529
|
-
@field_serializer("failed_request_logging_mode")
|
|
530
|
-
def serialize_failed_request_logging_mode(self, value):
|
|
531
|
-
if isinstance(value, str):
|
|
532
|
-
try:
|
|
533
|
-
return models.OutputPrometheusFailedRequestLoggingMode(value)
|
|
534
|
-
except ValueError:
|
|
535
|
-
return value
|
|
536
|
-
return value
|
|
537
|
-
|
|
538
|
-
@field_serializer("on_backpressure")
|
|
539
|
-
def serialize_on_backpressure(self, value):
|
|
540
|
-
if isinstance(value, str):
|
|
541
|
-
try:
|
|
542
|
-
return models.OutputPrometheusBackpressureBehavior(value)
|
|
543
|
-
except ValueError:
|
|
544
|
-
return value
|
|
545
|
-
return value
|
|
546
|
-
|
|
547
|
-
@field_serializer("auth_type")
|
|
548
|
-
def serialize_auth_type(self, value):
|
|
549
|
-
if isinstance(value, str):
|
|
550
|
-
try:
|
|
551
|
-
return models.OutputPrometheusAuthenticationType(value)
|
|
552
|
-
except ValueError:
|
|
553
|
-
return value
|
|
554
|
-
return value
|
|
555
|
-
|
|
556
|
-
@field_serializer("pq_mode")
|
|
557
|
-
def serialize_pq_mode(self, value):
|
|
558
|
-
if isinstance(value, str):
|
|
559
|
-
try:
|
|
560
|
-
return models.OutputPrometheusMode(value)
|
|
561
|
-
except ValueError:
|
|
562
|
-
return value
|
|
563
|
-
return value
|
|
564
|
-
|
|
565
|
-
@field_serializer("pq_compress")
|
|
566
|
-
def serialize_pq_compress(self, value):
|
|
567
|
-
if isinstance(value, str):
|
|
568
|
-
try:
|
|
569
|
-
return models.OutputPrometheusCompression(value)
|
|
570
|
-
except ValueError:
|
|
571
|
-
return value
|
|
572
|
-
return value
|
|
573
|
-
|
|
574
|
-
@field_serializer("pq_on_backpressure")
|
|
575
|
-
def serialize_pq_on_backpressure(self, value):
|
|
576
|
-
if isinstance(value, str):
|
|
577
|
-
try:
|
|
578
|
-
return models.OutputPrometheusQueueFullBehavior(value)
|
|
579
|
-
except ValueError:
|
|
580
|
-
return value
|
|
581
|
-
return value
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
-
from pydantic import field_serializer
|
|
10
9
|
from pydantic.functional_validators import PlainValidator
|
|
11
10
|
from typing import List, Optional
|
|
12
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -31,9 +30,7 @@ class OutputRingDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
31
30
|
class OutputRingBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
32
31
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
33
32
|
|
|
34
|
-
# Block
|
|
35
33
|
BLOCK = "block"
|
|
36
|
-
# Drop
|
|
37
34
|
DROP = "drop"
|
|
38
35
|
|
|
39
36
|
|
|
@@ -122,30 +119,3 @@ class OutputRing(BaseModel):
|
|
|
122
119
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
123
120
|
|
|
124
121
|
description: Optional[str] = None
|
|
125
|
-
|
|
126
|
-
@field_serializer("format_")
|
|
127
|
-
def serialize_format_(self, value):
|
|
128
|
-
if isinstance(value, str):
|
|
129
|
-
try:
|
|
130
|
-
return models.OutputRingDataFormat(value)
|
|
131
|
-
except ValueError:
|
|
132
|
-
return value
|
|
133
|
-
return value
|
|
134
|
-
|
|
135
|
-
@field_serializer("compress")
|
|
136
|
-
def serialize_compress(self, value):
|
|
137
|
-
if isinstance(value, str):
|
|
138
|
-
try:
|
|
139
|
-
return models.OutputRingDataCompressionFormat(value)
|
|
140
|
-
except ValueError:
|
|
141
|
-
return value
|
|
142
|
-
return value
|
|
143
|
-
|
|
144
|
-
@field_serializer("on_backpressure")
|
|
145
|
-
def serialize_on_backpressure(self, value):
|
|
146
|
-
if isinstance(value, str):
|
|
147
|
-
try:
|
|
148
|
-
return models.OutputRingBackpressureBehavior(value)
|
|
149
|
-
except ValueError:
|
|
150
|
-
return value
|
|
151
|
-
return value
|