cribl-control-plane 0.0.15__py3-none-any.whl → 0.0.17__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/{outputs.py → destinations.py} +69 -71
- cribl_control_plane/errors/healthstatus_error.py +2 -8
- cribl_control_plane/models/__init__.py +5347 -115
- cribl_control_plane/models/createinputop.py +18216 -2
- cribl_control_plane/models/createoutputop.py +18417 -4
- cribl_control_plane/models/createoutputtestbyidop.py +2 -2
- cribl_control_plane/models/deleteoutputbyidop.py +2 -2
- cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
- cribl_control_plane/models/getoutputbyidop.py +2 -2
- cribl_control_plane/models/getoutputpqbyidop.py +2 -2
- cribl_control_plane/models/getoutputsamplesbyidop.py +2 -2
- cribl_control_plane/models/healthstatus.py +4 -7
- cribl_control_plane/models/inputappscope.py +16 -36
- cribl_control_plane/models/inputazureblob.py +8 -19
- cribl_control_plane/models/inputcollection.py +6 -15
- cribl_control_plane/models/inputconfluentcloud.py +22 -45
- cribl_control_plane/models/inputcribl.py +6 -13
- cribl_control_plane/models/inputcriblhttp.py +12 -27
- cribl_control_plane/models/inputcribllakehttp.py +14 -26
- cribl_control_plane/models/inputcriblmetrics.py +6 -14
- cribl_control_plane/models/inputcribltcp.py +12 -27
- cribl_control_plane/models/inputcrowdstrike.py +12 -28
- cribl_control_plane/models/inputdatadogagent.py +12 -28
- cribl_control_plane/models/inputdatagen.py +6 -13
- cribl_control_plane/models/inputedgeprometheus.py +33 -64
- cribl_control_plane/models/inputelastic.py +18 -44
- cribl_control_plane/models/inputeventhub.py +10 -19
- cribl_control_plane/models/inputexec.py +8 -16
- cribl_control_plane/models/inputfile.py +8 -17
- cribl_control_plane/models/inputfirehose.py +12 -27
- cribl_control_plane/models/inputgooglepubsub.py +10 -23
- cribl_control_plane/models/inputgrafana_union.py +39 -81
- cribl_control_plane/models/inputhttp.py +12 -27
- cribl_control_plane/models/inputhttpraw.py +12 -27
- cribl_control_plane/models/inputjournalfiles.py +8 -16
- cribl_control_plane/models/inputkafka.py +18 -45
- cribl_control_plane/models/inputkinesis.py +18 -42
- cribl_control_plane/models/inputkubeevents.py +6 -13
- cribl_control_plane/models/inputkubelogs.py +10 -18
- cribl_control_plane/models/inputkubemetrics.py +10 -18
- cribl_control_plane/models/inputloki.py +14 -33
- cribl_control_plane/models/inputmetrics.py +10 -25
- cribl_control_plane/models/inputmodeldriventelemetry.py +14 -33
- cribl_control_plane/models/inputmsk.py +20 -52
- cribl_control_plane/models/inputnetflow.py +8 -15
- cribl_control_plane/models/inputoffice365mgmt.py +18 -37
- cribl_control_plane/models/inputoffice365msgtrace.py +20 -41
- cribl_control_plane/models/inputoffice365service.py +20 -41
- cribl_control_plane/models/inputopentelemetry.py +20 -42
- cribl_control_plane/models/inputprometheus.py +22 -54
- cribl_control_plane/models/inputprometheusrw.py +14 -34
- cribl_control_plane/models/inputrawudp.py +8 -15
- cribl_control_plane/models/inputs3.py +10 -23
- cribl_control_plane/models/inputs3inventory.py +12 -28
- cribl_control_plane/models/inputsecuritylake.py +12 -29
- cribl_control_plane/models/inputsnmp.py +10 -20
- cribl_control_plane/models/inputsplunk.py +16 -37
- cribl_control_plane/models/inputsplunkhec.py +14 -33
- cribl_control_plane/models/inputsplunksearch.py +18 -37
- cribl_control_plane/models/inputsqs.py +14 -31
- cribl_control_plane/models/inputsyslog_union.py +29 -53
- cribl_control_plane/models/inputsystemmetrics.py +26 -50
- cribl_control_plane/models/inputsystemstate.py +10 -18
- cribl_control_plane/models/inputtcp.py +14 -33
- cribl_control_plane/models/inputtcpjson.py +14 -33
- cribl_control_plane/models/inputwef.py +22 -45
- cribl_control_plane/models/inputwindowsmetrics.py +26 -46
- cribl_control_plane/models/inputwineventlogs.py +12 -22
- cribl_control_plane/models/inputwiz.py +12 -25
- cribl_control_plane/models/inputzscalerhec.py +14 -33
- cribl_control_plane/models/listoutputop.py +2 -2
- cribl_control_plane/models/output.py +3 -6
- cribl_control_plane/models/outputazureblob.py +20 -52
- cribl_control_plane/models/outputazuredataexplorer.py +30 -77
- cribl_control_plane/models/outputazureeventhub.py +20 -44
- cribl_control_plane/models/outputazurelogs.py +14 -37
- cribl_control_plane/models/outputclickhouse.py +22 -59
- cribl_control_plane/models/outputcloudwatch.py +12 -33
- cribl_control_plane/models/outputconfluentcloud.py +32 -75
- cribl_control_plane/models/outputcriblhttp.py +18 -46
- cribl_control_plane/models/outputcribllake.py +18 -48
- cribl_control_plane/models/outputcribltcp.py +20 -47
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
- cribl_control_plane/models/outputdatadog.py +22 -50
- cribl_control_plane/models/outputdataset.py +20 -48
- cribl_control_plane/models/outputdefault.py +2 -5
- cribl_control_plane/models/outputdevnull.py +2 -5
- cribl_control_plane/models/outputdiskspool.py +4 -9
- cribl_control_plane/models/outputdls3.py +26 -72
- cribl_control_plane/models/outputdynatracehttp.py +22 -57
- cribl_control_plane/models/outputdynatraceotlp.py +24 -59
- cribl_control_plane/models/outputelastic.py +20 -45
- cribl_control_plane/models/outputelasticcloud.py +14 -40
- cribl_control_plane/models/outputexabeam.py +12 -33
- cribl_control_plane/models/outputfilesystem.py +16 -41
- cribl_control_plane/models/outputgooglechronicle.py +18 -54
- cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
- cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
- cribl_control_plane/models/outputgooglepubsub.py +16 -39
- cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
- cribl_control_plane/models/outputgraphite.py +16 -35
- cribl_control_plane/models/outputhoneycomb.py +14 -37
- cribl_control_plane/models/outputhumiohec.py +18 -47
- cribl_control_plane/models/outputinfluxdb.py +18 -44
- cribl_control_plane/models/outputkafka.py +28 -73
- cribl_control_plane/models/outputkinesis.py +18 -44
- cribl_control_plane/models/outputloki.py +18 -43
- cribl_control_plane/models/outputminio.py +26 -69
- cribl_control_plane/models/outputmsk.py +30 -81
- cribl_control_plane/models/outputnetflow.py +2 -5
- cribl_control_plane/models/outputnewrelic.py +20 -45
- cribl_control_plane/models/outputnewrelicevents.py +16 -45
- cribl_control_plane/models/outputopentelemetry.py +28 -69
- cribl_control_plane/models/outputprometheus.py +14 -37
- cribl_control_plane/models/outputring.py +10 -21
- cribl_control_plane/models/outputrouter.py +2 -5
- cribl_control_plane/models/outputs3.py +28 -72
- cribl_control_plane/models/outputsecuritylake.py +20 -56
- cribl_control_plane/models/outputsentinel.py +20 -49
- cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
- cribl_control_plane/models/outputservicenow.py +26 -64
- cribl_control_plane/models/outputsignalfx.py +16 -39
- cribl_control_plane/models/outputsnmp.py +2 -5
- cribl_control_plane/models/outputsns.py +16 -40
- cribl_control_plane/models/outputsplunk.py +26 -64
- cribl_control_plane/models/outputsplunkhec.py +14 -37
- cribl_control_plane/models/outputsplunklb.py +36 -83
- cribl_control_plane/models/outputsqs.py +18 -45
- cribl_control_plane/models/outputstatsd.py +16 -34
- cribl_control_plane/models/outputstatsdext.py +14 -33
- cribl_control_plane/models/outputsumologic.py +14 -37
- cribl_control_plane/models/outputsyslog.py +26 -60
- cribl_control_plane/models/outputtcpjson.py +22 -54
- cribl_control_plane/models/outputwavefront.py +14 -37
- cribl_control_plane/models/outputwebhook.py +24 -60
- cribl_control_plane/models/outputxsiam.py +16 -37
- cribl_control_plane/models/updateoutputbyidop.py +4 -4
- cribl_control_plane/sdk.py +3 -5
- cribl_control_plane/sources.py +8 -10
- {cribl_control_plane-0.0.15.dist-info → cribl_control_plane-0.0.17.dist-info}/METADATA +13 -13
- cribl_control_plane-0.0.17.dist-info/RECORD +215 -0
- cribl_control_plane-0.0.15.dist-info/RECORD +0 -215
- {cribl_control_plane-0.0.15.dist-info → cribl_control_plane-0.0.17.dist-info}/WHEEL +0 -0
|
@@ -1,21 +1,18 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
|
-
from cribl_control_plane.utils import validate_open_enum
|
|
7
5
|
from enum import Enum
|
|
8
6
|
import pydantic
|
|
9
|
-
from pydantic.functional_validators import PlainValidator
|
|
10
7
|
from typing import List, Optional
|
|
11
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
9
|
|
|
13
10
|
|
|
14
|
-
class OutputWebhookType(str, Enum
|
|
11
|
+
class OutputWebhookType(str, Enum):
|
|
15
12
|
WEBHOOK = "webhook"
|
|
16
13
|
|
|
17
14
|
|
|
18
|
-
class OutputWebhookMethod(str, Enum
|
|
15
|
+
class OutputWebhookMethod(str, Enum):
|
|
19
16
|
r"""The method to use when sending events"""
|
|
20
17
|
|
|
21
18
|
POST = "POST"
|
|
@@ -23,7 +20,7 @@ class OutputWebhookMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
23
20
|
PATCH = "PATCH"
|
|
24
21
|
|
|
25
22
|
|
|
26
|
-
class OutputWebhookFormat(str, Enum
|
|
23
|
+
class OutputWebhookFormat(str, Enum):
|
|
27
24
|
r"""How to format events before sending out"""
|
|
28
25
|
|
|
29
26
|
NDJSON = "ndjson"
|
|
@@ -43,7 +40,7 @@ class OutputWebhookExtraHTTPHeader(BaseModel):
|
|
|
43
40
|
name: Optional[str] = None
|
|
44
41
|
|
|
45
42
|
|
|
46
|
-
class OutputWebhookFailedRequestLoggingMode(str, Enum
|
|
43
|
+
class OutputWebhookFailedRequestLoggingMode(str, Enum):
|
|
47
44
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
48
45
|
|
|
49
46
|
PAYLOAD = "payload"
|
|
@@ -105,7 +102,7 @@ class OutputWebhookTimeoutRetrySettings(BaseModel):
|
|
|
105
102
|
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)."""
|
|
106
103
|
|
|
107
104
|
|
|
108
|
-
class OutputWebhookBackpressureBehavior(str, Enum
|
|
105
|
+
class OutputWebhookBackpressureBehavior(str, Enum):
|
|
109
106
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
110
107
|
|
|
111
108
|
BLOCK = "block"
|
|
@@ -113,7 +110,7 @@ class OutputWebhookBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta)
|
|
|
113
110
|
QUEUE = "queue"
|
|
114
111
|
|
|
115
112
|
|
|
116
|
-
class OutputWebhookAuthenticationType(str, Enum
|
|
113
|
+
class OutputWebhookAuthenticationType(str, Enum):
|
|
117
114
|
r"""Authentication method to use for the HTTP request"""
|
|
118
115
|
|
|
119
116
|
NONE = "none"
|
|
@@ -124,14 +121,14 @@ class OutputWebhookAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
124
121
|
OAUTH = "oauth"
|
|
125
122
|
|
|
126
123
|
|
|
127
|
-
class OutputWebhookMinimumTLSVersion(str, Enum
|
|
124
|
+
class OutputWebhookMinimumTLSVersion(str, Enum):
|
|
128
125
|
TL_SV1 = "TLSv1"
|
|
129
126
|
TL_SV1_1 = "TLSv1.1"
|
|
130
127
|
TL_SV1_2 = "TLSv1.2"
|
|
131
128
|
TL_SV1_3 = "TLSv1.3"
|
|
132
129
|
|
|
133
130
|
|
|
134
|
-
class OutputWebhookMaximumTLSVersion(str, Enum
|
|
131
|
+
class OutputWebhookMaximumTLSVersion(str, Enum):
|
|
135
132
|
TL_SV1 = "TLSv1"
|
|
136
133
|
TL_SV1_1 = "TLSv1.1"
|
|
137
134
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -180,37 +177,29 @@ class OutputWebhookTLSSettingsClientSide(BaseModel):
|
|
|
180
177
|
r"""Passphrase to use to decrypt private key"""
|
|
181
178
|
|
|
182
179
|
min_version: Annotated[
|
|
183
|
-
|
|
184
|
-
Optional[OutputWebhookMinimumTLSVersion],
|
|
185
|
-
PlainValidator(validate_open_enum(False)),
|
|
186
|
-
],
|
|
187
|
-
pydantic.Field(alias="minVersion"),
|
|
180
|
+
Optional[OutputWebhookMinimumTLSVersion], pydantic.Field(alias="minVersion")
|
|
188
181
|
] = None
|
|
189
182
|
|
|
190
183
|
max_version: Annotated[
|
|
191
|
-
|
|
192
|
-
Optional[OutputWebhookMaximumTLSVersion],
|
|
193
|
-
PlainValidator(validate_open_enum(False)),
|
|
194
|
-
],
|
|
195
|
-
pydantic.Field(alias="maxVersion"),
|
|
184
|
+
Optional[OutputWebhookMaximumTLSVersion], pydantic.Field(alias="maxVersion")
|
|
196
185
|
] = None
|
|
197
186
|
|
|
198
187
|
|
|
199
|
-
class OutputWebhookCompression(str, Enum
|
|
188
|
+
class OutputWebhookCompression(str, Enum):
|
|
200
189
|
r"""Codec to use to compress the persisted data"""
|
|
201
190
|
|
|
202
191
|
NONE = "none"
|
|
203
192
|
GZIP = "gzip"
|
|
204
193
|
|
|
205
194
|
|
|
206
|
-
class OutputWebhookQueueFullBehavior(str, Enum
|
|
195
|
+
class OutputWebhookQueueFullBehavior(str, Enum):
|
|
207
196
|
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."""
|
|
208
197
|
|
|
209
198
|
BLOCK = "block"
|
|
210
199
|
DROP = "drop"
|
|
211
200
|
|
|
212
201
|
|
|
213
|
-
class OutputWebhookMode(str, Enum
|
|
202
|
+
class OutputWebhookMode(str, Enum):
|
|
214
203
|
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."""
|
|
215
204
|
|
|
216
205
|
ERROR = "error"
|
|
@@ -399,7 +388,7 @@ class OutputWebhook(BaseModel):
|
|
|
399
388
|
id: str
|
|
400
389
|
r"""Unique ID for this output"""
|
|
401
390
|
|
|
402
|
-
type:
|
|
391
|
+
type: OutputWebhookType
|
|
403
392
|
|
|
404
393
|
pipeline: Optional[str] = None
|
|
405
394
|
r"""Pipeline to process data before sending out to this output"""
|
|
@@ -415,16 +404,11 @@ class OutputWebhook(BaseModel):
|
|
|
415
404
|
streamtags: Optional[List[str]] = None
|
|
416
405
|
r"""Tags for filtering and grouping in @{product}"""
|
|
417
406
|
|
|
418
|
-
method:
|
|
419
|
-
Optional[OutputWebhookMethod], PlainValidator(validate_open_enum(False))
|
|
420
|
-
] = OutputWebhookMethod.POST
|
|
407
|
+
method: Optional[OutputWebhookMethod] = OutputWebhookMethod.POST
|
|
421
408
|
r"""The method to use when sending events"""
|
|
422
409
|
|
|
423
410
|
format_: Annotated[
|
|
424
|
-
|
|
425
|
-
Optional[OutputWebhookFormat], PlainValidator(validate_open_enum(False))
|
|
426
|
-
],
|
|
427
|
-
pydantic.Field(alias="format"),
|
|
411
|
+
Optional[OutputWebhookFormat], pydantic.Field(alias="format")
|
|
428
412
|
] = OutputWebhookFormat.NDJSON
|
|
429
413
|
r"""How to format events before sending out"""
|
|
430
414
|
|
|
@@ -475,10 +459,7 @@ class OutputWebhook(BaseModel):
|
|
|
475
459
|
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."""
|
|
476
460
|
|
|
477
461
|
failed_request_logging_mode: Annotated[
|
|
478
|
-
|
|
479
|
-
Optional[OutputWebhookFailedRequestLoggingMode],
|
|
480
|
-
PlainValidator(validate_open_enum(False)),
|
|
481
|
-
],
|
|
462
|
+
Optional[OutputWebhookFailedRequestLoggingMode],
|
|
482
463
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
483
464
|
] = OutputWebhookFailedRequestLoggingMode.NONE
|
|
484
465
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -505,20 +486,13 @@ class OutputWebhook(BaseModel):
|
|
|
505
486
|
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."""
|
|
506
487
|
|
|
507
488
|
on_backpressure: Annotated[
|
|
508
|
-
|
|
509
|
-
Optional[OutputWebhookBackpressureBehavior],
|
|
510
|
-
PlainValidator(validate_open_enum(False)),
|
|
511
|
-
],
|
|
489
|
+
Optional[OutputWebhookBackpressureBehavior],
|
|
512
490
|
pydantic.Field(alias="onBackpressure"),
|
|
513
491
|
] = OutputWebhookBackpressureBehavior.BLOCK
|
|
514
492
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
515
493
|
|
|
516
494
|
auth_type: Annotated[
|
|
517
|
-
|
|
518
|
-
Optional[OutputWebhookAuthenticationType],
|
|
519
|
-
PlainValidator(validate_open_enum(False)),
|
|
520
|
-
],
|
|
521
|
-
pydantic.Field(alias="authType"),
|
|
495
|
+
Optional[OutputWebhookAuthenticationType], pydantic.Field(alias="authType")
|
|
522
496
|
] = OutputWebhookAuthenticationType.NONE
|
|
523
497
|
r"""Authentication method to use for the HTTP request"""
|
|
524
498
|
|
|
@@ -590,29 +564,19 @@ class OutputWebhook(BaseModel):
|
|
|
590
564
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
591
565
|
|
|
592
566
|
pq_compress: Annotated[
|
|
593
|
-
|
|
594
|
-
Optional[OutputWebhookCompression],
|
|
595
|
-
PlainValidator(validate_open_enum(False)),
|
|
596
|
-
],
|
|
597
|
-
pydantic.Field(alias="pqCompress"),
|
|
567
|
+
Optional[OutputWebhookCompression], pydantic.Field(alias="pqCompress")
|
|
598
568
|
] = OutputWebhookCompression.NONE
|
|
599
569
|
r"""Codec to use to compress the persisted data"""
|
|
600
570
|
|
|
601
571
|
pq_on_backpressure: Annotated[
|
|
602
|
-
|
|
603
|
-
Optional[OutputWebhookQueueFullBehavior],
|
|
604
|
-
PlainValidator(validate_open_enum(False)),
|
|
605
|
-
],
|
|
572
|
+
Optional[OutputWebhookQueueFullBehavior],
|
|
606
573
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
607
574
|
] = OutputWebhookQueueFullBehavior.BLOCK
|
|
608
575
|
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."""
|
|
609
576
|
|
|
610
|
-
pq_mode: Annotated[
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
],
|
|
614
|
-
pydantic.Field(alias="pqMode"),
|
|
615
|
-
] = OutputWebhookMode.ERROR
|
|
577
|
+
pq_mode: Annotated[Optional[OutputWebhookMode], pydantic.Field(alias="pqMode")] = (
|
|
578
|
+
OutputWebhookMode.ERROR
|
|
579
|
+
)
|
|
616
580
|
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."""
|
|
617
581
|
|
|
618
582
|
pq_controls: Annotated[
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
|
-
from cribl_control_plane.utils import validate_open_enum
|
|
7
5
|
from enum import Enum
|
|
8
6
|
import pydantic
|
|
9
|
-
from pydantic.functional_validators import PlainValidator
|
|
10
7
|
from typing import Any, List, Optional
|
|
11
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
9
|
|
|
13
10
|
|
|
14
|
-
class OutputXsiamType(str, Enum
|
|
11
|
+
class OutputXsiamType(str, Enum):
|
|
15
12
|
XSIAM = "xsiam"
|
|
16
13
|
|
|
17
14
|
|
|
@@ -26,7 +23,7 @@ class OutputXsiamExtraHTTPHeader(BaseModel):
|
|
|
26
23
|
name: Optional[str] = None
|
|
27
24
|
|
|
28
25
|
|
|
29
|
-
class OutputXsiamFailedRequestLoggingMode(str, Enum
|
|
26
|
+
class OutputXsiamFailedRequestLoggingMode(str, Enum):
|
|
30
27
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
31
28
|
|
|
32
29
|
PAYLOAD = "payload"
|
|
@@ -34,7 +31,7 @@ class OutputXsiamFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMet
|
|
|
34
31
|
NONE = "none"
|
|
35
32
|
|
|
36
33
|
|
|
37
|
-
class OutputXsiamAuthenticationMethod(str, Enum
|
|
34
|
+
class OutputXsiamAuthenticationMethod(str, Enum):
|
|
38
35
|
r"""Enter a token directly, or provide a secret referencing a token"""
|
|
39
36
|
|
|
40
37
|
TOKEN = "token"
|
|
@@ -95,7 +92,7 @@ class OutputXsiamTimeoutRetrySettings(BaseModel):
|
|
|
95
92
|
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)."""
|
|
96
93
|
|
|
97
94
|
|
|
98
|
-
class OutputXsiamBackpressureBehavior(str, Enum
|
|
95
|
+
class OutputXsiamBackpressureBehavior(str, Enum):
|
|
99
96
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
100
97
|
|
|
101
98
|
BLOCK = "block"
|
|
@@ -116,21 +113,21 @@ class OutputXsiamURL(BaseModel):
|
|
|
116
113
|
r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
|
|
117
114
|
|
|
118
115
|
|
|
119
|
-
class OutputXsiamCompression(str, Enum
|
|
116
|
+
class OutputXsiamCompression(str, Enum):
|
|
120
117
|
r"""Codec to use to compress the persisted data"""
|
|
121
118
|
|
|
122
119
|
NONE = "none"
|
|
123
120
|
GZIP = "gzip"
|
|
124
121
|
|
|
125
122
|
|
|
126
|
-
class OutputXsiamQueueFullBehavior(str, Enum
|
|
123
|
+
class OutputXsiamQueueFullBehavior(str, Enum):
|
|
127
124
|
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."""
|
|
128
125
|
|
|
129
126
|
BLOCK = "block"
|
|
130
127
|
DROP = "drop"
|
|
131
128
|
|
|
132
129
|
|
|
133
|
-
class OutputXsiamMode(str, Enum
|
|
130
|
+
class OutputXsiamMode(str, Enum):
|
|
134
131
|
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."""
|
|
135
132
|
|
|
136
133
|
ERROR = "error"
|
|
@@ -229,7 +226,7 @@ class OutputXsiam(BaseModel):
|
|
|
229
226
|
id: str
|
|
230
227
|
r"""Unique ID for this output"""
|
|
231
228
|
|
|
232
|
-
type:
|
|
229
|
+
type: OutputXsiamType
|
|
233
230
|
|
|
234
231
|
pipeline: Optional[str] = None
|
|
235
232
|
r"""Pipeline to process data before sending out to this output"""
|
|
@@ -286,10 +283,7 @@ class OutputXsiam(BaseModel):
|
|
|
286
283
|
r"""Headers to add to all events"""
|
|
287
284
|
|
|
288
285
|
failed_request_logging_mode: Annotated[
|
|
289
|
-
|
|
290
|
-
Optional[OutputXsiamFailedRequestLoggingMode],
|
|
291
|
-
PlainValidator(validate_open_enum(False)),
|
|
292
|
-
],
|
|
286
|
+
Optional[OutputXsiamFailedRequestLoggingMode],
|
|
293
287
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
294
288
|
] = OutputXsiamFailedRequestLoggingMode.NONE
|
|
295
289
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -300,11 +294,7 @@ class OutputXsiam(BaseModel):
|
|
|
300
294
|
r"""List of headers that are safe to log in plain text"""
|
|
301
295
|
|
|
302
296
|
auth_type: Annotated[
|
|
303
|
-
|
|
304
|
-
Optional[OutputXsiamAuthenticationMethod],
|
|
305
|
-
PlainValidator(validate_open_enum(False)),
|
|
306
|
-
],
|
|
307
|
-
pydantic.Field(alias="authType"),
|
|
297
|
+
Optional[OutputXsiamAuthenticationMethod], pydantic.Field(alias="authType")
|
|
308
298
|
] = OutputXsiamAuthenticationMethod.TOKEN
|
|
309
299
|
r"""Enter a token directly, or provide a secret referencing a token"""
|
|
310
300
|
|
|
@@ -330,10 +320,7 @@ class OutputXsiam(BaseModel):
|
|
|
330
320
|
r"""Maximum number of requests to limit to per second"""
|
|
331
321
|
|
|
332
322
|
on_backpressure: Annotated[
|
|
333
|
-
|
|
334
|
-
Optional[OutputXsiamBackpressureBehavior],
|
|
335
|
-
PlainValidator(validate_open_enum(False)),
|
|
336
|
-
],
|
|
323
|
+
Optional[OutputXsiamBackpressureBehavior],
|
|
337
324
|
pydantic.Field(alias="onBackpressure"),
|
|
338
325
|
] = OutputXsiamBackpressureBehavior.BLOCK
|
|
339
326
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -388,26 +375,18 @@ class OutputXsiam(BaseModel):
|
|
|
388
375
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
389
376
|
|
|
390
377
|
pq_compress: Annotated[
|
|
391
|
-
|
|
392
|
-
Optional[OutputXsiamCompression], PlainValidator(validate_open_enum(False))
|
|
393
|
-
],
|
|
394
|
-
pydantic.Field(alias="pqCompress"),
|
|
378
|
+
Optional[OutputXsiamCompression], pydantic.Field(alias="pqCompress")
|
|
395
379
|
] = OutputXsiamCompression.NONE
|
|
396
380
|
r"""Codec to use to compress the persisted data"""
|
|
397
381
|
|
|
398
382
|
pq_on_backpressure: Annotated[
|
|
399
|
-
|
|
400
|
-
Optional[OutputXsiamQueueFullBehavior],
|
|
401
|
-
PlainValidator(validate_open_enum(False)),
|
|
402
|
-
],
|
|
403
|
-
pydantic.Field(alias="pqOnBackpressure"),
|
|
383
|
+
Optional[OutputXsiamQueueFullBehavior], pydantic.Field(alias="pqOnBackpressure")
|
|
404
384
|
] = OutputXsiamQueueFullBehavior.BLOCK
|
|
405
385
|
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."""
|
|
406
386
|
|
|
407
|
-
pq_mode: Annotated[
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
] = OutputXsiamMode.ERROR
|
|
387
|
+
pq_mode: Annotated[Optional[OutputXsiamMode], pydantic.Field(alias="pqMode")] = (
|
|
388
|
+
OutputXsiamMode.ERROR
|
|
389
|
+
)
|
|
411
390
|
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."""
|
|
412
391
|
|
|
413
392
|
pq_controls: Annotated[
|
|
@@ -12,7 +12,7 @@ class UpdateOutputByIDRequestTypedDict(TypedDict):
|
|
|
12
12
|
id: str
|
|
13
13
|
r"""Unique ID to PATCH"""
|
|
14
14
|
output: OutputTypedDict
|
|
15
|
-
r"""
|
|
15
|
+
r"""Destination object to be updated"""
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
class UpdateOutputByIDRequest(BaseModel):
|
|
@@ -24,11 +24,11 @@ class UpdateOutputByIDRequest(BaseModel):
|
|
|
24
24
|
output: Annotated[
|
|
25
25
|
Output, FieldMetadata(request=RequestMetadata(media_type="application/json"))
|
|
26
26
|
]
|
|
27
|
-
r"""
|
|
27
|
+
r"""Destination object to be updated"""
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
class UpdateOutputByIDResponseTypedDict(TypedDict):
|
|
31
|
-
r"""a list of
|
|
31
|
+
r"""a list of Destination objects"""
|
|
32
32
|
|
|
33
33
|
count: NotRequired[int]
|
|
34
34
|
r"""number of items present in the items array"""
|
|
@@ -36,7 +36,7 @@ class UpdateOutputByIDResponseTypedDict(TypedDict):
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
class UpdateOutputByIDResponse(BaseModel):
|
|
39
|
-
r"""a list of
|
|
39
|
+
r"""a list of Destination objects"""
|
|
40
40
|
|
|
41
41
|
count: Optional[int] = None
|
|
42
42
|
r"""number of items present in the items array"""
|
cribl_control_plane/sdk.py
CHANGED
|
@@ -15,8 +15,8 @@ import weakref
|
|
|
15
15
|
|
|
16
16
|
if TYPE_CHECKING:
|
|
17
17
|
from cribl_control_plane.auth_sdk import AuthSDK
|
|
18
|
+
from cribl_control_plane.destinations import Destinations
|
|
18
19
|
from cribl_control_plane.health import Health
|
|
19
|
-
from cribl_control_plane.outputs import Outputs
|
|
20
20
|
from cribl_control_plane.pipelines import Pipelines
|
|
21
21
|
from cribl_control_plane.routes_sdk import RoutesSDK
|
|
22
22
|
from cribl_control_plane.sources import Sources
|
|
@@ -26,9 +26,7 @@ class CriblControlPlane(BaseSDK):
|
|
|
26
26
|
r"""Cribl API Reference: This API Reference lists available REST endpoints, along with their supported operations for accessing, creating, updating, or deleting resources. See our complementary product documentation at [docs.cribl.io](http://docs.cribl.io)."""
|
|
27
27
|
|
|
28
28
|
sources: "Sources"
|
|
29
|
-
|
|
30
|
-
outputs: "Outputs"
|
|
31
|
-
r"""Actions related to outputs"""
|
|
29
|
+
destinations: "Destinations"
|
|
32
30
|
pipelines: "Pipelines"
|
|
33
31
|
r"""Actions related to Pipelines"""
|
|
34
32
|
routes: "RoutesSDK"
|
|
@@ -39,7 +37,7 @@ class CriblControlPlane(BaseSDK):
|
|
|
39
37
|
r"""Actions related to REST server health"""
|
|
40
38
|
_sub_sdk_map = {
|
|
41
39
|
"sources": ("cribl_control_plane.sources", "Sources"),
|
|
42
|
-
"
|
|
40
|
+
"destinations": ("cribl_control_plane.destinations", "Destinations"),
|
|
43
41
|
"pipelines": ("cribl_control_plane.pipelines", "Pipelines"),
|
|
44
42
|
"routes": ("cribl_control_plane.routes_sdk", "RoutesSDK"),
|
|
45
43
|
"auth": ("cribl_control_plane.auth_sdk", "AuthSDK"),
|
cribl_control_plane/sources.py
CHANGED
|
@@ -10,8 +10,6 @@ from typing import Any, List, Mapping, Optional, Union, cast
|
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class Sources(BaseSDK):
|
|
13
|
-
r"""Actions related to Sources"""
|
|
14
|
-
|
|
15
13
|
def list_source(
|
|
16
14
|
self,
|
|
17
15
|
*,
|
|
@@ -175,7 +173,7 @@ class Sources(BaseSDK):
|
|
|
175
173
|
def create_source(
|
|
176
174
|
self,
|
|
177
175
|
*,
|
|
178
|
-
request: Union[models.
|
|
176
|
+
request: Union[models.CreateInputRequest, models.CreateInputRequestTypedDict],
|
|
179
177
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
180
178
|
server_url: Optional[str] = None,
|
|
181
179
|
timeout_ms: Optional[int] = None,
|
|
@@ -202,8 +200,8 @@ class Sources(BaseSDK):
|
|
|
202
200
|
base_url = self._get_url(base_url, url_variables)
|
|
203
201
|
|
|
204
202
|
if not isinstance(request, BaseModel):
|
|
205
|
-
request = utils.unmarshal(request, models.
|
|
206
|
-
request = cast(models.
|
|
203
|
+
request = utils.unmarshal(request, models.CreateInputRequest)
|
|
204
|
+
request = cast(models.CreateInputRequest, request)
|
|
207
205
|
|
|
208
206
|
req = self._build_request(
|
|
209
207
|
method="POST",
|
|
@@ -219,7 +217,7 @@ class Sources(BaseSDK):
|
|
|
219
217
|
http_headers=http_headers,
|
|
220
218
|
security=self.sdk_configuration.security,
|
|
221
219
|
get_serialized_body=lambda: utils.serialize_request_body(
|
|
222
|
-
request, False, False, "json", models.
|
|
220
|
+
request, False, False, "json", models.CreateInputRequest
|
|
223
221
|
),
|
|
224
222
|
timeout_ms=timeout_ms,
|
|
225
223
|
)
|
|
@@ -265,7 +263,7 @@ class Sources(BaseSDK):
|
|
|
265
263
|
async def create_source_async(
|
|
266
264
|
self,
|
|
267
265
|
*,
|
|
268
|
-
request: Union[models.
|
|
266
|
+
request: Union[models.CreateInputRequest, models.CreateInputRequestTypedDict],
|
|
269
267
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
270
268
|
server_url: Optional[str] = None,
|
|
271
269
|
timeout_ms: Optional[int] = None,
|
|
@@ -292,8 +290,8 @@ class Sources(BaseSDK):
|
|
|
292
290
|
base_url = self._get_url(base_url, url_variables)
|
|
293
291
|
|
|
294
292
|
if not isinstance(request, BaseModel):
|
|
295
|
-
request = utils.unmarshal(request, models.
|
|
296
|
-
request = cast(models.
|
|
293
|
+
request = utils.unmarshal(request, models.CreateInputRequest)
|
|
294
|
+
request = cast(models.CreateInputRequest, request)
|
|
297
295
|
|
|
298
296
|
req = self._build_request_async(
|
|
299
297
|
method="POST",
|
|
@@ -309,7 +307,7 @@ class Sources(BaseSDK):
|
|
|
309
307
|
http_headers=http_headers,
|
|
310
308
|
security=self.sdk_configuration.security,
|
|
311
309
|
get_serialized_body=lambda: utils.serialize_request_body(
|
|
312
|
-
request, False, False, "json", models.
|
|
310
|
+
request, False, False, "json", models.CreateInputRequest
|
|
313
311
|
),
|
|
314
312
|
timeout_ms=timeout_ms,
|
|
315
313
|
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: cribl-control-plane
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.17
|
|
4
4
|
Summary: Python Client SDK Generated by Speakeasy.
|
|
5
5
|
Author: Speakeasy
|
|
6
6
|
Requires-Python: >=3.9.2
|
|
@@ -202,22 +202,22 @@ with CriblControlPlane(
|
|
|
202
202
|
* [login](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/authsdk/README.md#login) - Log in and obtain Auth token
|
|
203
203
|
|
|
204
204
|
|
|
205
|
+
### [destinations](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md)
|
|
206
|
+
|
|
207
|
+
* [list_destination](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#list_destination) - Get a list of Destination objects
|
|
208
|
+
* [create_destination](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#create_destination) - Create Destination
|
|
209
|
+
* [get_destination_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#get_destination_by_id) - Get Destination by ID
|
|
210
|
+
* [update_destination_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#update_destination_by_id) - Update Destination
|
|
211
|
+
* [delete_destination_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#delete_destination_by_id) - Delete Destination
|
|
212
|
+
* [delete_destination_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#delete_destination_pq_by_id) - Clears destination persistent queue
|
|
213
|
+
* [get_destination_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#get_destination_pq_by_id) - Retrieves status of latest clear PQ job for a destination
|
|
214
|
+
* [get_destination_samples_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#get_destination_samples_by_id) - Retrieve samples data for the specified destination. Used to get sample data for the test action.
|
|
215
|
+
* [create_destination_test_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#create_destination_test_by_id) - Send sample data to a destination to validate configuration or test connectivity
|
|
216
|
+
|
|
205
217
|
### [health](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/health/README.md)
|
|
206
218
|
|
|
207
219
|
* [get_health_info](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/health/README.md#get_health_info) - Provides health info for REST server
|
|
208
220
|
|
|
209
|
-
### [outputs](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md)
|
|
210
|
-
|
|
211
|
-
* [list_output](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#list_output) - Get a list of Output objects
|
|
212
|
-
* [create_output](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#create_output) - Create Output
|
|
213
|
-
* [get_output_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#get_output_by_id) - Get Output by ID
|
|
214
|
-
* [update_output_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#update_output_by_id) - Update Output
|
|
215
|
-
* [delete_output_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#delete_output_by_id) - Delete Output
|
|
216
|
-
* [delete_output_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#delete_output_pq_by_id) - Clears destination persistent queue
|
|
217
|
-
* [get_output_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#get_output_pq_by_id) - Retrieves status of latest clear PQ job for an output
|
|
218
|
-
* [get_output_samples_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#get_output_samples_by_id) - Retrieve samples data for the specified output. Used to get sample data for the test action.
|
|
219
|
-
* [create_output_test_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#create_output_test_by_id) - Send sample data to an output to validate configuration or test connectivity
|
|
220
|
-
|
|
221
221
|
### [pipelines](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/pipelines/README.md)
|
|
222
222
|
|
|
223
223
|
* [list_pipeline](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/pipelines/README.md#list_pipeline) - Get a list of Pipeline objects
|