cribl-control-plane 0.0.49__py3-none-any.whl → 0.1.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 -6
- cribl_control_plane/errors/healthstatus_error.py +8 -2
- cribl_control_plane/health.py +6 -2
- cribl_control_plane/models/__init__.py +18 -3
- cribl_control_plane/models/appmode.py +2 -1
- cribl_control_plane/models/cacheconnection.py +10 -2
- cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
- cribl_control_plane/models/cloudprovider.py +2 -1
- cribl_control_plane/models/configgroup.py +7 -2
- cribl_control_plane/models/configgroupcloud.py +6 -2
- cribl_control_plane/models/createconfiggroupbyproductop.py +8 -2
- cribl_control_plane/models/createinputhectokenbyidop.py +6 -5
- cribl_control_plane/models/createversionpushop.py +5 -5
- cribl_control_plane/models/cribllakedataset.py +8 -2
- cribl_control_plane/models/datasetmetadata.py +8 -2
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +7 -2
- cribl_control_plane/models/error.py +16 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +4 -2
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +4 -2
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +3 -1
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +7 -2
- cribl_control_plane/models/gethealthinfoop.py +17 -0
- cribl_control_plane/models/getsummaryop.py +7 -2
- cribl_control_plane/models/getversionshowop.py +6 -5
- cribl_control_plane/models/gitshowresult.py +19 -0
- cribl_control_plane/models/hbcriblinfo.py +6 -1
- cribl_control_plane/models/healthstatus.py +7 -4
- cribl_control_plane/models/inputappscope.py +34 -14
- cribl_control_plane/models/inputazureblob.py +17 -6
- cribl_control_plane/models/inputcollection.py +11 -4
- cribl_control_plane/models/inputconfluentcloud.py +47 -20
- cribl_control_plane/models/inputcribl.py +11 -4
- cribl_control_plane/models/inputcriblhttp.py +23 -8
- cribl_control_plane/models/inputcribllakehttp.py +22 -10
- cribl_control_plane/models/inputcriblmetrics.py +12 -4
- cribl_control_plane/models/inputcribltcp.py +23 -8
- cribl_control_plane/models/inputcrowdstrike.py +26 -10
- cribl_control_plane/models/inputdatadogagent.py +24 -8
- cribl_control_plane/models/inputdatagen.py +11 -4
- cribl_control_plane/models/inputedgeprometheus.py +58 -24
- cribl_control_plane/models/inputelastic.py +40 -14
- cribl_control_plane/models/inputeventhub.py +15 -6
- cribl_control_plane/models/inputexec.py +14 -6
- cribl_control_plane/models/inputfile.py +15 -6
- cribl_control_plane/models/inputfirehose.py +23 -8
- cribl_control_plane/models/inputgooglepubsub.py +19 -6
- cribl_control_plane/models/inputgrafana.py +67 -24
- cribl_control_plane/models/inputhttp.py +23 -8
- cribl_control_plane/models/inputhttpraw.py +23 -8
- cribl_control_plane/models/inputjournalfiles.py +12 -4
- cribl_control_plane/models/inputkafka.py +46 -16
- cribl_control_plane/models/inputkinesis.py +38 -14
- cribl_control_plane/models/inputkubeevents.py +11 -4
- cribl_control_plane/models/inputkubelogs.py +16 -8
- cribl_control_plane/models/inputkubemetrics.py +16 -8
- cribl_control_plane/models/inputloki.py +29 -10
- cribl_control_plane/models/inputmetrics.py +23 -8
- cribl_control_plane/models/inputmodeldriventelemetry.py +32 -10
- cribl_control_plane/models/inputmsk.py +53 -18
- cribl_control_plane/models/inputnetflow.py +11 -4
- cribl_control_plane/models/inputoffice365mgmt.py +33 -14
- cribl_control_plane/models/inputoffice365msgtrace.py +35 -16
- cribl_control_plane/models/inputoffice365service.py +35 -16
- cribl_control_plane/models/inputopentelemetry.py +38 -16
- cribl_control_plane/models/inputprometheus.py +50 -18
- cribl_control_plane/models/inputprometheusrw.py +30 -10
- cribl_control_plane/models/inputrawudp.py +11 -4
- cribl_control_plane/models/inputs3.py +21 -8
- cribl_control_plane/models/inputs3inventory.py +26 -10
- cribl_control_plane/models/inputsecuritylake.py +27 -10
- cribl_control_plane/models/inputsnmp.py +16 -6
- cribl_control_plane/models/inputsplunk.py +33 -12
- cribl_control_plane/models/inputsplunkhec.py +29 -10
- cribl_control_plane/models/inputsplunksearch.py +33 -14
- cribl_control_plane/models/inputsqs.py +27 -10
- cribl_control_plane/models/inputsyslog.py +43 -16
- cribl_control_plane/models/inputsystemmetrics.py +48 -24
- cribl_control_plane/models/inputsystemstate.py +16 -8
- cribl_control_plane/models/inputtcp.py +29 -10
- cribl_control_plane/models/inputtcpjson.py +29 -10
- cribl_control_plane/models/inputwef.py +37 -14
- cribl_control_plane/models/inputwindowsmetrics.py +44 -24
- cribl_control_plane/models/inputwineventlogs.py +20 -10
- cribl_control_plane/models/inputwiz.py +21 -8
- cribl_control_plane/models/inputwizwebhook.py +23 -8
- cribl_control_plane/models/inputzscalerhec.py +29 -10
- cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
- cribl_control_plane/models/listconfiggroupbyproductop.py +3 -1
- cribl_control_plane/models/masterworkerentry.py +7 -2
- cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
- cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeupgradestate.py +2 -1
- cribl_control_plane/models/nodeupgradestatus.py +13 -5
- cribl_control_plane/models/outputazureblob.py +48 -18
- cribl_control_plane/models/outputazuredataexplorer.py +73 -28
- cribl_control_plane/models/outputazureeventhub.py +40 -18
- cribl_control_plane/models/outputazurelogs.py +35 -12
- cribl_control_plane/models/outputclickhouse.py +55 -20
- cribl_control_plane/models/outputcloudwatch.py +29 -10
- cribl_control_plane/models/outputconfluentcloud.py +77 -32
- cribl_control_plane/models/outputcriblhttp.py +44 -16
- cribl_control_plane/models/outputcribllake.py +46 -16
- cribl_control_plane/models/outputcribltcp.py +45 -18
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +49 -14
- cribl_control_plane/models/outputdatadog.py +48 -20
- cribl_control_plane/models/outputdataset.py +46 -18
- cribl_control_plane/models/outputdiskspool.py +7 -2
- cribl_control_plane/models/outputdls3.py +68 -24
- cribl_control_plane/models/outputdynatracehttp.py +53 -20
- cribl_control_plane/models/outputdynatraceotlp.py +55 -22
- cribl_control_plane/models/outputelastic.py +43 -18
- cribl_control_plane/models/outputelasticcloud.py +36 -12
- cribl_control_plane/models/outputexabeam.py +29 -10
- cribl_control_plane/models/outputfilesystem.py +39 -14
- cribl_control_plane/models/outputgooglechronicle.py +50 -16
- cribl_control_plane/models/outputgooglecloudlogging.py +41 -14
- cribl_control_plane/models/outputgooglecloudstorage.py +66 -24
- cribl_control_plane/models/outputgooglepubsub.py +31 -10
- cribl_control_plane/models/outputgrafanacloud.py +97 -32
- cribl_control_plane/models/outputgraphite.py +31 -14
- cribl_control_plane/models/outputhoneycomb.py +35 -12
- cribl_control_plane/models/outputhumiohec.py +43 -16
- cribl_control_plane/models/outputinfluxdb.py +42 -16
- cribl_control_plane/models/outputkafka.py +74 -28
- cribl_control_plane/models/outputkinesis.py +40 -16
- cribl_control_plane/models/outputloki.py +41 -16
- cribl_control_plane/models/outputminio.py +65 -24
- cribl_control_plane/models/outputmsk.py +82 -30
- cribl_control_plane/models/outputnewrelic.py +43 -18
- cribl_control_plane/models/outputnewrelicevents.py +41 -14
- cribl_control_plane/models/outputopentelemetry.py +67 -26
- cribl_control_plane/models/outputprometheus.py +35 -12
- cribl_control_plane/models/outputring.py +19 -8
- cribl_control_plane/models/outputs3.py +68 -26
- cribl_control_plane/models/outputsecuritylake.py +52 -18
- cribl_control_plane/models/outputsentinel.py +45 -18
- cribl_control_plane/models/outputsentineloneaisiem.py +50 -18
- cribl_control_plane/models/outputservicenow.py +60 -24
- cribl_control_plane/models/outputsignalfx.py +37 -14
- cribl_control_plane/models/outputsns.py +36 -14
- cribl_control_plane/models/outputsplunk.py +60 -24
- cribl_control_plane/models/outputsplunkhec.py +35 -12
- cribl_control_plane/models/outputsplunklb.py +77 -30
- cribl_control_plane/models/outputsqs.py +41 -16
- cribl_control_plane/models/outputstatsd.py +30 -14
- cribl_control_plane/models/outputstatsdext.py +29 -12
- cribl_control_plane/models/outputsumologic.py +35 -12
- cribl_control_plane/models/outputsyslog.py +58 -24
- cribl_control_plane/models/outputtcpjson.py +52 -20
- cribl_control_plane/models/outputwavefront.py +35 -12
- cribl_control_plane/models/outputwebhook.py +58 -22
- cribl_control_plane/models/outputxsiam.py +35 -14
- cribl_control_plane/models/productscore.py +2 -1
- cribl_control_plane/models/rbacresource.py +2 -1
- cribl_control_plane/models/resourcepolicy.py +4 -2
- cribl_control_plane/models/runnablejobcollection.py +30 -13
- cribl_control_plane/models/runnablejobexecutor.py +13 -4
- cribl_control_plane/models/runnablejobscheduledsearch.py +7 -2
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +8 -2
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +8 -2
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +6 -5
- cribl_control_plane/models/workertypes.py +2 -1
- {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0a1.dist-info}/METADATA +1 -1
- {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0a1.dist-info}/RECORD +166 -163
- {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0a1.dist-info}/WHEEL +0 -0
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,14 +26,14 @@ class InputEdgePrometheusConnection(BaseModel):
|
|
|
23
26
|
pipeline: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class InputEdgePrometheusMode(str, Enum):
|
|
29
|
+
class InputEdgePrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
31
|
|
|
29
32
|
SMART = "smart"
|
|
30
33
|
ALWAYS = "always"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class InputEdgePrometheusPqCompression(str, Enum):
|
|
36
|
+
class InputEdgePrometheusPqCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Codec to use to compress the persisted data"""
|
|
35
38
|
|
|
36
39
|
NONE = "none"
|
|
@@ -64,7 +67,9 @@ class InputEdgePrometheusPqTypedDict(TypedDict):
|
|
|
64
67
|
|
|
65
68
|
|
|
66
69
|
class InputEdgePrometheusPq(BaseModel):
|
|
67
|
-
mode:
|
|
70
|
+
mode: Annotated[
|
|
71
|
+
Optional[InputEdgePrometheusMode], PlainValidator(validate_open_enum(False))
|
|
72
|
+
] = InputEdgePrometheusMode.ALWAYS
|
|
68
73
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
69
74
|
|
|
70
75
|
max_buffer_size: Annotated[
|
|
@@ -88,9 +93,10 @@ class InputEdgePrometheusPq(BaseModel):
|
|
|
88
93
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
89
94
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
90
95
|
|
|
91
|
-
compress:
|
|
92
|
-
InputEdgePrometheusPqCompression
|
|
93
|
-
|
|
96
|
+
compress: Annotated[
|
|
97
|
+
Optional[InputEdgePrometheusPqCompression],
|
|
98
|
+
PlainValidator(validate_open_enum(False)),
|
|
99
|
+
] = InputEdgePrometheusPqCompression.NONE
|
|
94
100
|
r"""Codec to use to compress the persisted data"""
|
|
95
101
|
|
|
96
102
|
pq_controls: Annotated[
|
|
@@ -98,7 +104,7 @@ class InputEdgePrometheusPq(BaseModel):
|
|
|
98
104
|
] = None
|
|
99
105
|
|
|
100
106
|
|
|
101
|
-
class InputEdgePrometheusDiscoveryType(str, Enum):
|
|
107
|
+
class InputEdgePrometheusDiscoveryType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
102
108
|
r"""Target discovery mechanism. Use static to manually enter a list of targets."""
|
|
103
109
|
|
|
104
110
|
STATIC = "static"
|
|
@@ -108,7 +114,9 @@ class InputEdgePrometheusDiscoveryType(str, Enum):
|
|
|
108
114
|
K8S_PODS = "k8s-pods"
|
|
109
115
|
|
|
110
116
|
|
|
111
|
-
class InputEdgePrometheusPersistenceCompression(
|
|
117
|
+
class InputEdgePrometheusPersistenceCompression(
|
|
118
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
119
|
+
):
|
|
112
120
|
r"""Data compression format. Default is gzip."""
|
|
113
121
|
|
|
114
122
|
NONE = "none"
|
|
@@ -141,9 +149,10 @@ class InputEdgePrometheusDiskSpooling(BaseModel):
|
|
|
141
149
|
max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
|
|
142
150
|
r"""Maximum amount of time to retain data before older buckets are deleted. Examples: 2h, 4d. Default is 24h."""
|
|
143
151
|
|
|
144
|
-
compress:
|
|
145
|
-
InputEdgePrometheusPersistenceCompression
|
|
146
|
-
|
|
152
|
+
compress: Annotated[
|
|
153
|
+
Optional[InputEdgePrometheusPersistenceCompression],
|
|
154
|
+
PlainValidator(validate_open_enum(False)),
|
|
155
|
+
] = InputEdgePrometheusPersistenceCompression.GZIP
|
|
147
156
|
r"""Data compression format. Default is gzip."""
|
|
148
157
|
|
|
149
158
|
|
|
@@ -160,7 +169,9 @@ class InputEdgePrometheusMetadatum(BaseModel):
|
|
|
160
169
|
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
161
170
|
|
|
162
171
|
|
|
163
|
-
class InputEdgePrometheusAuthTypeAuthenticationMethod(
|
|
172
|
+
class InputEdgePrometheusAuthTypeAuthenticationMethod(
|
|
173
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
174
|
+
):
|
|
164
175
|
r"""Enter credentials directly, or select a stored secret"""
|
|
165
176
|
|
|
166
177
|
MANUAL = "manual"
|
|
@@ -168,7 +179,7 @@ class InputEdgePrometheusAuthTypeAuthenticationMethod(str, Enum):
|
|
|
168
179
|
KUBERNETES = "kubernetes"
|
|
169
180
|
|
|
170
181
|
|
|
171
|
-
class TargetProtocol(str, Enum):
|
|
182
|
+
class TargetProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
172
183
|
r"""Protocol to use when collecting metrics"""
|
|
173
184
|
|
|
174
185
|
HTTP = "http"
|
|
@@ -190,7 +201,9 @@ class Target(BaseModel):
|
|
|
190
201
|
host: str
|
|
191
202
|
r"""Name of host from which to pull metrics."""
|
|
192
203
|
|
|
193
|
-
protocol:
|
|
204
|
+
protocol: Annotated[
|
|
205
|
+
Optional[TargetProtocol], PlainValidator(validate_open_enum(False))
|
|
206
|
+
] = TargetProtocol.HTTP
|
|
194
207
|
r"""Protocol to use when collecting metrics"""
|
|
195
208
|
|
|
196
209
|
port: Optional[float] = 9090
|
|
@@ -200,7 +213,7 @@ class Target(BaseModel):
|
|
|
200
213
|
r"""Path to use when collecting metrics from discovered targets"""
|
|
201
214
|
|
|
202
215
|
|
|
203
|
-
class InputEdgePrometheusRecordType(str, Enum):
|
|
216
|
+
class InputEdgePrometheusRecordType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
204
217
|
r"""DNS Record type to resolve"""
|
|
205
218
|
|
|
206
219
|
SRV = "SRV"
|
|
@@ -208,7 +221,7 @@ class InputEdgePrometheusRecordType(str, Enum):
|
|
|
208
221
|
AAAA = "AAAA"
|
|
209
222
|
|
|
210
223
|
|
|
211
|
-
class ScrapeProtocolProtocol(str, Enum):
|
|
224
|
+
class ScrapeProtocolProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
212
225
|
r"""Protocol to use when collecting metrics"""
|
|
213
226
|
|
|
214
227
|
HTTP = "http"
|
|
@@ -230,7 +243,9 @@ class InputEdgePrometheusSearchFilter(BaseModel):
|
|
|
230
243
|
r"""Search Filter Values, if empty only \"running\" EC2 instances will be returned"""
|
|
231
244
|
|
|
232
245
|
|
|
233
|
-
class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(
|
|
246
|
+
class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(
|
|
247
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
248
|
+
):
|
|
234
249
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
235
250
|
|
|
236
251
|
AUTO = "auto"
|
|
@@ -238,7 +253,7 @@ class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(str, Enum):
|
|
|
238
253
|
SECRET = "secret"
|
|
239
254
|
|
|
240
255
|
|
|
241
|
-
class InputEdgePrometheusSignatureVersion(str, Enum):
|
|
256
|
+
class InputEdgePrometheusSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
242
257
|
r"""Signature version to use for signing EC2 requests"""
|
|
243
258
|
|
|
244
259
|
V2 = "v2"
|
|
@@ -386,7 +401,10 @@ class InputEdgePrometheus(BaseModel):
|
|
|
386
401
|
r"""Other dimensions to include in events"""
|
|
387
402
|
|
|
388
403
|
discovery_type: Annotated[
|
|
389
|
-
|
|
404
|
+
Annotated[
|
|
405
|
+
Optional[InputEdgePrometheusDiscoveryType],
|
|
406
|
+
PlainValidator(validate_open_enum(False)),
|
|
407
|
+
],
|
|
390
408
|
pydantic.Field(alias="discoveryType"),
|
|
391
409
|
] = InputEdgePrometheusDiscoveryType.STATIC
|
|
392
410
|
r"""Target discovery mechanism. Use static to manually enter a list of targets."""
|
|
@@ -403,7 +421,10 @@ class InputEdgePrometheus(BaseModel):
|
|
|
403
421
|
r"""Fields to add to events from this input"""
|
|
404
422
|
|
|
405
423
|
auth_type: Annotated[
|
|
406
|
-
|
|
424
|
+
Annotated[
|
|
425
|
+
Optional[InputEdgePrometheusAuthTypeAuthenticationMethod],
|
|
426
|
+
PlainValidator(validate_open_enum(False)),
|
|
427
|
+
],
|
|
407
428
|
pydantic.Field(alias="authType"),
|
|
408
429
|
] = InputEdgePrometheusAuthTypeAuthenticationMethod.MANUAL
|
|
409
430
|
r"""Enter credentials directly, or select a stored secret"""
|
|
@@ -416,12 +437,19 @@ class InputEdgePrometheus(BaseModel):
|
|
|
416
437
|
r"""List of DNS names to resolve"""
|
|
417
438
|
|
|
418
439
|
record_type: Annotated[
|
|
419
|
-
|
|
440
|
+
Annotated[
|
|
441
|
+
Optional[InputEdgePrometheusRecordType],
|
|
442
|
+
PlainValidator(validate_open_enum(False)),
|
|
443
|
+
],
|
|
444
|
+
pydantic.Field(alias="recordType"),
|
|
420
445
|
] = InputEdgePrometheusRecordType.SRV
|
|
421
446
|
r"""DNS Record type to resolve"""
|
|
422
447
|
|
|
423
448
|
scrape_protocol: Annotated[
|
|
424
|
-
|
|
449
|
+
Annotated[
|
|
450
|
+
Optional[ScrapeProtocolProtocol], PlainValidator(validate_open_enum(False))
|
|
451
|
+
],
|
|
452
|
+
pydantic.Field(alias="scrapeProtocol"),
|
|
425
453
|
] = ScrapeProtocolProtocol.HTTP
|
|
426
454
|
r"""Protocol to use when collecting metrics"""
|
|
427
455
|
|
|
@@ -443,7 +471,10 @@ class InputEdgePrometheus(BaseModel):
|
|
|
443
471
|
r"""EC2 Instance Search Filter"""
|
|
444
472
|
|
|
445
473
|
aws_authentication_method: Annotated[
|
|
446
|
-
|
|
474
|
+
Annotated[
|
|
475
|
+
Optional[InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod],
|
|
476
|
+
PlainValidator(validate_open_enum(False)),
|
|
477
|
+
],
|
|
447
478
|
pydantic.Field(alias="awsAuthenticationMethod"),
|
|
448
479
|
] = InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod.AUTO
|
|
449
480
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
@@ -459,7 +490,10 @@ class InputEdgePrometheus(BaseModel):
|
|
|
459
490
|
r"""EC2 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to EC2-compatible endpoint."""
|
|
460
491
|
|
|
461
492
|
signature_version: Annotated[
|
|
462
|
-
|
|
493
|
+
Annotated[
|
|
494
|
+
Optional[InputEdgePrometheusSignatureVersion],
|
|
495
|
+
PlainValidator(validate_open_enum(False)),
|
|
496
|
+
],
|
|
463
497
|
pydantic.Field(alias="signatureVersion"),
|
|
464
498
|
] = InputEdgePrometheusSignatureVersion.V4
|
|
465
499
|
r"""Signature version to use for signing EC2 requests"""
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import Any, List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,14 +26,14 @@ class InputElasticConnection(BaseModel):
|
|
|
23
26
|
pipeline: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class InputElasticMode(str, Enum):
|
|
29
|
+
class InputElasticMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
31
|
|
|
29
32
|
SMART = "smart"
|
|
30
33
|
ALWAYS = "always"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class InputElasticCompression(str, Enum):
|
|
36
|
+
class InputElasticCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Codec to use to compress the persisted data"""
|
|
35
38
|
|
|
36
39
|
NONE = "none"
|
|
@@ -64,7 +67,9 @@ class InputElasticPqTypedDict(TypedDict):
|
|
|
64
67
|
|
|
65
68
|
|
|
66
69
|
class InputElasticPq(BaseModel):
|
|
67
|
-
mode:
|
|
70
|
+
mode: Annotated[
|
|
71
|
+
Optional[InputElasticMode], PlainValidator(validate_open_enum(False))
|
|
72
|
+
] = InputElasticMode.ALWAYS
|
|
68
73
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
69
74
|
|
|
70
75
|
max_buffer_size: Annotated[
|
|
@@ -88,7 +93,9 @@ class InputElasticPq(BaseModel):
|
|
|
88
93
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
89
94
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
90
95
|
|
|
91
|
-
compress:
|
|
96
|
+
compress: Annotated[
|
|
97
|
+
Optional[InputElasticCompression], PlainValidator(validate_open_enum(False))
|
|
98
|
+
] = InputElasticCompression.NONE
|
|
92
99
|
r"""Codec to use to compress the persisted data"""
|
|
93
100
|
|
|
94
101
|
pq_controls: Annotated[
|
|
@@ -96,14 +103,14 @@ class InputElasticPq(BaseModel):
|
|
|
96
103
|
] = None
|
|
97
104
|
|
|
98
105
|
|
|
99
|
-
class InputElasticMinimumTLSVersion(str, Enum):
|
|
106
|
+
class InputElasticMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
107
|
TL_SV1 = "TLSv1"
|
|
101
108
|
TL_SV1_1 = "TLSv1.1"
|
|
102
109
|
TL_SV1_2 = "TLSv1.2"
|
|
103
110
|
TL_SV1_3 = "TLSv1.3"
|
|
104
111
|
|
|
105
112
|
|
|
106
|
-
class InputElasticMaximumTLSVersion(str, Enum):
|
|
113
|
+
class InputElasticMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
107
114
|
TL_SV1 = "TLSv1"
|
|
108
115
|
TL_SV1_1 = "TLSv1.1"
|
|
109
116
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -162,22 +169,30 @@ class InputElasticTLSSettingsServerSide(BaseModel):
|
|
|
162
169
|
] = None
|
|
163
170
|
|
|
164
171
|
min_version: Annotated[
|
|
165
|
-
|
|
172
|
+
Annotated[
|
|
173
|
+
Optional[InputElasticMinimumTLSVersion],
|
|
174
|
+
PlainValidator(validate_open_enum(False)),
|
|
175
|
+
],
|
|
176
|
+
pydantic.Field(alias="minVersion"),
|
|
166
177
|
] = None
|
|
167
178
|
|
|
168
179
|
max_version: Annotated[
|
|
169
|
-
|
|
180
|
+
Annotated[
|
|
181
|
+
Optional[InputElasticMaximumTLSVersion],
|
|
182
|
+
PlainValidator(validate_open_enum(False)),
|
|
183
|
+
],
|
|
184
|
+
pydantic.Field(alias="maxVersion"),
|
|
170
185
|
] = None
|
|
171
186
|
|
|
172
187
|
|
|
173
|
-
class InputElasticAuthenticationType(str, Enum):
|
|
188
|
+
class InputElasticAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
174
189
|
NONE = "none"
|
|
175
190
|
BASIC = "basic"
|
|
176
191
|
CREDENTIALS_SECRET = "credentialsSecret"
|
|
177
192
|
AUTH_TOKENS = "authTokens"
|
|
178
193
|
|
|
179
194
|
|
|
180
|
-
class InputElasticAPIVersion(str, Enum):
|
|
195
|
+
class InputElasticAPIVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
181
196
|
r"""The API version to use for communicating with the server"""
|
|
182
197
|
|
|
183
198
|
SIX_DOT_8_DOT_4 = "6.8.4"
|
|
@@ -209,7 +224,7 @@ class InputElasticMetadatum(BaseModel):
|
|
|
209
224
|
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
210
225
|
|
|
211
226
|
|
|
212
|
-
class InputElasticAuthenticationMethod(str, Enum):
|
|
227
|
+
class InputElasticAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
213
228
|
r"""Enter credentials directly, or select a stored secret"""
|
|
214
229
|
|
|
215
230
|
NONE = "none"
|
|
@@ -253,7 +268,11 @@ class InputElasticProxyMode(BaseModel):
|
|
|
253
268
|
r"""Amount of time, in seconds, to wait for a proxy request to complete before canceling it"""
|
|
254
269
|
|
|
255
270
|
auth_type: Annotated[
|
|
256
|
-
|
|
271
|
+
Annotated[
|
|
272
|
+
Optional[InputElasticAuthenticationMethod],
|
|
273
|
+
PlainValidator(validate_open_enum(False)),
|
|
274
|
+
],
|
|
275
|
+
pydantic.Field(alias="authType"),
|
|
257
276
|
] = InputElasticAuthenticationMethod.NONE
|
|
258
277
|
r"""Enter credentials directly, or select a stored secret"""
|
|
259
278
|
|
|
@@ -421,11 +440,18 @@ class InputElastic(BaseModel):
|
|
|
421
440
|
r"""Absolute path on which to listen for Elasticsearch API requests. Defaults to /. _bulk will be appended automatically. For example, /myPath becomes /myPath/_bulk. Requests can then be made to either /myPath/_bulk or /myPath/<myIndexName>/_bulk. Other entries are faked as success."""
|
|
422
441
|
|
|
423
442
|
auth_type: Annotated[
|
|
424
|
-
|
|
443
|
+
Annotated[
|
|
444
|
+
Optional[InputElasticAuthenticationType],
|
|
445
|
+
PlainValidator(validate_open_enum(False)),
|
|
446
|
+
],
|
|
447
|
+
pydantic.Field(alias="authType"),
|
|
425
448
|
] = InputElasticAuthenticationType.NONE
|
|
426
449
|
|
|
427
450
|
api_version: Annotated[
|
|
428
|
-
|
|
451
|
+
Annotated[
|
|
452
|
+
Optional[InputElasticAPIVersion], PlainValidator(validate_open_enum(False))
|
|
453
|
+
],
|
|
454
|
+
pydantic.Field(alias="apiVersion"),
|
|
429
455
|
] = InputElasticAPIVersion.EIGHT_DOT_3_DOT_2
|
|
430
456
|
r"""The API version to use for communicating with the server"""
|
|
431
457
|
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,14 +26,14 @@ class InputEventhubConnection(BaseModel):
|
|
|
23
26
|
pipeline: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class InputEventhubMode(str, Enum):
|
|
29
|
+
class InputEventhubMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
31
|
|
|
29
32
|
SMART = "smart"
|
|
30
33
|
ALWAYS = "always"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class InputEventhubCompression(str, Enum):
|
|
36
|
+
class InputEventhubCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Codec to use to compress the persisted data"""
|
|
35
38
|
|
|
36
39
|
NONE = "none"
|
|
@@ -64,7 +67,9 @@ class InputEventhubPqTypedDict(TypedDict):
|
|
|
64
67
|
|
|
65
68
|
|
|
66
69
|
class InputEventhubPq(BaseModel):
|
|
67
|
-
mode:
|
|
70
|
+
mode: Annotated[
|
|
71
|
+
Optional[InputEventhubMode], PlainValidator(validate_open_enum(False))
|
|
72
|
+
] = InputEventhubMode.ALWAYS
|
|
68
73
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
69
74
|
|
|
70
75
|
max_buffer_size: Annotated[
|
|
@@ -88,7 +93,9 @@ class InputEventhubPq(BaseModel):
|
|
|
88
93
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
89
94
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
90
95
|
|
|
91
|
-
compress:
|
|
96
|
+
compress: Annotated[
|
|
97
|
+
Optional[InputEventhubCompression], PlainValidator(validate_open_enum(False))
|
|
98
|
+
] = InputEventhubCompression.NONE
|
|
92
99
|
r"""Codec to use to compress the persisted data"""
|
|
93
100
|
|
|
94
101
|
pq_controls: Annotated[
|
|
@@ -96,7 +103,7 @@ class InputEventhubPq(BaseModel):
|
|
|
96
103
|
] = None
|
|
97
104
|
|
|
98
105
|
|
|
99
|
-
class InputEventhubSASLMechanism(str, Enum):
|
|
106
|
+
class InputEventhubSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
107
|
PLAIN = "plain"
|
|
101
108
|
OAUTHBEARER = "oauthbearer"
|
|
102
109
|
|
|
@@ -113,7 +120,9 @@ class InputEventhubAuthentication(BaseModel):
|
|
|
113
120
|
|
|
114
121
|
disabled: Optional[bool] = False
|
|
115
122
|
|
|
116
|
-
mechanism:
|
|
123
|
+
mechanism: Annotated[
|
|
124
|
+
Optional[InputEventhubSASLMechanism], PlainValidator(validate_open_enum(False))
|
|
125
|
+
] = InputEventhubSASLMechanism.PLAIN
|
|
117
126
|
|
|
118
127
|
|
|
119
128
|
class InputEventhubTLSSettingsClientSideTypedDict(TypedDict):
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,14 +26,14 @@ class InputExecConnection(BaseModel):
|
|
|
23
26
|
pipeline: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class InputExecMode(str, Enum):
|
|
29
|
+
class InputExecMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
31
|
|
|
29
32
|
SMART = "smart"
|
|
30
33
|
ALWAYS = "always"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class InputExecCompression(str, Enum):
|
|
36
|
+
class InputExecCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Codec to use to compress the persisted data"""
|
|
35
38
|
|
|
36
39
|
NONE = "none"
|
|
@@ -64,7 +67,9 @@ class InputExecPqTypedDict(TypedDict):
|
|
|
64
67
|
|
|
65
68
|
|
|
66
69
|
class InputExecPq(BaseModel):
|
|
67
|
-
mode:
|
|
70
|
+
mode: Annotated[
|
|
71
|
+
Optional[InputExecMode], PlainValidator(validate_open_enum(False))
|
|
72
|
+
] = InputExecMode.ALWAYS
|
|
68
73
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
69
74
|
|
|
70
75
|
max_buffer_size: Annotated[
|
|
@@ -88,7 +93,9 @@ class InputExecPq(BaseModel):
|
|
|
88
93
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
89
94
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
90
95
|
|
|
91
|
-
compress:
|
|
96
|
+
compress: Annotated[
|
|
97
|
+
Optional[InputExecCompression], PlainValidator(validate_open_enum(False))
|
|
98
|
+
] = InputExecCompression.NONE
|
|
92
99
|
r"""Codec to use to compress the persisted data"""
|
|
93
100
|
|
|
94
101
|
pq_controls: Annotated[
|
|
@@ -96,7 +103,7 @@ class InputExecPq(BaseModel):
|
|
|
96
103
|
] = None
|
|
97
104
|
|
|
98
105
|
|
|
99
|
-
class ScheduleType(str, Enum):
|
|
106
|
+
class ScheduleType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
107
|
r"""Select a schedule type; either an interval (in seconds) or a cron-style schedule."""
|
|
101
108
|
|
|
102
109
|
INTERVAL = "interval"
|
|
@@ -190,7 +197,8 @@ class InputExec(BaseModel):
|
|
|
190
197
|
r"""Maximum number of retry attempts in the event that the command fails"""
|
|
191
198
|
|
|
192
199
|
schedule_type: Annotated[
|
|
193
|
-
Optional[ScheduleType],
|
|
200
|
+
Annotated[Optional[ScheduleType], PlainValidator(validate_open_enum(False))],
|
|
201
|
+
pydantic.Field(alias="scheduleType"),
|
|
194
202
|
] = ScheduleType.INTERVAL
|
|
195
203
|
r"""Select a schedule type; either an interval (in seconds) or a cron-style schedule."""
|
|
196
204
|
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,14 +26,14 @@ class InputFileConnection(BaseModel):
|
|
|
23
26
|
pipeline: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class InputFilePqMode(str, Enum):
|
|
29
|
+
class InputFilePqMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
31
|
|
|
29
32
|
SMART = "smart"
|
|
30
33
|
ALWAYS = "always"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class InputFileCompression(str, Enum):
|
|
36
|
+
class InputFileCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Codec to use to compress the persisted data"""
|
|
35
38
|
|
|
36
39
|
NONE = "none"
|
|
@@ -64,7 +67,9 @@ class InputFilePqTypedDict(TypedDict):
|
|
|
64
67
|
|
|
65
68
|
|
|
66
69
|
class InputFilePq(BaseModel):
|
|
67
|
-
mode:
|
|
70
|
+
mode: Annotated[
|
|
71
|
+
Optional[InputFilePqMode], PlainValidator(validate_open_enum(False))
|
|
72
|
+
] = InputFilePqMode.ALWAYS
|
|
68
73
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
69
74
|
|
|
70
75
|
max_buffer_size: Annotated[
|
|
@@ -88,7 +93,9 @@ class InputFilePq(BaseModel):
|
|
|
88
93
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
89
94
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
90
95
|
|
|
91
|
-
compress:
|
|
96
|
+
compress: Annotated[
|
|
97
|
+
Optional[InputFileCompression], PlainValidator(validate_open_enum(False))
|
|
98
|
+
] = InputFileCompression.NONE
|
|
92
99
|
r"""Codec to use to compress the persisted data"""
|
|
93
100
|
|
|
94
101
|
pq_controls: Annotated[
|
|
@@ -96,7 +103,7 @@ class InputFilePq(BaseModel):
|
|
|
96
103
|
] = None
|
|
97
104
|
|
|
98
105
|
|
|
99
|
-
class InputFileMode(str, Enum):
|
|
106
|
+
class InputFileMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
107
|
r"""Choose how to discover files to monitor"""
|
|
101
108
|
|
|
102
109
|
AUTO = "auto"
|
|
@@ -200,7 +207,9 @@ class InputFile(BaseModel):
|
|
|
200
207
|
|
|
201
208
|
pq: Optional[InputFilePq] = None
|
|
202
209
|
|
|
203
|
-
mode:
|
|
210
|
+
mode: Annotated[
|
|
211
|
+
Optional[InputFileMode], PlainValidator(validate_open_enum(False))
|
|
212
|
+
] = InputFileMode.AUTO
|
|
204
213
|
r"""Choose how to discover files to monitor"""
|
|
205
214
|
|
|
206
215
|
interval: Optional[float] = 10
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
4
5
|
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
5
7
|
from enum import Enum
|
|
6
8
|
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
7
10
|
from typing import Any, List, Optional
|
|
8
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
12
|
|
|
@@ -23,14 +26,14 @@ class InputFirehoseConnection(BaseModel):
|
|
|
23
26
|
pipeline: Optional[str] = None
|
|
24
27
|
|
|
25
28
|
|
|
26
|
-
class InputFirehoseMode(str, Enum):
|
|
29
|
+
class InputFirehoseMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
31
|
|
|
29
32
|
SMART = "smart"
|
|
30
33
|
ALWAYS = "always"
|
|
31
34
|
|
|
32
35
|
|
|
33
|
-
class InputFirehoseCompression(str, Enum):
|
|
36
|
+
class InputFirehoseCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Codec to use to compress the persisted data"""
|
|
35
38
|
|
|
36
39
|
NONE = "none"
|
|
@@ -64,7 +67,9 @@ class InputFirehosePqTypedDict(TypedDict):
|
|
|
64
67
|
|
|
65
68
|
|
|
66
69
|
class InputFirehosePq(BaseModel):
|
|
67
|
-
mode:
|
|
70
|
+
mode: Annotated[
|
|
71
|
+
Optional[InputFirehoseMode], PlainValidator(validate_open_enum(False))
|
|
72
|
+
] = InputFirehoseMode.ALWAYS
|
|
68
73
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
69
74
|
|
|
70
75
|
max_buffer_size: Annotated[
|
|
@@ -88,7 +93,9 @@ class InputFirehosePq(BaseModel):
|
|
|
88
93
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
89
94
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
90
95
|
|
|
91
|
-
compress:
|
|
96
|
+
compress: Annotated[
|
|
97
|
+
Optional[InputFirehoseCompression], PlainValidator(validate_open_enum(False))
|
|
98
|
+
] = InputFirehoseCompression.NONE
|
|
92
99
|
r"""Codec to use to compress the persisted data"""
|
|
93
100
|
|
|
94
101
|
pq_controls: Annotated[
|
|
@@ -96,14 +103,14 @@ class InputFirehosePq(BaseModel):
|
|
|
96
103
|
] = None
|
|
97
104
|
|
|
98
105
|
|
|
99
|
-
class InputFirehoseMinimumTLSVersion(str, Enum):
|
|
106
|
+
class InputFirehoseMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
107
|
TL_SV1 = "TLSv1"
|
|
101
108
|
TL_SV1_1 = "TLSv1.1"
|
|
102
109
|
TL_SV1_2 = "TLSv1.2"
|
|
103
110
|
TL_SV1_3 = "TLSv1.3"
|
|
104
111
|
|
|
105
112
|
|
|
106
|
-
class InputFirehoseMaximumTLSVersion(str, Enum):
|
|
113
|
+
class InputFirehoseMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
107
114
|
TL_SV1 = "TLSv1"
|
|
108
115
|
TL_SV1_1 = "TLSv1.1"
|
|
109
116
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -162,11 +169,19 @@ class InputFirehoseTLSSettingsServerSide(BaseModel):
|
|
|
162
169
|
] = None
|
|
163
170
|
|
|
164
171
|
min_version: Annotated[
|
|
165
|
-
|
|
172
|
+
Annotated[
|
|
173
|
+
Optional[InputFirehoseMinimumTLSVersion],
|
|
174
|
+
PlainValidator(validate_open_enum(False)),
|
|
175
|
+
],
|
|
176
|
+
pydantic.Field(alias="minVersion"),
|
|
166
177
|
] = None
|
|
167
178
|
|
|
168
179
|
max_version: Annotated[
|
|
169
|
-
|
|
180
|
+
Annotated[
|
|
181
|
+
Optional[InputFirehoseMaximumTLSVersion],
|
|
182
|
+
PlainValidator(validate_open_enum(False)),
|
|
183
|
+
],
|
|
184
|
+
pydantic.Field(alias="maxVersion"),
|
|
170
185
|
] = None
|
|
171
186
|
|
|
172
187
|
|