cribl-control-plane 0.2.1rc7__py3-none-any.whl → 0.3.0a1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of cribl-control-plane might be problematic. Click here for more details.
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/errors/__init__.py +5 -8
- cribl_control_plane/errors/{healthserverstatus_error.py → healthstatus_error.py} +9 -10
- cribl_control_plane/groups_sdk.py +28 -52
- cribl_control_plane/health.py +16 -22
- cribl_control_plane/models/__init__.py +54 -217
- cribl_control_plane/models/appmode.py +14 -0
- cribl_control_plane/models/authtoken.py +1 -5
- cribl_control_plane/models/cacheconnection.py +0 -20
- cribl_control_plane/models/configgroup.py +7 -55
- cribl_control_plane/models/configgroupcloud.py +1 -11
- cribl_control_plane/models/createconfiggroupbyproductop.py +5 -17
- cribl_control_plane/models/createroutesappendbyidop.py +2 -2
- cribl_control_plane/models/createversionundoop.py +3 -3
- cribl_control_plane/models/cribllakedataset.py +1 -11
- cribl_control_plane/models/cribllakedatasetupdate.py +1 -11
- cribl_control_plane/models/datasetmetadata.py +1 -11
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +0 -11
- cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
- cribl_control_plane/models/distributedsummary.py +0 -6
- cribl_control_plane/models/error.py +16 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +0 -20
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +0 -20
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +0 -11
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +0 -11
- cribl_control_plane/models/gethealthinfoop.py +17 -0
- cribl_control_plane/models/getsummaryop.py +0 -11
- cribl_control_plane/models/hbcriblinfo.py +3 -24
- cribl_control_plane/models/{healthserverstatus.py → healthstatus.py} +8 -27
- cribl_control_plane/models/heartbeatmetadata.py +0 -3
- cribl_control_plane/models/input.py +78 -80
- cribl_control_plane/models/inputappscope.py +17 -80
- cribl_control_plane/models/inputazureblob.py +1 -33
- cribl_control_plane/models/inputcollection.py +1 -24
- cribl_control_plane/models/inputconfluentcloud.py +18 -195
- cribl_control_plane/models/inputcribl.py +1 -24
- cribl_control_plane/models/inputcriblhttp.py +17 -62
- cribl_control_plane/models/inputcribllakehttp.py +17 -62
- cribl_control_plane/models/inputcriblmetrics.py +1 -24
- cribl_control_plane/models/inputcribltcp.py +17 -62
- cribl_control_plane/models/inputcrowdstrike.py +1 -54
- cribl_control_plane/models/inputdatadogagent.py +17 -62
- cribl_control_plane/models/inputdatagen.py +1 -24
- cribl_control_plane/models/inputedgeprometheus.py +34 -147
- cribl_control_plane/models/inputelastic.py +27 -119
- cribl_control_plane/models/inputeventhub.py +1 -182
- cribl_control_plane/models/inputexec.py +1 -33
- cribl_control_plane/models/inputfile.py +3 -42
- cribl_control_plane/models/inputfirehose.py +17 -62
- cribl_control_plane/models/inputgooglepubsub.py +1 -36
- cribl_control_plane/models/inputgrafana.py +32 -157
- cribl_control_plane/models/inputhttp.py +17 -62
- cribl_control_plane/models/inputhttpraw.py +17 -62
- cribl_control_plane/models/inputjournalfiles.py +1 -24
- cribl_control_plane/models/inputkafka.py +17 -189
- cribl_control_plane/models/inputkinesis.py +1 -80
- cribl_control_plane/models/inputkubeevents.py +1 -24
- cribl_control_plane/models/inputkubelogs.py +1 -33
- cribl_control_plane/models/inputkubemetrics.py +1 -33
- cribl_control_plane/models/inputloki.py +17 -71
- cribl_control_plane/models/inputmetrics.py +17 -62
- cribl_control_plane/models/inputmodeldriventelemetry.py +17 -62
- cribl_control_plane/models/inputmsk.py +18 -81
- cribl_control_plane/models/inputnetflow.py +1 -24
- cribl_control_plane/models/inputoffice365mgmt.py +1 -67
- cribl_control_plane/models/inputoffice365msgtrace.py +1 -67
- cribl_control_plane/models/inputoffice365service.py +1 -67
- cribl_control_plane/models/inputopentelemetry.py +16 -92
- cribl_control_plane/models/inputprometheus.py +34 -138
- cribl_control_plane/models/inputprometheusrw.py +17 -71
- cribl_control_plane/models/inputrawudp.py +1 -24
- cribl_control_plane/models/inputs3.py +1 -45
- cribl_control_plane/models/inputs3inventory.py +1 -54
- cribl_control_plane/models/inputsecuritylake.py +1 -54
- cribl_control_plane/models/inputsnmp.py +1 -40
- cribl_control_plane/models/inputsplunk.py +17 -85
- cribl_control_plane/models/inputsplunkhec.py +16 -70
- cribl_control_plane/models/inputsplunksearch.py +1 -63
- cribl_control_plane/models/inputsqs.py +1 -56
- cribl_control_plane/models/inputsyslog.py +32 -121
- cribl_control_plane/models/inputsystemmetrics.py +9 -142
- cribl_control_plane/models/inputsystemstate.py +1 -33
- cribl_control_plane/models/inputtcp.py +17 -81
- cribl_control_plane/models/inputtcpjson.py +17 -71
- cribl_control_plane/models/inputwef.py +1 -71
- cribl_control_plane/models/inputwindowsmetrics.py +9 -129
- cribl_control_plane/models/inputwineventlogs.py +1 -60
- cribl_control_plane/models/inputwiz.py +1 -45
- cribl_control_plane/models/inputwizwebhook.py +17 -62
- cribl_control_plane/models/inputzscalerhec.py +16 -70
- cribl_control_plane/models/jobinfo.py +1 -4
- cribl_control_plane/models/jobstatus.py +3 -34
- cribl_control_plane/models/listconfiggroupbyproductop.py +0 -11
- cribl_control_plane/models/logininfo.py +3 -3
- cribl_control_plane/models/masterworkerentry.py +1 -11
- cribl_control_plane/models/nodeprovidedinfo.py +1 -11
- cribl_control_plane/models/nodeupgradestatus.py +0 -38
- cribl_control_plane/models/output.py +88 -93
- cribl_control_plane/models/outputazureblob.py +1 -110
- cribl_control_plane/models/outputazuredataexplorer.py +87 -452
- cribl_control_plane/models/outputazureeventhub.py +19 -281
- cribl_control_plane/models/outputazurelogs.py +19 -115
- cribl_control_plane/models/outputchronicle.py +19 -115
- cribl_control_plane/models/outputclickhouse.py +19 -155
- cribl_control_plane/models/outputcloudwatch.py +19 -106
- cribl_control_plane/models/outputconfluentcloud.py +38 -311
- cribl_control_plane/models/outputcriblhttp.py +19 -135
- cribl_control_plane/models/outputcribllake.py +1 -97
- cribl_control_plane/models/outputcribltcp.py +19 -132
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +20 -129
- cribl_control_plane/models/outputdatadog.py +19 -159
- cribl_control_plane/models/outputdataset.py +19 -143
- cribl_control_plane/models/outputdiskspool.py +1 -11
- cribl_control_plane/models/outputdls3.py +1 -152
- cribl_control_plane/models/outputdynatracehttp.py +19 -160
- cribl_control_plane/models/outputdynatraceotlp.py +19 -160
- cribl_control_plane/models/outputelastic.py +19 -163
- cribl_control_plane/models/outputelasticcloud.py +19 -140
- cribl_control_plane/models/outputexabeam.py +1 -61
- cribl_control_plane/models/outputfilesystem.py +1 -87
- cribl_control_plane/models/outputgooglechronicle.py +20 -166
- cribl_control_plane/models/outputgooglecloudlogging.py +20 -131
- cribl_control_plane/models/outputgooglecloudstorage.py +1 -136
- cribl_control_plane/models/outputgooglepubsub.py +19 -106
- cribl_control_plane/models/outputgrafanacloud.py +37 -288
- cribl_control_plane/models/outputgraphite.py +19 -105
- cribl_control_plane/models/outputhoneycomb.py +19 -115
- cribl_control_plane/models/outputhumiohec.py +19 -126
- cribl_control_plane/models/outputinfluxdb.py +19 -130
- cribl_control_plane/models/outputkafka.py +34 -302
- cribl_control_plane/models/outputkinesis.py +19 -133
- cribl_control_plane/models/outputloki.py +17 -129
- cribl_control_plane/models/outputminio.py +1 -145
- cribl_control_plane/models/outputmsk.py +34 -193
- cribl_control_plane/models/outputnewrelic.py +19 -136
- cribl_control_plane/models/outputnewrelicevents.py +20 -128
- cribl_control_plane/models/outputopentelemetry.py +19 -178
- cribl_control_plane/models/outputprometheus.py +19 -115
- cribl_control_plane/models/outputring.py +1 -31
- cribl_control_plane/models/outputs3.py +1 -152
- cribl_control_plane/models/outputsecuritylake.py +1 -114
- cribl_control_plane/models/outputsentinel.py +19 -135
- cribl_control_plane/models/outputsentineloneaisiem.py +20 -134
- cribl_control_plane/models/outputservicenow.py +19 -168
- cribl_control_plane/models/outputsignalfx.py +19 -115
- cribl_control_plane/models/outputsns.py +17 -113
- cribl_control_plane/models/outputsplunk.py +19 -153
- cribl_control_plane/models/outputsplunkhec.py +19 -208
- cribl_control_plane/models/outputsplunklb.py +19 -182
- cribl_control_plane/models/outputsqs.py +17 -124
- cribl_control_plane/models/outputstatsd.py +19 -105
- cribl_control_plane/models/outputstatsdext.py +19 -105
- cribl_control_plane/models/outputsumologic.py +19 -117
- cribl_control_plane/models/outputsyslog.py +96 -259
- cribl_control_plane/models/outputtcpjson.py +19 -141
- cribl_control_plane/models/outputwavefront.py +19 -115
- cribl_control_plane/models/outputwebhook.py +19 -161
- cribl_control_plane/models/outputxsiam.py +17 -113
- cribl_control_plane/models/packinfo.py +5 -8
- cribl_control_plane/models/packinstallinfo.py +5 -8
- cribl_control_plane/models/resourcepolicy.py +0 -11
- cribl_control_plane/models/{uploadpackresponse.py → routecloneconf.py} +4 -4
- cribl_control_plane/models/routeconf.py +4 -3
- cribl_control_plane/models/runnablejobcollection.py +9 -72
- cribl_control_plane/models/runnablejobexecutor.py +9 -32
- cribl_control_plane/models/runnablejobscheduledsearch.py +9 -23
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +0 -11
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +0 -11
- cribl_control_plane/packs.py +7 -202
- cribl_control_plane/routes_sdk.py +6 -6
- cribl_control_plane/tokens.py +15 -23
- {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/METADATA +9 -50
- cribl_control_plane-0.3.0a1.dist-info/RECORD +330 -0
- cribl_control_plane/models/groupcreaterequest.py +0 -171
- cribl_control_plane/models/outpostnodeinfo.py +0 -16
- cribl_control_plane/models/outputdatabricks.py +0 -482
- cribl_control_plane/models/updatepacksop.py +0 -25
- cribl_control_plane-0.2.1rc7.dist-info/RECORD +0 -331
- {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/WHEEL +0 -0
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
-
from pydantic import field_serializer
|
|
10
9
|
from pydantic.functional_validators import PlainValidator
|
|
11
10
|
from typing import List, Optional
|
|
12
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -30,18 +29,14 @@ class InputSystemMetricsConnection(BaseModel):
|
|
|
30
29
|
class InputSystemMetricsPqMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
31
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."""
|
|
32
31
|
|
|
33
|
-
# Smart
|
|
34
32
|
SMART = "smart"
|
|
35
|
-
# Always On
|
|
36
33
|
ALWAYS = "always"
|
|
37
34
|
|
|
38
35
|
|
|
39
36
|
class InputSystemMetricsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
40
37
|
r"""Codec to use to compress the persisted data"""
|
|
41
38
|
|
|
42
|
-
# None
|
|
43
39
|
NONE = "none"
|
|
44
|
-
# Gzip
|
|
45
40
|
GZIP = "gzip"
|
|
46
41
|
|
|
47
42
|
|
|
@@ -108,48 +103,22 @@ class InputSystemMetricsPq(BaseModel):
|
|
|
108
103
|
Optional[InputSystemMetricsPqControls], pydantic.Field(alias="pqControls")
|
|
109
104
|
] = None
|
|
110
105
|
|
|
111
|
-
@field_serializer("mode")
|
|
112
|
-
def serialize_mode(self, value):
|
|
113
|
-
if isinstance(value, str):
|
|
114
|
-
try:
|
|
115
|
-
return models.InputSystemMetricsPqMode(value)
|
|
116
|
-
except ValueError:
|
|
117
|
-
return value
|
|
118
|
-
return value
|
|
119
|
-
|
|
120
|
-
@field_serializer("compress")
|
|
121
|
-
def serialize_compress(self, value):
|
|
122
|
-
if isinstance(value, str):
|
|
123
|
-
try:
|
|
124
|
-
return models.InputSystemMetricsCompression(value)
|
|
125
|
-
except ValueError:
|
|
126
|
-
return value
|
|
127
|
-
return value
|
|
128
|
-
|
|
129
106
|
|
|
130
107
|
class InputSystemMetricsHostMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
131
108
|
r"""Select level of detail for host metrics"""
|
|
132
109
|
|
|
133
|
-
# Basic
|
|
134
110
|
BASIC = "basic"
|
|
135
|
-
# All
|
|
136
111
|
ALL = "all"
|
|
137
|
-
# Custom
|
|
138
112
|
CUSTOM = "custom"
|
|
139
|
-
# Disabled
|
|
140
113
|
DISABLED = "disabled"
|
|
141
114
|
|
|
142
115
|
|
|
143
116
|
class InputSystemMetricsSystemMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
144
117
|
r"""Select the level of detail for system metrics"""
|
|
145
118
|
|
|
146
|
-
# Basic
|
|
147
119
|
BASIC = "basic"
|
|
148
|
-
# All
|
|
149
120
|
ALL = "all"
|
|
150
|
-
# Custom
|
|
151
121
|
CUSTOM = "custom"
|
|
152
|
-
# Disabled
|
|
153
122
|
DISABLED = "disabled"
|
|
154
123
|
|
|
155
124
|
|
|
@@ -170,26 +139,13 @@ class InputSystemMetricsSystem(BaseModel):
|
|
|
170
139
|
processes: Optional[bool] = False
|
|
171
140
|
r"""Generate metrics for the numbers of processes in various states"""
|
|
172
141
|
|
|
173
|
-
@field_serializer("mode")
|
|
174
|
-
def serialize_mode(self, value):
|
|
175
|
-
if isinstance(value, str):
|
|
176
|
-
try:
|
|
177
|
-
return models.InputSystemMetricsSystemMode(value)
|
|
178
|
-
except ValueError:
|
|
179
|
-
return value
|
|
180
|
-
return value
|
|
181
|
-
|
|
182
142
|
|
|
183
143
|
class InputSystemMetricsCPUMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
184
144
|
r"""Select the level of detail for CPU metrics"""
|
|
185
145
|
|
|
186
|
-
# Basic
|
|
187
146
|
BASIC = "basic"
|
|
188
|
-
# All
|
|
189
147
|
ALL = "all"
|
|
190
|
-
# Custom
|
|
191
148
|
CUSTOM = "custom"
|
|
192
|
-
# Disabled
|
|
193
149
|
DISABLED = "disabled"
|
|
194
150
|
|
|
195
151
|
|
|
@@ -219,26 +175,13 @@ class InputSystemMetricsCPU(BaseModel):
|
|
|
219
175
|
time: Optional[bool] = False
|
|
220
176
|
r"""Generate raw, monotonic CPU time counters"""
|
|
221
177
|
|
|
222
|
-
@field_serializer("mode")
|
|
223
|
-
def serialize_mode(self, value):
|
|
224
|
-
if isinstance(value, str):
|
|
225
|
-
try:
|
|
226
|
-
return models.InputSystemMetricsCPUMode(value)
|
|
227
|
-
except ValueError:
|
|
228
|
-
return value
|
|
229
|
-
return value
|
|
230
|
-
|
|
231
178
|
|
|
232
179
|
class InputSystemMetricsMemoryMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
233
180
|
r"""Select the level of detail for memory metrics"""
|
|
234
181
|
|
|
235
|
-
# Basic
|
|
236
182
|
BASIC = "basic"
|
|
237
|
-
# All
|
|
238
183
|
ALL = "all"
|
|
239
|
-
# Custom
|
|
240
184
|
CUSTOM = "custom"
|
|
241
|
-
# Disabled
|
|
242
185
|
DISABLED = "disabled"
|
|
243
186
|
|
|
244
187
|
|
|
@@ -259,40 +202,25 @@ class InputSystemMetricsMemory(BaseModel):
|
|
|
259
202
|
detail: Optional[bool] = False
|
|
260
203
|
r"""Generate metrics for all memory states"""
|
|
261
204
|
|
|
262
|
-
@field_serializer("mode")
|
|
263
|
-
def serialize_mode(self, value):
|
|
264
|
-
if isinstance(value, str):
|
|
265
|
-
try:
|
|
266
|
-
return models.InputSystemMetricsMemoryMode(value)
|
|
267
|
-
except ValueError:
|
|
268
|
-
return value
|
|
269
|
-
return value
|
|
270
|
-
|
|
271
205
|
|
|
272
206
|
class InputSystemMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
273
207
|
r"""Select the level of detail for network metrics"""
|
|
274
208
|
|
|
275
|
-
# Basic
|
|
276
209
|
BASIC = "basic"
|
|
277
|
-
# All
|
|
278
210
|
ALL = "all"
|
|
279
|
-
# Custom
|
|
280
211
|
CUSTOM = "custom"
|
|
281
|
-
# Disabled
|
|
282
212
|
DISABLED = "disabled"
|
|
283
213
|
|
|
284
214
|
|
|
285
215
|
class InputSystemMetricsNetworkTypedDict(TypedDict):
|
|
286
216
|
mode: NotRequired[InputSystemMetricsNetworkMode]
|
|
287
217
|
r"""Select the level of detail for network metrics"""
|
|
288
|
-
detail: NotRequired[bool]
|
|
289
|
-
r"""Generate full network metrics"""
|
|
290
|
-
protocols: NotRequired[bool]
|
|
291
|
-
r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
|
|
292
218
|
devices: NotRequired[List[str]]
|
|
293
219
|
r"""Network interfaces to include/exclude. Examples: eth0, !lo. All interfaces are included if this list is empty."""
|
|
294
220
|
per_interface: NotRequired[bool]
|
|
295
221
|
r"""Generate separate metrics for each interface"""
|
|
222
|
+
detail: NotRequired[bool]
|
|
223
|
+
r"""Generate full network metrics"""
|
|
296
224
|
|
|
297
225
|
|
|
298
226
|
class InputSystemMetricsNetwork(BaseModel):
|
|
@@ -302,12 +230,6 @@ class InputSystemMetricsNetwork(BaseModel):
|
|
|
302
230
|
] = InputSystemMetricsNetworkMode.BASIC
|
|
303
231
|
r"""Select the level of detail for network metrics"""
|
|
304
232
|
|
|
305
|
-
detail: Optional[bool] = False
|
|
306
|
-
r"""Generate full network metrics"""
|
|
307
|
-
|
|
308
|
-
protocols: Optional[bool] = False
|
|
309
|
-
r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
|
|
310
|
-
|
|
311
233
|
devices: Optional[List[str]] = None
|
|
312
234
|
r"""Network interfaces to include/exclude. Examples: eth0, !lo. All interfaces are included if this list is empty."""
|
|
313
235
|
|
|
@@ -316,36 +238,22 @@ class InputSystemMetricsNetwork(BaseModel):
|
|
|
316
238
|
)
|
|
317
239
|
r"""Generate separate metrics for each interface"""
|
|
318
240
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
if isinstance(value, str):
|
|
322
|
-
try:
|
|
323
|
-
return models.InputSystemMetricsNetworkMode(value)
|
|
324
|
-
except ValueError:
|
|
325
|
-
return value
|
|
326
|
-
return value
|
|
241
|
+
detail: Optional[bool] = False
|
|
242
|
+
r"""Generate full network metrics"""
|
|
327
243
|
|
|
328
244
|
|
|
329
245
|
class InputSystemMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
330
246
|
r"""Select the level of detail for disk metrics"""
|
|
331
247
|
|
|
332
|
-
# Basic
|
|
333
248
|
BASIC = "basic"
|
|
334
|
-
# All
|
|
335
249
|
ALL = "all"
|
|
336
|
-
# Custom
|
|
337
250
|
CUSTOM = "custom"
|
|
338
|
-
# Disabled
|
|
339
251
|
DISABLED = "disabled"
|
|
340
252
|
|
|
341
253
|
|
|
342
254
|
class InputSystemMetricsDiskTypedDict(TypedDict):
|
|
343
255
|
mode: NotRequired[InputSystemMetricsDiskMode]
|
|
344
256
|
r"""Select the level of detail for disk metrics"""
|
|
345
|
-
detail: NotRequired[bool]
|
|
346
|
-
r"""Generate full disk metrics"""
|
|
347
|
-
inodes: NotRequired[bool]
|
|
348
|
-
r"""Generate filesystem inode metrics"""
|
|
349
257
|
devices: NotRequired[List[str]]
|
|
350
258
|
r"""Block devices to include/exclude. Examples: sda*, !loop*. Wildcards and ! (not) operators are supported. All devices are included if this list is empty."""
|
|
351
259
|
mountpoints: NotRequired[List[str]]
|
|
@@ -354,6 +262,8 @@ class InputSystemMetricsDiskTypedDict(TypedDict):
|
|
|
354
262
|
r"""Filesystem types to include/exclude. Examples: ext4, !*tmpfs, !squashfs. Wildcards and ! (not) operators are supported. All types are included if this list is empty."""
|
|
355
263
|
per_device: NotRequired[bool]
|
|
356
264
|
r"""Generate separate metrics for each device"""
|
|
265
|
+
detail: NotRequired[bool]
|
|
266
|
+
r"""Generate full disk metrics"""
|
|
357
267
|
|
|
358
268
|
|
|
359
269
|
class InputSystemMetricsDisk(BaseModel):
|
|
@@ -362,12 +272,6 @@ class InputSystemMetricsDisk(BaseModel):
|
|
|
362
272
|
] = InputSystemMetricsDiskMode.BASIC
|
|
363
273
|
r"""Select the level of detail for disk metrics"""
|
|
364
274
|
|
|
365
|
-
detail: Optional[bool] = False
|
|
366
|
-
r"""Generate full disk metrics"""
|
|
367
|
-
|
|
368
|
-
inodes: Optional[bool] = False
|
|
369
|
-
r"""Generate filesystem inode metrics"""
|
|
370
|
-
|
|
371
275
|
devices: Optional[List[str]] = None
|
|
372
276
|
r"""Block devices to include/exclude. Examples: sda*, !loop*. Wildcards and ! (not) operators are supported. All devices are included if this list is empty."""
|
|
373
277
|
|
|
@@ -380,14 +284,8 @@ class InputSystemMetricsDisk(BaseModel):
|
|
|
380
284
|
per_device: Annotated[Optional[bool], pydantic.Field(alias="perDevice")] = False
|
|
381
285
|
r"""Generate separate metrics for each device"""
|
|
382
286
|
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
if isinstance(value, str):
|
|
386
|
-
try:
|
|
387
|
-
return models.InputSystemMetricsDiskMode(value)
|
|
388
|
-
except ValueError:
|
|
389
|
-
return value
|
|
390
|
-
return value
|
|
287
|
+
detail: Optional[bool] = False
|
|
288
|
+
r"""Generate full disk metrics"""
|
|
391
289
|
|
|
392
290
|
|
|
393
291
|
class InputSystemMetricsCustomTypedDict(TypedDict):
|
|
@@ -424,15 +322,6 @@ class InputSystemMetricsHost(BaseModel):
|
|
|
424
322
|
|
|
425
323
|
custom: Optional[InputSystemMetricsCustom] = None
|
|
426
324
|
|
|
427
|
-
@field_serializer("mode")
|
|
428
|
-
def serialize_mode(self, value):
|
|
429
|
-
if isinstance(value, str):
|
|
430
|
-
try:
|
|
431
|
-
return models.InputSystemMetricsHostMode(value)
|
|
432
|
-
except ValueError:
|
|
433
|
-
return value
|
|
434
|
-
return value
|
|
435
|
-
|
|
436
325
|
|
|
437
326
|
class InputSystemMetricsSetTypedDict(TypedDict):
|
|
438
327
|
name: str
|
|
@@ -463,13 +352,9 @@ class InputSystemMetricsProcess(BaseModel):
|
|
|
463
352
|
class ContainerMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
464
353
|
r"""Select the level of detail for container metrics"""
|
|
465
354
|
|
|
466
|
-
# Basic
|
|
467
355
|
BASIC = "basic"
|
|
468
|
-
# All
|
|
469
356
|
ALL = "all"
|
|
470
|
-
# Custom
|
|
471
357
|
CUSTOM = "custom"
|
|
472
|
-
# Disabled
|
|
473
358
|
DISABLED = "disabled"
|
|
474
359
|
|
|
475
360
|
|
|
@@ -528,15 +413,6 @@ class Container(BaseModel):
|
|
|
528
413
|
detail: Optional[bool] = False
|
|
529
414
|
r"""Generate full container metrics"""
|
|
530
415
|
|
|
531
|
-
@field_serializer("mode")
|
|
532
|
-
def serialize_mode(self, value):
|
|
533
|
-
if isinstance(value, str):
|
|
534
|
-
try:
|
|
535
|
-
return models.ContainerMode(value)
|
|
536
|
-
except ValueError:
|
|
537
|
-
return value
|
|
538
|
-
return value
|
|
539
|
-
|
|
540
416
|
|
|
541
417
|
class InputSystemMetricsMetadatumTypedDict(TypedDict):
|
|
542
418
|
name: str
|
|
@@ -593,15 +469,6 @@ class InputSystemMetricsPersistence(BaseModel):
|
|
|
593
469
|
)
|
|
594
470
|
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/system_metrics"""
|
|
595
471
|
|
|
596
|
-
@field_serializer("compress")
|
|
597
|
-
def serialize_compress(self, value):
|
|
598
|
-
if isinstance(value, str):
|
|
599
|
-
try:
|
|
600
|
-
return models.InputSystemMetricsDataCompressionFormat(value)
|
|
601
|
-
except ValueError:
|
|
602
|
-
return value
|
|
603
|
-
return value
|
|
604
|
-
|
|
605
472
|
|
|
606
473
|
class InputSystemMetricsTypedDict(TypedDict):
|
|
607
474
|
type: InputSystemMetricsType
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
-
from pydantic import field_serializer
|
|
10
9
|
from pydantic.functional_validators import PlainValidator
|
|
11
10
|
from typing import List, Optional
|
|
12
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -30,18 +29,14 @@ class InputSystemStateConnection(BaseModel):
|
|
|
30
29
|
class InputSystemStateMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
31
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."""
|
|
32
31
|
|
|
33
|
-
# Smart
|
|
34
32
|
SMART = "smart"
|
|
35
|
-
# Always On
|
|
36
33
|
ALWAYS = "always"
|
|
37
34
|
|
|
38
35
|
|
|
39
36
|
class InputSystemStateCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
40
37
|
r"""Codec to use to compress the persisted data"""
|
|
41
38
|
|
|
42
|
-
# None
|
|
43
39
|
NONE = "none"
|
|
44
|
-
# Gzip
|
|
45
40
|
GZIP = "gzip"
|
|
46
41
|
|
|
47
42
|
|
|
@@ -107,24 +102,6 @@ class InputSystemStatePq(BaseModel):
|
|
|
107
102
|
Optional[InputSystemStatePqControls], pydantic.Field(alias="pqControls")
|
|
108
103
|
] = None
|
|
109
104
|
|
|
110
|
-
@field_serializer("mode")
|
|
111
|
-
def serialize_mode(self, value):
|
|
112
|
-
if isinstance(value, str):
|
|
113
|
-
try:
|
|
114
|
-
return models.InputSystemStateMode(value)
|
|
115
|
-
except ValueError:
|
|
116
|
-
return value
|
|
117
|
-
return value
|
|
118
|
-
|
|
119
|
-
@field_serializer("compress")
|
|
120
|
-
def serialize_compress(self, value):
|
|
121
|
-
if isinstance(value, str):
|
|
122
|
-
try:
|
|
123
|
-
return models.InputSystemStateCompression(value)
|
|
124
|
-
except ValueError:
|
|
125
|
-
return value
|
|
126
|
-
return value
|
|
127
|
-
|
|
128
105
|
|
|
129
106
|
class InputSystemStateMetadatumTypedDict(TypedDict):
|
|
130
107
|
name: str
|
|
@@ -375,15 +352,6 @@ class InputSystemStatePersistence(BaseModel):
|
|
|
375
352
|
)
|
|
376
353
|
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/system_state"""
|
|
377
354
|
|
|
378
|
-
@field_serializer("compress")
|
|
379
|
-
def serialize_compress(self, value):
|
|
380
|
-
if isinstance(value, str):
|
|
381
|
-
try:
|
|
382
|
-
return models.InputSystemStateDataCompressionFormat(value)
|
|
383
|
-
except ValueError:
|
|
384
|
-
return value
|
|
385
|
-
return value
|
|
386
|
-
|
|
387
355
|
|
|
388
356
|
class InputSystemStateTypedDict(TypedDict):
|
|
389
357
|
type: InputSystemStateType
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
-
from pydantic import field_serializer
|
|
10
9
|
from pydantic.functional_validators import PlainValidator
|
|
11
|
-
from typing import List, Optional
|
|
10
|
+
from typing import Any, List, Optional
|
|
12
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
13
12
|
|
|
14
13
|
|
|
@@ -30,18 +29,14 @@ class InputTCPConnection(BaseModel):
|
|
|
30
29
|
class InputTCPMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
31
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."""
|
|
32
31
|
|
|
33
|
-
# Smart
|
|
34
32
|
SMART = "smart"
|
|
35
|
-
# Always On
|
|
36
33
|
ALWAYS = "always"
|
|
37
34
|
|
|
38
35
|
|
|
39
36
|
class InputTCPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
40
37
|
r"""Codec to use to compress the persisted data"""
|
|
41
38
|
|
|
42
|
-
# None
|
|
43
39
|
NONE = "none"
|
|
44
|
-
# Gzip
|
|
45
40
|
GZIP = "gzip"
|
|
46
41
|
|
|
47
42
|
|
|
@@ -107,24 +102,6 @@ class InputTCPPq(BaseModel):
|
|
|
107
102
|
Optional[InputTCPPqControls], pydantic.Field(alias="pqControls")
|
|
108
103
|
] = None
|
|
109
104
|
|
|
110
|
-
@field_serializer("mode")
|
|
111
|
-
def serialize_mode(self, value):
|
|
112
|
-
if isinstance(value, str):
|
|
113
|
-
try:
|
|
114
|
-
return models.InputTCPMode(value)
|
|
115
|
-
except ValueError:
|
|
116
|
-
return value
|
|
117
|
-
return value
|
|
118
|
-
|
|
119
|
-
@field_serializer("compress")
|
|
120
|
-
def serialize_compress(self, value):
|
|
121
|
-
if isinstance(value, str):
|
|
122
|
-
try:
|
|
123
|
-
return models.InputTCPCompression(value)
|
|
124
|
-
except ValueError:
|
|
125
|
-
return value
|
|
126
|
-
return value
|
|
127
|
-
|
|
128
105
|
|
|
129
106
|
class InputTCPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
130
107
|
TL_SV1 = "TLSv1"
|
|
@@ -142,12 +119,6 @@ class InputTCPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
142
119
|
|
|
143
120
|
class InputTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
144
121
|
disabled: NotRequired[bool]
|
|
145
|
-
request_cert: NotRequired[bool]
|
|
146
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
147
|
-
reject_unauthorized: NotRequired[bool]
|
|
148
|
-
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
149
|
-
common_name_regex: NotRequired[str]
|
|
150
|
-
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
151
122
|
certificate_name: NotRequired[str]
|
|
152
123
|
r"""The name of the predefined certificate"""
|
|
153
124
|
priv_key_path: NotRequired[str]
|
|
@@ -158,6 +129,10 @@ class InputTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
158
129
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
159
130
|
ca_path: NotRequired[str]
|
|
160
131
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
132
|
+
request_cert: NotRequired[bool]
|
|
133
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
134
|
+
reject_unauthorized: NotRequired[Any]
|
|
135
|
+
common_name_regex: NotRequired[Any]
|
|
161
136
|
min_version: NotRequired[InputTCPMinimumTLSVersion]
|
|
162
137
|
max_version: NotRequired[InputTCPMaximumTLSVersion]
|
|
163
138
|
|
|
@@ -165,19 +140,6 @@ class InputTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
165
140
|
class InputTCPTLSSettingsServerSide(BaseModel):
|
|
166
141
|
disabled: Optional[bool] = True
|
|
167
142
|
|
|
168
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
169
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
170
|
-
|
|
171
|
-
reject_unauthorized: Annotated[
|
|
172
|
-
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
173
|
-
] = True
|
|
174
|
-
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
175
|
-
|
|
176
|
-
common_name_regex: Annotated[
|
|
177
|
-
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
178
|
-
] = "/.*/"
|
|
179
|
-
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
180
|
-
|
|
181
143
|
certificate_name: Annotated[
|
|
182
144
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
183
145
|
] = None
|
|
@@ -195,6 +157,17 @@ class InputTCPTLSSettingsServerSide(BaseModel):
|
|
|
195
157
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
196
158
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
197
159
|
|
|
160
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
161
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
162
|
+
|
|
163
|
+
reject_unauthorized: Annotated[
|
|
164
|
+
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
165
|
+
] = None
|
|
166
|
+
|
|
167
|
+
common_name_regex: Annotated[
|
|
168
|
+
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
169
|
+
] = None
|
|
170
|
+
|
|
198
171
|
min_version: Annotated[
|
|
199
172
|
Annotated[
|
|
200
173
|
Optional[InputTCPMinimumTLSVersion],
|
|
@@ -211,24 +184,6 @@ class InputTCPTLSSettingsServerSide(BaseModel):
|
|
|
211
184
|
pydantic.Field(alias="maxVersion"),
|
|
212
185
|
] = None
|
|
213
186
|
|
|
214
|
-
@field_serializer("min_version")
|
|
215
|
-
def serialize_min_version(self, value):
|
|
216
|
-
if isinstance(value, str):
|
|
217
|
-
try:
|
|
218
|
-
return models.InputTCPMinimumTLSVersion(value)
|
|
219
|
-
except ValueError:
|
|
220
|
-
return value
|
|
221
|
-
return value
|
|
222
|
-
|
|
223
|
-
@field_serializer("max_version")
|
|
224
|
-
def serialize_max_version(self, value):
|
|
225
|
-
if isinstance(value, str):
|
|
226
|
-
try:
|
|
227
|
-
return models.InputTCPMaximumTLSVersion(value)
|
|
228
|
-
except ValueError:
|
|
229
|
-
return value
|
|
230
|
-
return value
|
|
231
|
-
|
|
232
187
|
|
|
233
188
|
class InputTCPMetadatumTypedDict(TypedDict):
|
|
234
189
|
name: str
|
|
@@ -313,12 +268,8 @@ class InputTCPTypedDict(TypedDict):
|
|
|
313
268
|
r"""Client will pass the header record with every new connection. The header can contain an authToken, and an object with a list of fields and values to add to every event. These fields can be used to simplify Event Breaker selection, routing, etc. Header has this format, and must be followed by a newline: { \"authToken\" : \"myToken\", \"fields\": { \"field1\": \"value1\", \"field2\": \"value2\" } }"""
|
|
314
269
|
preprocess: NotRequired[InputTCPPreprocessTypedDict]
|
|
315
270
|
description: NotRequired[str]
|
|
316
|
-
auth_token: NotRequired[str]
|
|
317
|
-
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
318
271
|
auth_type: NotRequired[InputTCPAuthenticationMethod]
|
|
319
272
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
320
|
-
text_secret: NotRequired[str]
|
|
321
|
-
r"""Select or create a stored text secret"""
|
|
322
273
|
|
|
323
274
|
|
|
324
275
|
class InputTCP(BaseModel):
|
|
@@ -411,9 +362,6 @@ class InputTCP(BaseModel):
|
|
|
411
362
|
|
|
412
363
|
description: Optional[str] = None
|
|
413
364
|
|
|
414
|
-
auth_token: Annotated[Optional[str], pydantic.Field(alias="authToken")] = ""
|
|
415
|
-
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
416
|
-
|
|
417
365
|
auth_type: Annotated[
|
|
418
366
|
Annotated[
|
|
419
367
|
Optional[InputTCPAuthenticationMethod],
|
|
@@ -422,15 +370,3 @@ class InputTCP(BaseModel):
|
|
|
422
370
|
pydantic.Field(alias="authType"),
|
|
423
371
|
] = InputTCPAuthenticationMethod.MANUAL
|
|
424
372
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
425
|
-
|
|
426
|
-
text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
|
|
427
|
-
r"""Select or create a stored text secret"""
|
|
428
|
-
|
|
429
|
-
@field_serializer("auth_type")
|
|
430
|
-
def serialize_auth_type(self, value):
|
|
431
|
-
if isinstance(value, str):
|
|
432
|
-
try:
|
|
433
|
-
return models.InputTCPAuthenticationMethod(value)
|
|
434
|
-
except ValueError:
|
|
435
|
-
return value
|
|
436
|
-
return value
|