cribl-control-plane 0.3.0b3__py3-none-any.whl → 0.3.0b12__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/groups_sdk.py +2 -2
- cribl_control_plane/lakedatasets.py +28 -0
- cribl_control_plane/models/__init__.py +124 -5
- cribl_control_plane/models/cacheconnection.py +20 -0
- cribl_control_plane/models/configgroup.py +20 -1
- cribl_control_plane/models/configgroupcloud.py +11 -1
- cribl_control_plane/models/createconfiggroupbyproductop.py +13 -2
- cribl_control_plane/models/cribllakedataset.py +15 -1
- cribl_control_plane/models/cribllakedatasetupdate.py +15 -1
- cribl_control_plane/models/datasetmetadata.py +11 -1
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +11 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +20 -0
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +20 -0
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +11 -0
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +11 -0
- cribl_control_plane/models/getsummaryop.py +11 -0
- cribl_control_plane/models/groupcreaterequest.py +20 -1
- cribl_control_plane/models/hbcriblinfo.py +11 -1
- cribl_control_plane/models/healthserverstatus.py +20 -1
- cribl_control_plane/models/input.py +15 -15
- cribl_control_plane/models/inputappscope.py +76 -17
- cribl_control_plane/models/inputazureblob.py +29 -1
- cribl_control_plane/models/inputcollection.py +20 -1
- cribl_control_plane/models/inputconfluentcloud.py +188 -1
- cribl_control_plane/models/inputcribl.py +20 -1
- cribl_control_plane/models/inputcriblhttp.py +58 -17
- cribl_control_plane/models/inputcribllakehttp.py +58 -17
- cribl_control_plane/models/inputcriblmetrics.py +20 -1
- cribl_control_plane/models/inputcribltcp.py +58 -17
- cribl_control_plane/models/inputcrowdstrike.py +47 -1
- cribl_control_plane/models/inputdatadogagent.py +58 -17
- cribl_control_plane/models/inputdatagen.py +20 -1
- cribl_control_plane/models/inputedgeprometheus.py +138 -37
- cribl_control_plane/models/inputelastic.py +108 -27
- cribl_control_plane/models/inputeventhub.py +176 -1
- cribl_control_plane/models/inputexec.py +29 -1
- cribl_control_plane/models/inputfile.py +40 -7
- cribl_control_plane/models/inputfirehose.py +58 -17
- cribl_control_plane/models/inputgooglepubsub.py +29 -1
- cribl_control_plane/models/inputgrafana.py +149 -32
- cribl_control_plane/models/inputhttp.py +58 -17
- cribl_control_plane/models/inputhttpraw.py +58 -17
- cribl_control_plane/models/inputjournalfiles.py +20 -1
- cribl_control_plane/models/inputkafka.py +182 -1
- cribl_control_plane/models/inputkinesis.py +65 -1
- cribl_control_plane/models/inputkubeevents.py +20 -1
- cribl_control_plane/models/inputkubelogs.py +29 -1
- cribl_control_plane/models/inputkubemetrics.py +29 -1
- cribl_control_plane/models/inputloki.py +67 -17
- cribl_control_plane/models/inputmetrics.py +58 -17
- cribl_control_plane/models/inputmodeldriventelemetry.py +58 -17
- cribl_control_plane/models/inputmsk.py +74 -1
- cribl_control_plane/models/inputnetflow.py +20 -1
- cribl_control_plane/models/inputoffice365mgmt.py +56 -1
- cribl_control_plane/models/inputoffice365msgtrace.py +56 -1
- cribl_control_plane/models/inputoffice365service.py +56 -1
- cribl_control_plane/models/inputopentelemetry.py +84 -16
- cribl_control_plane/models/inputprometheus.py +131 -37
- cribl_control_plane/models/inputprometheusrw.py +67 -17
- cribl_control_plane/models/inputrawudp.py +20 -1
- cribl_control_plane/models/inputs3.py +38 -1
- cribl_control_plane/models/inputs3inventory.py +47 -1
- cribl_control_plane/models/inputsecuritylake.py +47 -1
- cribl_control_plane/models/inputsnmp.py +29 -1
- cribl_control_plane/models/inputsplunk.py +76 -17
- cribl_control_plane/models/inputsplunkhec.py +66 -16
- cribl_control_plane/models/inputsplunksearch.py +56 -1
- cribl_control_plane/models/inputsqs.py +47 -1
- cribl_control_plane/models/inputsyslog.py +113 -32
- cribl_control_plane/models/inputsystemmetrics.py +110 -9
- cribl_control_plane/models/inputsystemstate.py +29 -1
- cribl_control_plane/models/inputtcp.py +77 -17
- cribl_control_plane/models/inputtcpjson.py +67 -17
- cribl_control_plane/models/inputwef.py +65 -1
- cribl_control_plane/models/inputwindowsmetrics.py +101 -9
- cribl_control_plane/models/inputwineventlogs.py +52 -1
- cribl_control_plane/models/inputwiz.py +38 -1
- cribl_control_plane/models/inputwizwebhook.py +58 -17
- cribl_control_plane/models/inputzscalerhec.py +66 -16
- cribl_control_plane/models/jobinfo.py +10 -4
- cribl_control_plane/models/jobstatus.py +34 -3
- cribl_control_plane/models/lakedatasetmetrics.py +17 -0
- cribl_control_plane/models/listconfiggroupbyproductop.py +11 -0
- cribl_control_plane/models/masterworkerentry.py +11 -1
- cribl_control_plane/models/nodeupgradestatus.py +38 -0
- cribl_control_plane/models/output.py +21 -21
- cribl_control_plane/models/outputazureblob.py +90 -1
- cribl_control_plane/models/outputazuredataexplorer.py +430 -93
- cribl_control_plane/models/outputazureeventhub.py +267 -22
- cribl_control_plane/models/outputazurelogs.py +105 -22
- cribl_control_plane/models/outputchronicle.py +105 -22
- cribl_control_plane/models/outputclickhouse.py +141 -22
- cribl_control_plane/models/outputcloudwatch.py +96 -22
- cribl_control_plane/models/outputconfluentcloud.py +292 -23
- cribl_control_plane/models/outputcriblhttp.py +123 -22
- cribl_control_plane/models/outputcribllake.py +76 -1
- cribl_control_plane/models/outputcribltcp.py +123 -22
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +117 -23
- cribl_control_plane/models/outputdatabricks.py +76 -5
- cribl_control_plane/models/outputdatadog.py +132 -22
- cribl_control_plane/models/outputdataset.py +123 -22
- cribl_control_plane/models/outputdiskspool.py +11 -1
- cribl_control_plane/models/outputdls3.py +117 -1
- cribl_control_plane/models/outputdynatracehttp.py +141 -22
- cribl_control_plane/models/outputdynatraceotlp.py +141 -22
- cribl_control_plane/models/outputelastic.py +148 -22
- cribl_control_plane/models/outputelasticcloud.py +130 -22
- cribl_control_plane/models/outputexabeam.py +47 -1
- cribl_control_plane/models/outputfilesystem.py +72 -1
- cribl_control_plane/models/outputgooglechronicle.py +148 -23
- cribl_control_plane/models/outputgooglecloudlogging.py +115 -23
- cribl_control_plane/models/outputgooglecloudstorage.py +108 -1
- cribl_control_plane/models/outputgooglepubsub.py +96 -22
- cribl_control_plane/models/outputgrafanacloud.py +244 -43
- cribl_control_plane/models/outputgraphite.py +96 -22
- cribl_control_plane/models/outputhoneycomb.py +105 -22
- cribl_control_plane/models/outputhumiohec.py +114 -22
- cribl_control_plane/models/outputinfluxdb.py +114 -22
- cribl_control_plane/models/outputkafka.py +283 -20
- cribl_control_plane/models/outputkinesis.py +121 -22
- cribl_control_plane/models/outputloki.py +112 -20
- cribl_control_plane/models/outputminio.py +117 -1
- cribl_control_plane/models/outputmsk.py +175 -20
- cribl_control_plane/models/outputnewrelic.py +123 -22
- cribl_control_plane/models/outputnewrelicevents.py +115 -23
- cribl_control_plane/models/outputopentelemetry.py +159 -22
- cribl_control_plane/models/outputprometheus.py +105 -22
- cribl_control_plane/models/outputring.py +29 -1
- cribl_control_plane/models/outputs3.py +117 -1
- cribl_control_plane/models/outputsecuritylake.py +85 -1
- cribl_control_plane/models/outputsentinel.py +123 -22
- cribl_control_plane/models/outputsentineloneaisiem.py +124 -23
- cribl_control_plane/models/outputservicenow.py +150 -22
- cribl_control_plane/models/outputsignalfx.py +105 -22
- cribl_control_plane/models/outputsns.py +103 -20
- cribl_control_plane/models/outputsplunk.py +141 -22
- cribl_control_plane/models/outputsplunkhec.py +198 -22
- cribl_control_plane/models/outputsplunklb.py +170 -22
- cribl_control_plane/models/outputsqs.py +112 -20
- cribl_control_plane/models/outputstatsd.py +96 -22
- cribl_control_plane/models/outputstatsdext.py +96 -22
- cribl_control_plane/models/outputsumologic.py +105 -22
- cribl_control_plane/models/outputsyslog.py +238 -99
- cribl_control_plane/models/outputtcpjson.py +132 -22
- cribl_control_plane/models/outputwavefront.py +105 -22
- cribl_control_plane/models/outputwebhook.py +141 -22
- cribl_control_plane/models/outputxsiam.py +103 -20
- cribl_control_plane/models/resourcepolicy.py +11 -0
- cribl_control_plane/models/runnablejobcollection.py +68 -9
- cribl_control_plane/models/runnablejobexecutor.py +32 -9
- cribl_control_plane/models/runnablejobscheduledsearch.py +23 -9
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +11 -0
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +11 -0
- cribl_control_plane/sdk.py +2 -2
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/METADATA +25 -7
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/RECORD +158 -157
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/WHEEL +0 -0
|
@@ -1,11 +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
|
+
from cribl_control_plane import models, 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
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -53,6 +54,17 @@ class OutputSqsBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
53
54
|
QUEUE = "queue"
|
|
54
55
|
|
|
55
56
|
|
|
57
|
+
class OutputSqsMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
58
|
+
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."""
|
|
59
|
+
|
|
60
|
+
# Error
|
|
61
|
+
ERROR = "error"
|
|
62
|
+
# Backpressure
|
|
63
|
+
ALWAYS = "always"
|
|
64
|
+
# Always On
|
|
65
|
+
BACKPRESSURE = "backpressure"
|
|
66
|
+
|
|
67
|
+
|
|
56
68
|
class OutputSqsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
57
69
|
r"""Codec to use to compress the persisted data"""
|
|
58
70
|
|
|
@@ -71,17 +83,6 @@ class OutputSqsQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
71
83
|
DROP = "drop"
|
|
72
84
|
|
|
73
85
|
|
|
74
|
-
class OutputSqsMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
75
|
-
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."""
|
|
76
|
-
|
|
77
|
-
# Error
|
|
78
|
-
ERROR = "error"
|
|
79
|
-
# Backpressure
|
|
80
|
-
BACKPRESSURE = "backpressure"
|
|
81
|
-
# Always On
|
|
82
|
-
ALWAYS = "always"
|
|
83
|
-
|
|
84
|
-
|
|
85
86
|
class OutputSqsPqControlsTypedDict(TypedDict):
|
|
86
87
|
pass
|
|
87
88
|
|
|
@@ -147,6 +148,16 @@ class OutputSqsTypedDict(TypedDict):
|
|
|
147
148
|
aws_api_key: NotRequired[str]
|
|
148
149
|
aws_secret: NotRequired[str]
|
|
149
150
|
r"""Select or create a stored secret that references your access key and secret key"""
|
|
151
|
+
pq_strict_ordering: NotRequired[bool]
|
|
152
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
153
|
+
pq_rate_per_sec: NotRequired[float]
|
|
154
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
155
|
+
pq_mode: NotRequired[OutputSqsMode]
|
|
156
|
+
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
157
|
+
pq_max_buffer_size: NotRequired[float]
|
|
158
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
159
|
+
pq_max_backpressure_sec: NotRequired[float]
|
|
160
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
150
161
|
pq_max_file_size: NotRequired[str]
|
|
151
162
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
152
163
|
pq_max_size: NotRequired[str]
|
|
@@ -157,8 +168,6 @@ class OutputSqsTypedDict(TypedDict):
|
|
|
157
168
|
r"""Codec to use to compress the persisted data"""
|
|
158
169
|
pq_on_backpressure: NotRequired[OutputSqsQueueFullBehavior]
|
|
159
170
|
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."""
|
|
160
|
-
pq_mode: NotRequired[OutputSqsMode]
|
|
161
|
-
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."""
|
|
162
171
|
pq_controls: NotRequired[OutputSqsPqControlsTypedDict]
|
|
163
172
|
|
|
164
173
|
|
|
@@ -298,6 +307,32 @@ class OutputSqs(BaseModel):
|
|
|
298
307
|
aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
|
|
299
308
|
r"""Select or create a stored secret that references your access key and secret key"""
|
|
300
309
|
|
|
310
|
+
pq_strict_ordering: Annotated[
|
|
311
|
+
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
312
|
+
] = True
|
|
313
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
314
|
+
|
|
315
|
+
pq_rate_per_sec: Annotated[
|
|
316
|
+
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
317
|
+
] = 0
|
|
318
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
319
|
+
|
|
320
|
+
pq_mode: Annotated[
|
|
321
|
+
Annotated[Optional[OutputSqsMode], PlainValidator(validate_open_enum(False))],
|
|
322
|
+
pydantic.Field(alias="pqMode"),
|
|
323
|
+
] = OutputSqsMode.ERROR
|
|
324
|
+
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."""
|
|
325
|
+
|
|
326
|
+
pq_max_buffer_size: Annotated[
|
|
327
|
+
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
328
|
+
] = 42
|
|
329
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
330
|
+
|
|
331
|
+
pq_max_backpressure_sec: Annotated[
|
|
332
|
+
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
333
|
+
] = 30
|
|
334
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
335
|
+
|
|
301
336
|
pq_max_file_size: Annotated[
|
|
302
337
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
303
338
|
] = "1 MB"
|
|
@@ -328,12 +363,69 @@ class OutputSqs(BaseModel):
|
|
|
328
363
|
] = OutputSqsQueueFullBehavior.BLOCK
|
|
329
364
|
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."""
|
|
330
365
|
|
|
331
|
-
pq_mode: Annotated[
|
|
332
|
-
Annotated[Optional[OutputSqsMode], PlainValidator(validate_open_enum(False))],
|
|
333
|
-
pydantic.Field(alias="pqMode"),
|
|
334
|
-
] = OutputSqsMode.ERROR
|
|
335
|
-
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."""
|
|
336
|
-
|
|
337
366
|
pq_controls: Annotated[
|
|
338
367
|
Optional[OutputSqsPqControls], pydantic.Field(alias="pqControls")
|
|
339
368
|
] = None
|
|
369
|
+
|
|
370
|
+
@field_serializer("queue_type")
|
|
371
|
+
def serialize_queue_type(self, value):
|
|
372
|
+
if isinstance(value, str):
|
|
373
|
+
try:
|
|
374
|
+
return models.OutputSqsQueueType(value)
|
|
375
|
+
except ValueError:
|
|
376
|
+
return value
|
|
377
|
+
return value
|
|
378
|
+
|
|
379
|
+
@field_serializer("aws_authentication_method")
|
|
380
|
+
def serialize_aws_authentication_method(self, value):
|
|
381
|
+
if isinstance(value, str):
|
|
382
|
+
try:
|
|
383
|
+
return models.OutputSqsAuthenticationMethod(value)
|
|
384
|
+
except ValueError:
|
|
385
|
+
return value
|
|
386
|
+
return value
|
|
387
|
+
|
|
388
|
+
@field_serializer("signature_version")
|
|
389
|
+
def serialize_signature_version(self, value):
|
|
390
|
+
if isinstance(value, str):
|
|
391
|
+
try:
|
|
392
|
+
return models.OutputSqsSignatureVersion(value)
|
|
393
|
+
except ValueError:
|
|
394
|
+
return value
|
|
395
|
+
return value
|
|
396
|
+
|
|
397
|
+
@field_serializer("on_backpressure")
|
|
398
|
+
def serialize_on_backpressure(self, value):
|
|
399
|
+
if isinstance(value, str):
|
|
400
|
+
try:
|
|
401
|
+
return models.OutputSqsBackpressureBehavior(value)
|
|
402
|
+
except ValueError:
|
|
403
|
+
return value
|
|
404
|
+
return value
|
|
405
|
+
|
|
406
|
+
@field_serializer("pq_mode")
|
|
407
|
+
def serialize_pq_mode(self, value):
|
|
408
|
+
if isinstance(value, str):
|
|
409
|
+
try:
|
|
410
|
+
return models.OutputSqsMode(value)
|
|
411
|
+
except ValueError:
|
|
412
|
+
return value
|
|
413
|
+
return value
|
|
414
|
+
|
|
415
|
+
@field_serializer("pq_compress")
|
|
416
|
+
def serialize_pq_compress(self, value):
|
|
417
|
+
if isinstance(value, str):
|
|
418
|
+
try:
|
|
419
|
+
return models.OutputSqsCompression(value)
|
|
420
|
+
except ValueError:
|
|
421
|
+
return value
|
|
422
|
+
return value
|
|
423
|
+
|
|
424
|
+
@field_serializer("pq_on_backpressure")
|
|
425
|
+
def serialize_pq_on_backpressure(self, value):
|
|
426
|
+
if isinstance(value, str):
|
|
427
|
+
try:
|
|
428
|
+
return models.OutputSqsQueueFullBehavior(value)
|
|
429
|
+
except ValueError:
|
|
430
|
+
return value
|
|
431
|
+
return value
|
|
@@ -1,11 +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
|
+
from cribl_control_plane import models, 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
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -35,6 +36,17 @@ class OutputStatsdBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
35
36
|
QUEUE = "queue"
|
|
36
37
|
|
|
37
38
|
|
|
39
|
+
class OutputStatsdMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
40
|
+
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."""
|
|
41
|
+
|
|
42
|
+
# Error
|
|
43
|
+
ERROR = "error"
|
|
44
|
+
# Backpressure
|
|
45
|
+
ALWAYS = "always"
|
|
46
|
+
# Always On
|
|
47
|
+
BACKPRESSURE = "backpressure"
|
|
48
|
+
|
|
49
|
+
|
|
38
50
|
class OutputStatsdCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
39
51
|
r"""Codec to use to compress the persisted data"""
|
|
40
52
|
|
|
@@ -53,17 +65,6 @@ class OutputStatsdQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
53
65
|
DROP = "drop"
|
|
54
66
|
|
|
55
67
|
|
|
56
|
-
class OutputStatsdMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
57
|
-
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."""
|
|
58
|
-
|
|
59
|
-
# Error
|
|
60
|
-
ERROR = "error"
|
|
61
|
-
# Backpressure
|
|
62
|
-
BACKPRESSURE = "backpressure"
|
|
63
|
-
# Always On
|
|
64
|
-
ALWAYS = "always"
|
|
65
|
-
|
|
66
|
-
|
|
67
68
|
class OutputStatsdPqControlsTypedDict(TypedDict):
|
|
68
69
|
pass
|
|
69
70
|
|
|
@@ -105,6 +106,16 @@ class OutputStatsdTypedDict(TypedDict):
|
|
|
105
106
|
r"""Amount of time (milliseconds) to wait for a write to complete before assuming connection is dead"""
|
|
106
107
|
on_backpressure: NotRequired[OutputStatsdBackpressureBehavior]
|
|
107
108
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
109
|
+
pq_strict_ordering: NotRequired[bool]
|
|
110
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
111
|
+
pq_rate_per_sec: NotRequired[float]
|
|
112
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
113
|
+
pq_mode: NotRequired[OutputStatsdMode]
|
|
114
|
+
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."""
|
|
115
|
+
pq_max_buffer_size: NotRequired[float]
|
|
116
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
117
|
+
pq_max_backpressure_sec: NotRequired[float]
|
|
118
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
108
119
|
pq_max_file_size: NotRequired[str]
|
|
109
120
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
110
121
|
pq_max_size: NotRequired[str]
|
|
@@ -115,8 +126,6 @@ class OutputStatsdTypedDict(TypedDict):
|
|
|
115
126
|
r"""Codec to use to compress the persisted data"""
|
|
116
127
|
pq_on_backpressure: NotRequired[OutputStatsdQueueFullBehavior]
|
|
117
128
|
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."""
|
|
118
|
-
pq_mode: NotRequired[OutputStatsdMode]
|
|
119
|
-
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."""
|
|
120
129
|
pq_controls: NotRequired[OutputStatsdPqControlsTypedDict]
|
|
121
130
|
|
|
122
131
|
|
|
@@ -191,6 +200,34 @@ class OutputStatsd(BaseModel):
|
|
|
191
200
|
] = OutputStatsdBackpressureBehavior.BLOCK
|
|
192
201
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
193
202
|
|
|
203
|
+
pq_strict_ordering: Annotated[
|
|
204
|
+
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
205
|
+
] = True
|
|
206
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
207
|
+
|
|
208
|
+
pq_rate_per_sec: Annotated[
|
|
209
|
+
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
210
|
+
] = 0
|
|
211
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
212
|
+
|
|
213
|
+
pq_mode: Annotated[
|
|
214
|
+
Annotated[
|
|
215
|
+
Optional[OutputStatsdMode], PlainValidator(validate_open_enum(False))
|
|
216
|
+
],
|
|
217
|
+
pydantic.Field(alias="pqMode"),
|
|
218
|
+
] = OutputStatsdMode.ERROR
|
|
219
|
+
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."""
|
|
220
|
+
|
|
221
|
+
pq_max_buffer_size: Annotated[
|
|
222
|
+
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
223
|
+
] = 42
|
|
224
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
225
|
+
|
|
226
|
+
pq_max_backpressure_sec: Annotated[
|
|
227
|
+
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
228
|
+
] = 30
|
|
229
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
230
|
+
|
|
194
231
|
pq_max_file_size: Annotated[
|
|
195
232
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
196
233
|
] = "1 MB"
|
|
@@ -221,14 +258,51 @@ class OutputStatsd(BaseModel):
|
|
|
221
258
|
] = OutputStatsdQueueFullBehavior.BLOCK
|
|
222
259
|
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."""
|
|
223
260
|
|
|
224
|
-
pq_mode: Annotated[
|
|
225
|
-
Annotated[
|
|
226
|
-
Optional[OutputStatsdMode], PlainValidator(validate_open_enum(False))
|
|
227
|
-
],
|
|
228
|
-
pydantic.Field(alias="pqMode"),
|
|
229
|
-
] = OutputStatsdMode.ERROR
|
|
230
|
-
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."""
|
|
231
|
-
|
|
232
261
|
pq_controls: Annotated[
|
|
233
262
|
Optional[OutputStatsdPqControls], pydantic.Field(alias="pqControls")
|
|
234
263
|
] = None
|
|
264
|
+
|
|
265
|
+
@field_serializer("protocol")
|
|
266
|
+
def serialize_protocol(self, value):
|
|
267
|
+
if isinstance(value, str):
|
|
268
|
+
try:
|
|
269
|
+
return models.OutputStatsdDestinationProtocol(value)
|
|
270
|
+
except ValueError:
|
|
271
|
+
return value
|
|
272
|
+
return value
|
|
273
|
+
|
|
274
|
+
@field_serializer("on_backpressure")
|
|
275
|
+
def serialize_on_backpressure(self, value):
|
|
276
|
+
if isinstance(value, str):
|
|
277
|
+
try:
|
|
278
|
+
return models.OutputStatsdBackpressureBehavior(value)
|
|
279
|
+
except ValueError:
|
|
280
|
+
return value
|
|
281
|
+
return value
|
|
282
|
+
|
|
283
|
+
@field_serializer("pq_mode")
|
|
284
|
+
def serialize_pq_mode(self, value):
|
|
285
|
+
if isinstance(value, str):
|
|
286
|
+
try:
|
|
287
|
+
return models.OutputStatsdMode(value)
|
|
288
|
+
except ValueError:
|
|
289
|
+
return value
|
|
290
|
+
return value
|
|
291
|
+
|
|
292
|
+
@field_serializer("pq_compress")
|
|
293
|
+
def serialize_pq_compress(self, value):
|
|
294
|
+
if isinstance(value, str):
|
|
295
|
+
try:
|
|
296
|
+
return models.OutputStatsdCompression(value)
|
|
297
|
+
except ValueError:
|
|
298
|
+
return value
|
|
299
|
+
return value
|
|
300
|
+
|
|
301
|
+
@field_serializer("pq_on_backpressure")
|
|
302
|
+
def serialize_pq_on_backpressure(self, value):
|
|
303
|
+
if isinstance(value, str):
|
|
304
|
+
try:
|
|
305
|
+
return models.OutputStatsdQueueFullBehavior(value)
|
|
306
|
+
except ValueError:
|
|
307
|
+
return value
|
|
308
|
+
return value
|
|
@@ -1,11 +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
|
+
from cribl_control_plane import models, 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
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -35,6 +36,17 @@ class OutputStatsdExtBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMet
|
|
|
35
36
|
QUEUE = "queue"
|
|
36
37
|
|
|
37
38
|
|
|
39
|
+
class OutputStatsdExtMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
40
|
+
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."""
|
|
41
|
+
|
|
42
|
+
# Error
|
|
43
|
+
ERROR = "error"
|
|
44
|
+
# Backpressure
|
|
45
|
+
ALWAYS = "always"
|
|
46
|
+
# Always On
|
|
47
|
+
BACKPRESSURE = "backpressure"
|
|
48
|
+
|
|
49
|
+
|
|
38
50
|
class OutputStatsdExtCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
39
51
|
r"""Codec to use to compress the persisted data"""
|
|
40
52
|
|
|
@@ -53,17 +65,6 @@ class OutputStatsdExtQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
53
65
|
DROP = "drop"
|
|
54
66
|
|
|
55
67
|
|
|
56
|
-
class OutputStatsdExtMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
57
|
-
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."""
|
|
58
|
-
|
|
59
|
-
# Error
|
|
60
|
-
ERROR = "error"
|
|
61
|
-
# Backpressure
|
|
62
|
-
BACKPRESSURE = "backpressure"
|
|
63
|
-
# Always On
|
|
64
|
-
ALWAYS = "always"
|
|
65
|
-
|
|
66
|
-
|
|
67
68
|
class OutputStatsdExtPqControlsTypedDict(TypedDict):
|
|
68
69
|
pass
|
|
69
70
|
|
|
@@ -105,6 +106,16 @@ class OutputStatsdExtTypedDict(TypedDict):
|
|
|
105
106
|
r"""Amount of time (milliseconds) to wait for a write to complete before assuming connection is dead"""
|
|
106
107
|
on_backpressure: NotRequired[OutputStatsdExtBackpressureBehavior]
|
|
107
108
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
109
|
+
pq_strict_ordering: NotRequired[bool]
|
|
110
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
111
|
+
pq_rate_per_sec: NotRequired[float]
|
|
112
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
113
|
+
pq_mode: NotRequired[OutputStatsdExtMode]
|
|
114
|
+
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."""
|
|
115
|
+
pq_max_buffer_size: NotRequired[float]
|
|
116
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
117
|
+
pq_max_backpressure_sec: NotRequired[float]
|
|
118
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
108
119
|
pq_max_file_size: NotRequired[str]
|
|
109
120
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
110
121
|
pq_max_size: NotRequired[str]
|
|
@@ -115,8 +126,6 @@ class OutputStatsdExtTypedDict(TypedDict):
|
|
|
115
126
|
r"""Codec to use to compress the persisted data"""
|
|
116
127
|
pq_on_backpressure: NotRequired[OutputStatsdExtQueueFullBehavior]
|
|
117
128
|
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."""
|
|
118
|
-
pq_mode: NotRequired[OutputStatsdExtMode]
|
|
119
|
-
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."""
|
|
120
129
|
pq_controls: NotRequired[OutputStatsdExtPqControlsTypedDict]
|
|
121
130
|
|
|
122
131
|
|
|
@@ -191,6 +200,34 @@ class OutputStatsdExt(BaseModel):
|
|
|
191
200
|
] = OutputStatsdExtBackpressureBehavior.BLOCK
|
|
192
201
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
193
202
|
|
|
203
|
+
pq_strict_ordering: Annotated[
|
|
204
|
+
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
205
|
+
] = True
|
|
206
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
207
|
+
|
|
208
|
+
pq_rate_per_sec: Annotated[
|
|
209
|
+
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
210
|
+
] = 0
|
|
211
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
212
|
+
|
|
213
|
+
pq_mode: Annotated[
|
|
214
|
+
Annotated[
|
|
215
|
+
Optional[OutputStatsdExtMode], PlainValidator(validate_open_enum(False))
|
|
216
|
+
],
|
|
217
|
+
pydantic.Field(alias="pqMode"),
|
|
218
|
+
] = OutputStatsdExtMode.ERROR
|
|
219
|
+
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."""
|
|
220
|
+
|
|
221
|
+
pq_max_buffer_size: Annotated[
|
|
222
|
+
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
223
|
+
] = 42
|
|
224
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
225
|
+
|
|
226
|
+
pq_max_backpressure_sec: Annotated[
|
|
227
|
+
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
228
|
+
] = 30
|
|
229
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
230
|
+
|
|
194
231
|
pq_max_file_size: Annotated[
|
|
195
232
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
196
233
|
] = "1 MB"
|
|
@@ -222,14 +259,51 @@ class OutputStatsdExt(BaseModel):
|
|
|
222
259
|
] = OutputStatsdExtQueueFullBehavior.BLOCK
|
|
223
260
|
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."""
|
|
224
261
|
|
|
225
|
-
pq_mode: Annotated[
|
|
226
|
-
Annotated[
|
|
227
|
-
Optional[OutputStatsdExtMode], PlainValidator(validate_open_enum(False))
|
|
228
|
-
],
|
|
229
|
-
pydantic.Field(alias="pqMode"),
|
|
230
|
-
] = OutputStatsdExtMode.ERROR
|
|
231
|
-
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."""
|
|
232
|
-
|
|
233
262
|
pq_controls: Annotated[
|
|
234
263
|
Optional[OutputStatsdExtPqControls], pydantic.Field(alias="pqControls")
|
|
235
264
|
] = None
|
|
265
|
+
|
|
266
|
+
@field_serializer("protocol")
|
|
267
|
+
def serialize_protocol(self, value):
|
|
268
|
+
if isinstance(value, str):
|
|
269
|
+
try:
|
|
270
|
+
return models.OutputStatsdExtDestinationProtocol(value)
|
|
271
|
+
except ValueError:
|
|
272
|
+
return value
|
|
273
|
+
return value
|
|
274
|
+
|
|
275
|
+
@field_serializer("on_backpressure")
|
|
276
|
+
def serialize_on_backpressure(self, value):
|
|
277
|
+
if isinstance(value, str):
|
|
278
|
+
try:
|
|
279
|
+
return models.OutputStatsdExtBackpressureBehavior(value)
|
|
280
|
+
except ValueError:
|
|
281
|
+
return value
|
|
282
|
+
return value
|
|
283
|
+
|
|
284
|
+
@field_serializer("pq_mode")
|
|
285
|
+
def serialize_pq_mode(self, value):
|
|
286
|
+
if isinstance(value, str):
|
|
287
|
+
try:
|
|
288
|
+
return models.OutputStatsdExtMode(value)
|
|
289
|
+
except ValueError:
|
|
290
|
+
return value
|
|
291
|
+
return value
|
|
292
|
+
|
|
293
|
+
@field_serializer("pq_compress")
|
|
294
|
+
def serialize_pq_compress(self, value):
|
|
295
|
+
if isinstance(value, str):
|
|
296
|
+
try:
|
|
297
|
+
return models.OutputStatsdExtCompression(value)
|
|
298
|
+
except ValueError:
|
|
299
|
+
return value
|
|
300
|
+
return value
|
|
301
|
+
|
|
302
|
+
@field_serializer("pq_on_backpressure")
|
|
303
|
+
def serialize_pq_on_backpressure(self, value):
|
|
304
|
+
if isinstance(value, str):
|
|
305
|
+
try:
|
|
306
|
+
return models.OutputStatsdExtQueueFullBehavior(value)
|
|
307
|
+
except ValueError:
|
|
308
|
+
return value
|
|
309
|
+
return value
|