cribl-control-plane 0.2.1rc6__py3-none-any.whl → 0.2.1rc8__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/lakedatasets.py +28 -0
- cribl_control_plane/models/__init__.py +124 -5
- cribl_control_plane/models/cribllakedataset.py +4 -0
- cribl_control_plane/models/cribllakedatasetupdate.py +4 -0
- cribl_control_plane/models/input.py +15 -15
- cribl_control_plane/models/inputappscope.py +20 -16
- cribl_control_plane/models/inputconfluentcloud.py +110 -0
- cribl_control_plane/models/inputcriblhttp.py +20 -16
- cribl_control_plane/models/inputcribllakehttp.py +20 -16
- cribl_control_plane/models/inputcribltcp.py +20 -16
- cribl_control_plane/models/inputdatadogagent.py +20 -16
- cribl_control_plane/models/inputedgeprometheus.py +44 -36
- cribl_control_plane/models/inputelastic.py +44 -27
- cribl_control_plane/models/inputeventhub.py +118 -0
- cribl_control_plane/models/inputfile.py +10 -5
- cribl_control_plane/models/inputfirehose.py +20 -16
- cribl_control_plane/models/inputgrafana.py +39 -31
- cribl_control_plane/models/inputhttp.py +20 -16
- cribl_control_plane/models/inputhttpraw.py +20 -16
- cribl_control_plane/models/inputkafka.py +108 -0
- cribl_control_plane/models/inputloki.py +20 -16
- cribl_control_plane/models/inputmetrics.py +20 -16
- cribl_control_plane/models/inputmodeldriventelemetry.py +20 -16
- cribl_control_plane/models/inputopentelemetry.py +19 -15
- cribl_control_plane/models/inputprometheus.py +44 -36
- cribl_control_plane/models/inputprometheusrw.py +20 -16
- cribl_control_plane/models/inputsplunk.py +20 -16
- cribl_control_plane/models/inputsplunkhec.py +19 -15
- cribl_control_plane/models/inputsyslog.py +39 -31
- cribl_control_plane/models/inputsystemmetrics.py +20 -10
- cribl_control_plane/models/inputtcp.py +30 -16
- cribl_control_plane/models/inputtcpjson.py +20 -16
- cribl_control_plane/models/inputwindowsmetrics.py +20 -10
- cribl_control_plane/models/inputwineventlogs.py +14 -0
- cribl_control_plane/models/inputwizwebhook.py +20 -16
- cribl_control_plane/models/inputzscalerhec.py +19 -15
- cribl_control_plane/models/jobinfo.py +10 -4
- cribl_control_plane/models/jobstatus.py +24 -3
- cribl_control_plane/models/lakedatasetmetrics.py +17 -0
- cribl_control_plane/models/output.py +21 -21
- cribl_control_plane/models/outputazureblob.py +7 -0
- cribl_control_plane/models/outputazuredataexplorer.py +283 -93
- cribl_control_plane/models/outputazureeventhub.py +169 -21
- cribl_control_plane/models/outputazurelogs.py +49 -21
- cribl_control_plane/models/outputchronicle.py +49 -21
- cribl_control_plane/models/outputclickhouse.py +49 -21
- cribl_control_plane/models/outputcloudwatch.py +49 -21
- cribl_control_plane/models/outputconfluentcloud.py +169 -22
- cribl_control_plane/models/outputcriblhttp.py +49 -21
- cribl_control_plane/models/outputcribltcp.py +49 -21
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +50 -22
- cribl_control_plane/models/outputdatabricks.py +7 -0
- cribl_control_plane/models/outputdatadog.py +49 -21
- cribl_control_plane/models/outputdataset.py +49 -21
- cribl_control_plane/models/outputdls3.py +7 -0
- cribl_control_plane/models/outputdynatracehttp.py +49 -21
- cribl_control_plane/models/outputdynatraceotlp.py +49 -21
- cribl_control_plane/models/outputelastic.py +74 -21
- cribl_control_plane/models/outputelasticcloud.py +74 -21
- cribl_control_plane/models/outputfilesystem.py +7 -0
- cribl_control_plane/models/outputgooglechronicle.py +65 -22
- cribl_control_plane/models/outputgooglecloudlogging.py +50 -22
- cribl_control_plane/models/outputgooglecloudstorage.py +7 -0
- cribl_control_plane/models/outputgooglepubsub.py +49 -21
- cribl_control_plane/models/outputgrafanacloud.py +98 -42
- cribl_control_plane/models/outputgraphite.py +49 -21
- cribl_control_plane/models/outputhoneycomb.py +49 -21
- cribl_control_plane/models/outputhumiohec.py +49 -21
- cribl_control_plane/models/outputinfluxdb.py +49 -21
- cribl_control_plane/models/outputkafka.py +164 -19
- cribl_control_plane/models/outputkinesis.py +56 -21
- cribl_control_plane/models/outputloki.py +47 -19
- cribl_control_plane/models/outputminio.py +7 -0
- cribl_control_plane/models/outputmsk.py +56 -19
- cribl_control_plane/models/outputnewrelic.py +49 -21
- cribl_control_plane/models/outputnewrelicevents.py +50 -22
- cribl_control_plane/models/outputopentelemetry.py +49 -21
- cribl_control_plane/models/outputprometheus.py +49 -21
- cribl_control_plane/models/outputs3.py +7 -0
- cribl_control_plane/models/outputsentinel.py +49 -21
- cribl_control_plane/models/outputsentineloneaisiem.py +50 -22
- cribl_control_plane/models/outputservicenow.py +49 -21
- cribl_control_plane/models/outputsignalfx.py +49 -21
- cribl_control_plane/models/outputsns.py +47 -19
- cribl_control_plane/models/outputsplunk.py +49 -21
- cribl_control_plane/models/outputsplunkhec.py +124 -21
- cribl_control_plane/models/outputsplunklb.py +49 -21
- cribl_control_plane/models/outputsqs.py +47 -19
- cribl_control_plane/models/outputstatsd.py +49 -21
- cribl_control_plane/models/outputstatsdext.py +49 -21
- cribl_control_plane/models/outputsumologic.py +49 -21
- cribl_control_plane/models/outputsyslog.py +129 -99
- cribl_control_plane/models/outputtcpjson.py +49 -21
- cribl_control_plane/models/outputwavefront.py +49 -21
- cribl_control_plane/models/outputwebhook.py +49 -21
- cribl_control_plane/models/outputxsiam.py +47 -19
- cribl_control_plane/models/runnablejobcollection.py +12 -8
- cribl_control_plane/models/runnablejobexecutor.py +12 -8
- cribl_control_plane/models/runnablejobscheduledsearch.py +12 -8
- {cribl_control_plane-0.2.1rc6.dist-info → cribl_control_plane-0.2.1rc8.dist-info}/METADATA +25 -7
- {cribl_control_plane-0.2.1rc6.dist-info → cribl_control_plane-0.2.1rc8.dist-info}/RECORD +103 -102
- {cribl_control_plane-0.2.1rc6.dist-info → cribl_control_plane-0.2.1rc8.dist-info}/WHEEL +0 -0
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputTcpjsonMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputTcpjsonTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputTcpjsonTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputTcpjsonMinimumTLSVersion]
|
|
141
143
|
max_version: NotRequired[InputTcpjsonMaximumTLSVersion]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputTcpjsonTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
146
|
class InputTcpjsonTLSSettingsServerSide(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputTcpjsonTLSSettingsServerSide(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputTcpjsonMinimumTLSVersion],
|
|
@@ -239,12 +239,14 @@ class InputWindowsMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
239
239
|
class InputWindowsMetricsNetworkTypedDict(TypedDict):
|
|
240
240
|
mode: NotRequired[InputWindowsMetricsNetworkMode]
|
|
241
241
|
r"""Select the level of details for network metrics"""
|
|
242
|
+
detail: NotRequired[bool]
|
|
243
|
+
r"""Generate full network metrics"""
|
|
244
|
+
protocols: NotRequired[bool]
|
|
245
|
+
r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
|
|
242
246
|
devices: NotRequired[List[str]]
|
|
243
247
|
r"""Network interfaces to include/exclude. All interfaces are included if this list is empty."""
|
|
244
248
|
per_interface: NotRequired[bool]
|
|
245
249
|
r"""Generate separate metrics for each interface"""
|
|
246
|
-
detail: NotRequired[bool]
|
|
247
|
-
r"""Generate full network metrics"""
|
|
248
250
|
|
|
249
251
|
|
|
250
252
|
class InputWindowsMetricsNetwork(BaseModel):
|
|
@@ -254,6 +256,12 @@ class InputWindowsMetricsNetwork(BaseModel):
|
|
|
254
256
|
] = InputWindowsMetricsNetworkMode.BASIC
|
|
255
257
|
r"""Select the level of details for network metrics"""
|
|
256
258
|
|
|
259
|
+
detail: Optional[bool] = False
|
|
260
|
+
r"""Generate full network metrics"""
|
|
261
|
+
|
|
262
|
+
protocols: Optional[bool] = False
|
|
263
|
+
r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
|
|
264
|
+
|
|
257
265
|
devices: Optional[List[str]] = None
|
|
258
266
|
r"""Network interfaces to include/exclude. All interfaces are included if this list is empty."""
|
|
259
267
|
|
|
@@ -262,9 +270,6 @@ class InputWindowsMetricsNetwork(BaseModel):
|
|
|
262
270
|
)
|
|
263
271
|
r"""Generate separate metrics for each interface"""
|
|
264
272
|
|
|
265
|
-
detail: Optional[bool] = False
|
|
266
|
-
r"""Generate full network metrics"""
|
|
267
|
-
|
|
268
273
|
|
|
269
274
|
class InputWindowsMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
270
275
|
r"""Select the level of details for disk metrics"""
|
|
@@ -282,10 +287,12 @@ class InputWindowsMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
282
287
|
class InputWindowsMetricsDiskTypedDict(TypedDict):
|
|
283
288
|
mode: NotRequired[InputWindowsMetricsDiskMode]
|
|
284
289
|
r"""Select the level of details for disk metrics"""
|
|
285
|
-
volumes: NotRequired[List[str]]
|
|
286
|
-
r"""Windows volumes to include/exclude. E.g.: C:, !E:, etc. Wildcards and ! (not) operators are supported. All volumes are included if this list is empty."""
|
|
287
290
|
per_volume: NotRequired[bool]
|
|
288
291
|
r"""Generate separate metrics for each volume"""
|
|
292
|
+
detail: NotRequired[bool]
|
|
293
|
+
r"""Generate full disk metrics"""
|
|
294
|
+
volumes: NotRequired[List[str]]
|
|
295
|
+
r"""Windows volumes to include/exclude. E.g.: C:, !E:, etc. Wildcards and ! (not) operators are supported. All volumes are included if this list is empty."""
|
|
289
296
|
|
|
290
297
|
|
|
291
298
|
class InputWindowsMetricsDisk(BaseModel):
|
|
@@ -294,12 +301,15 @@ class InputWindowsMetricsDisk(BaseModel):
|
|
|
294
301
|
] = InputWindowsMetricsDiskMode.BASIC
|
|
295
302
|
r"""Select the level of details for disk metrics"""
|
|
296
303
|
|
|
297
|
-
volumes: Optional[List[str]] = None
|
|
298
|
-
r"""Windows volumes to include/exclude. E.g.: C:, !E:, etc. Wildcards and ! (not) operators are supported. All volumes are included if this list is empty."""
|
|
299
|
-
|
|
300
304
|
per_volume: Annotated[Optional[bool], pydantic.Field(alias="perVolume")] = False
|
|
301
305
|
r"""Generate separate metrics for each volume"""
|
|
302
306
|
|
|
307
|
+
detail: Optional[bool] = False
|
|
308
|
+
r"""Generate full disk metrics"""
|
|
309
|
+
|
|
310
|
+
volumes: Optional[List[str]] = None
|
|
311
|
+
r"""Windows volumes to include/exclude. E.g.: C:, !E:, etc. Wildcards and ! (not) operators are supported. All volumes are included if this list is empty."""
|
|
312
|
+
|
|
303
313
|
|
|
304
314
|
class InputWindowsMetricsCustomTypedDict(TypedDict):
|
|
305
315
|
system: NotRequired[InputWindowsMetricsSystemTypedDict]
|
|
@@ -174,6 +174,10 @@ class InputWinEventLogsTypedDict(TypedDict):
|
|
|
174
174
|
max_event_bytes: NotRequired[float]
|
|
175
175
|
r"""The maximum number of bytes in an event before it is flushed to the pipelines"""
|
|
176
176
|
description: NotRequired[str]
|
|
177
|
+
disable_json_rendering: NotRequired[bool]
|
|
178
|
+
r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
|
|
179
|
+
disable_xml_rendering: NotRequired[bool]
|
|
180
|
+
r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
|
|
177
181
|
|
|
178
182
|
|
|
179
183
|
class InputWinEventLogs(BaseModel):
|
|
@@ -241,3 +245,13 @@ class InputWinEventLogs(BaseModel):
|
|
|
241
245
|
r"""The maximum number of bytes in an event before it is flushed to the pipelines"""
|
|
242
246
|
|
|
243
247
|
description: Optional[str] = None
|
|
248
|
+
|
|
249
|
+
disable_json_rendering: Annotated[
|
|
250
|
+
Optional[bool], pydantic.Field(alias="disableJsonRendering")
|
|
251
|
+
] = False
|
|
252
|
+
r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
|
|
253
|
+
|
|
254
|
+
disable_xml_rendering: Annotated[
|
|
255
|
+
Optional[bool], pydantic.Field(alias="disableXmlRendering")
|
|
256
|
+
] = True
|
|
257
|
+
r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputWizWebhookMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputWizWebhookTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputWizWebhookTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputWizWebhookMinimumTLSVersion]
|
|
141
143
|
max_version: NotRequired[InputWizWebhookMaximumTLSVersion]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputWizWebhookTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
146
|
class InputWizWebhookTLSSettingsServerSide(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputWizWebhookTLSSettingsServerSide(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputWizWebhookMinimumTLSVersion],
|
|
@@ -183,6 +183,12 @@ class InputZscalerHecMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
183
183
|
|
|
184
184
|
class InputZscalerHecTLSSettingsServerSideTypedDict(TypedDict):
|
|
185
185
|
disabled: NotRequired[bool]
|
|
186
|
+
request_cert: NotRequired[bool]
|
|
187
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
188
|
+
reject_unauthorized: NotRequired[bool]
|
|
189
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
190
|
+
common_name_regex: NotRequired[str]
|
|
191
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
186
192
|
certificate_name: NotRequired[str]
|
|
187
193
|
r"""The name of the predefined certificate"""
|
|
188
194
|
priv_key_path: NotRequired[str]
|
|
@@ -193,10 +199,6 @@ class InputZscalerHecTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
193
199
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
194
200
|
ca_path: NotRequired[str]
|
|
195
201
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
196
|
-
request_cert: NotRequired[bool]
|
|
197
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
198
|
-
reject_unauthorized: NotRequired[Any]
|
|
199
|
-
common_name_regex: NotRequired[Any]
|
|
200
202
|
min_version: NotRequired[InputZscalerHecMinimumTLSVersion]
|
|
201
203
|
max_version: NotRequired[InputZscalerHecMaximumTLSVersion]
|
|
202
204
|
|
|
@@ -204,6 +206,19 @@ class InputZscalerHecTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
204
206
|
class InputZscalerHecTLSSettingsServerSide(BaseModel):
|
|
205
207
|
disabled: Optional[bool] = True
|
|
206
208
|
|
|
209
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
210
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
211
|
+
|
|
212
|
+
reject_unauthorized: Annotated[
|
|
213
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
214
|
+
] = True
|
|
215
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
216
|
+
|
|
217
|
+
common_name_regex: Annotated[
|
|
218
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
219
|
+
] = "/.*/"
|
|
220
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
221
|
+
|
|
207
222
|
certificate_name: Annotated[
|
|
208
223
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
209
224
|
] = None
|
|
@@ -221,17 +236,6 @@ class InputZscalerHecTLSSettingsServerSide(BaseModel):
|
|
|
221
236
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
222
237
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
223
238
|
|
|
224
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
225
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
226
|
-
|
|
227
|
-
reject_unauthorized: Annotated[
|
|
228
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
229
|
-
] = None
|
|
230
|
-
|
|
231
|
-
common_name_regex: Annotated[
|
|
232
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
233
|
-
] = None
|
|
234
|
-
|
|
235
239
|
min_version: Annotated[
|
|
236
240
|
Annotated[
|
|
237
241
|
Optional[InputZscalerHecMinimumTLSVersion],
|
|
@@ -4,14 +4,20 @@ from __future__ import annotations
|
|
|
4
4
|
from .jobstatus import JobStatus, JobStatusTypedDict
|
|
5
5
|
from .runnablejob import RunnableJob, RunnableJobTypedDict
|
|
6
6
|
from cribl_control_plane.types import BaseModel
|
|
7
|
-
from typing import Dict, Optional
|
|
8
|
-
from typing_extensions import NotRequired, TypedDict
|
|
7
|
+
from typing import Dict, Optional, Union
|
|
8
|
+
from typing_extensions import NotRequired, TypeAliasType, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
StatsTypedDict = TypeAliasType("StatsTypedDict", Union[float, Dict[str, float]])
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
Stats = TypeAliasType("Stats", Union[float, Dict[str, float]])
|
|
9
15
|
|
|
10
16
|
|
|
11
17
|
class JobInfoTypedDict(TypedDict):
|
|
12
18
|
args: RunnableJobTypedDict
|
|
13
19
|
id: str
|
|
14
|
-
stats: Dict[str,
|
|
20
|
+
stats: Dict[str, StatsTypedDict]
|
|
15
21
|
status: JobStatusTypedDict
|
|
16
22
|
keep: NotRequired[bool]
|
|
17
23
|
|
|
@@ -21,7 +27,7 @@ class JobInfo(BaseModel):
|
|
|
21
27
|
|
|
22
28
|
id: str
|
|
23
29
|
|
|
24
|
-
stats: Dict[str,
|
|
30
|
+
stats: Dict[str, Stats]
|
|
25
31
|
|
|
26
32
|
status: JobStatus
|
|
27
33
|
|
|
@@ -1,17 +1,38 @@
|
|
|
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
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from pydantic.functional_validators import PlainValidator
|
|
5
9
|
from typing import Any, Dict, Optional
|
|
6
|
-
from typing_extensions import NotRequired, TypedDict
|
|
10
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class State(int, Enum, metaclass=utils.OpenEnumMeta):
|
|
14
|
+
r"""State of the Job"""
|
|
15
|
+
|
|
16
|
+
INITIALIZING = 0
|
|
17
|
+
PENDING = 1
|
|
18
|
+
RUNNING = 2
|
|
19
|
+
PAUSED = 3
|
|
20
|
+
CANCELLED = 4
|
|
21
|
+
FINISHED = 5
|
|
22
|
+
FAILED = 6
|
|
23
|
+
ORPHANED = 7
|
|
24
|
+
UNKNOWN = 8
|
|
25
|
+
LENGTH = 9
|
|
7
26
|
|
|
8
27
|
|
|
9
28
|
class JobStatusTypedDict(TypedDict):
|
|
10
|
-
state:
|
|
29
|
+
state: State
|
|
30
|
+
r"""State of the Job"""
|
|
11
31
|
reason: NotRequired[Dict[str, Any]]
|
|
12
32
|
|
|
13
33
|
|
|
14
34
|
class JobStatus(BaseModel):
|
|
15
|
-
state:
|
|
35
|
+
state: Annotated[State, PlainValidator(validate_open_enum(True))]
|
|
36
|
+
r"""State of the Job"""
|
|
16
37
|
|
|
17
38
|
reason: Optional[Dict[str, Any]] = None
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane.types import BaseModel
|
|
5
|
+
import pydantic
|
|
6
|
+
from typing_extensions import Annotated, TypedDict
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class LakeDatasetMetricsTypedDict(TypedDict):
|
|
10
|
+
current_size_bytes: float
|
|
11
|
+
metrics_date: str
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class LakeDatasetMetrics(BaseModel):
|
|
15
|
+
current_size_bytes: Annotated[float, pydantic.Field(alias="currentSizeBytes")]
|
|
16
|
+
|
|
17
|
+
metrics_date: Annotated[str, pydantic.Field(alias="metricsDate")]
|
|
@@ -98,64 +98,64 @@ OutputTypedDict = TypeAliasType(
|
|
|
98
98
|
OutputNetflowTypedDict,
|
|
99
99
|
OutputDiskSpoolTypedDict,
|
|
100
100
|
OutputRingTypedDict,
|
|
101
|
-
OutputStatsdExtTypedDict,
|
|
102
101
|
OutputGraphiteTypedDict,
|
|
102
|
+
OutputStatsdExtTypedDict,
|
|
103
103
|
OutputStatsdTypedDict,
|
|
104
104
|
OutputGooglePubsubTypedDict,
|
|
105
|
-
|
|
105
|
+
OutputExabeamTypedDict,
|
|
106
106
|
OutputSplunkTypedDict,
|
|
107
107
|
OutputSnsTypedDict,
|
|
108
|
-
|
|
108
|
+
OutputCriblTCPTypedDict,
|
|
109
109
|
OutputAzureEventhubTypedDict,
|
|
110
|
-
|
|
110
|
+
OutputCloudwatchTypedDict,
|
|
111
111
|
OutputSignalfxTypedDict,
|
|
112
112
|
OutputHoneycombTypedDict,
|
|
113
|
+
OutputWavefrontTypedDict,
|
|
114
|
+
OutputHumioHecTypedDict,
|
|
113
115
|
OutputSumoLogicTypedDict,
|
|
114
116
|
OutputCrowdstrikeNextGenSiemTypedDict,
|
|
115
|
-
OutputHumioHecTypedDict,
|
|
116
117
|
OutputTcpjsonTypedDict,
|
|
117
118
|
OutputElasticCloudTypedDict,
|
|
118
|
-
|
|
119
|
+
OutputNewrelicEventsTypedDict,
|
|
120
|
+
OutputFilesystemTypedDict,
|
|
119
121
|
OutputConfluentCloudTypedDict,
|
|
120
122
|
OutputKafkaTypedDict,
|
|
121
|
-
OutputExabeamTypedDict,
|
|
122
|
-
OutputNewrelicEventsTypedDict,
|
|
123
123
|
OutputAzureLogsTypedDict,
|
|
124
|
+
OutputKinesisTypedDict,
|
|
124
125
|
OutputSplunkLbTypedDict,
|
|
125
126
|
OutputSyslogTypedDict,
|
|
126
127
|
OutputSqsTypedDict,
|
|
127
|
-
OutputNewrelicTypedDict,
|
|
128
128
|
OutputCriblHTTPTypedDict,
|
|
129
|
+
OutputNewrelicTypedDict,
|
|
129
130
|
OutputXsiamTypedDict,
|
|
130
|
-
OutputFilesystemTypedDict,
|
|
131
131
|
OutputDatasetTypedDict,
|
|
132
132
|
OutputLokiTypedDict,
|
|
133
|
-
|
|
133
|
+
OutputCriblLakeTypedDict,
|
|
134
134
|
OutputDynatraceHTTPTypedDict,
|
|
135
135
|
OutputServiceNowTypedDict,
|
|
136
|
+
OutputSplunkHecTypedDict,
|
|
136
137
|
OutputChronicleTypedDict,
|
|
137
138
|
OutputDynatraceOtlpTypedDict,
|
|
138
|
-
|
|
139
|
+
OutputDatabricksTypedDict,
|
|
139
140
|
OutputElasticTypedDict,
|
|
140
141
|
OutputDatadogTypedDict,
|
|
141
|
-
|
|
142
|
-
OutputDatabricksTypedDict,
|
|
142
|
+
OutputGoogleChronicleTypedDict,
|
|
143
143
|
OutputPrometheusTypedDict,
|
|
144
|
-
OutputMskTypedDict,
|
|
145
144
|
OutputSentinelOneAiSiemTypedDict,
|
|
146
|
-
|
|
147
|
-
OutputInfluxdbTypedDict,
|
|
145
|
+
OutputMskTypedDict,
|
|
148
146
|
OutputGoogleCloudStorageTypedDict,
|
|
147
|
+
OutputSentinelTypedDict,
|
|
149
148
|
OutputAzureBlobTypedDict,
|
|
150
|
-
|
|
149
|
+
OutputInfluxdbTypedDict,
|
|
151
150
|
OutputMinioTypedDict,
|
|
152
|
-
OutputClickHouseTypedDict,
|
|
153
151
|
OutputSecurityLakeTypedDict,
|
|
154
|
-
|
|
152
|
+
OutputOpenTelemetryTypedDict,
|
|
153
|
+
OutputClickHouseTypedDict,
|
|
155
154
|
OutputDlS3TypedDict,
|
|
155
|
+
OutputS3TypedDict,
|
|
156
156
|
OutputWebhookTypedDict,
|
|
157
|
-
OutputAzureDataExplorerTypedDict,
|
|
158
157
|
OutputGoogleCloudLoggingTypedDict,
|
|
158
|
+
OutputAzureDataExplorerTypedDict,
|
|
159
159
|
OutputGrafanaCloudTypedDict,
|
|
160
160
|
],
|
|
161
161
|
)
|
|
@@ -184,6 +184,8 @@ class OutputAzureBlobTypedDict(TypedDict):
|
|
|
184
184
|
r"""Compression level to apply before moving files to final destination"""
|
|
185
185
|
automatic_schema: NotRequired[bool]
|
|
186
186
|
r"""Automatically calculate the schema based on the events of each Parquet file generated"""
|
|
187
|
+
parquet_schema: NotRequired[str]
|
|
188
|
+
r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
|
|
187
189
|
parquet_version: NotRequired[OutputAzureBlobParquetVersion]
|
|
188
190
|
r"""Determines which data types are supported and how they are represented"""
|
|
189
191
|
parquet_data_page_version: NotRequired[OutputAzureBlobDataPageVersion]
|
|
@@ -387,6 +389,11 @@ class OutputAzureBlob(BaseModel):
|
|
|
387
389
|
] = False
|
|
388
390
|
r"""Automatically calculate the schema based on the events of each Parquet file generated"""
|
|
389
391
|
|
|
392
|
+
parquet_schema: Annotated[Optional[str], pydantic.Field(alias="parquetSchema")] = (
|
|
393
|
+
None
|
|
394
|
+
)
|
|
395
|
+
r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
|
|
396
|
+
|
|
390
397
|
parquet_version: Annotated[
|
|
391
398
|
Annotated[
|
|
392
399
|
Optional[OutputAzureBlobParquetVersion],
|