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.

Files changed (179) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/errors/__init__.py +5 -8
  3. cribl_control_plane/errors/{healthserverstatus_error.py → healthstatus_error.py} +9 -10
  4. cribl_control_plane/groups_sdk.py +28 -52
  5. cribl_control_plane/health.py +16 -22
  6. cribl_control_plane/models/__init__.py +54 -217
  7. cribl_control_plane/models/appmode.py +14 -0
  8. cribl_control_plane/models/authtoken.py +1 -5
  9. cribl_control_plane/models/cacheconnection.py +0 -20
  10. cribl_control_plane/models/configgroup.py +7 -55
  11. cribl_control_plane/models/configgroupcloud.py +1 -11
  12. cribl_control_plane/models/createconfiggroupbyproductop.py +5 -17
  13. cribl_control_plane/models/createroutesappendbyidop.py +2 -2
  14. cribl_control_plane/models/createversionundoop.py +3 -3
  15. cribl_control_plane/models/cribllakedataset.py +1 -11
  16. cribl_control_plane/models/cribllakedatasetupdate.py +1 -11
  17. cribl_control_plane/models/datasetmetadata.py +1 -11
  18. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +0 -11
  19. cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
  20. cribl_control_plane/models/distributedsummary.py +0 -6
  21. cribl_control_plane/models/error.py +16 -0
  22. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +0 -20
  23. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +0 -20
  24. cribl_control_plane/models/getconfiggroupbyproductandidop.py +0 -11
  25. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +0 -11
  26. cribl_control_plane/models/gethealthinfoop.py +17 -0
  27. cribl_control_plane/models/getsummaryop.py +0 -11
  28. cribl_control_plane/models/hbcriblinfo.py +3 -24
  29. cribl_control_plane/models/{healthserverstatus.py → healthstatus.py} +8 -27
  30. cribl_control_plane/models/heartbeatmetadata.py +0 -3
  31. cribl_control_plane/models/input.py +78 -80
  32. cribl_control_plane/models/inputappscope.py +17 -80
  33. cribl_control_plane/models/inputazureblob.py +1 -33
  34. cribl_control_plane/models/inputcollection.py +1 -24
  35. cribl_control_plane/models/inputconfluentcloud.py +18 -195
  36. cribl_control_plane/models/inputcribl.py +1 -24
  37. cribl_control_plane/models/inputcriblhttp.py +17 -62
  38. cribl_control_plane/models/inputcribllakehttp.py +17 -62
  39. cribl_control_plane/models/inputcriblmetrics.py +1 -24
  40. cribl_control_plane/models/inputcribltcp.py +17 -62
  41. cribl_control_plane/models/inputcrowdstrike.py +1 -54
  42. cribl_control_plane/models/inputdatadogagent.py +17 -62
  43. cribl_control_plane/models/inputdatagen.py +1 -24
  44. cribl_control_plane/models/inputedgeprometheus.py +34 -147
  45. cribl_control_plane/models/inputelastic.py +27 -119
  46. cribl_control_plane/models/inputeventhub.py +1 -182
  47. cribl_control_plane/models/inputexec.py +1 -33
  48. cribl_control_plane/models/inputfile.py +3 -42
  49. cribl_control_plane/models/inputfirehose.py +17 -62
  50. cribl_control_plane/models/inputgooglepubsub.py +1 -36
  51. cribl_control_plane/models/inputgrafana.py +32 -157
  52. cribl_control_plane/models/inputhttp.py +17 -62
  53. cribl_control_plane/models/inputhttpraw.py +17 -62
  54. cribl_control_plane/models/inputjournalfiles.py +1 -24
  55. cribl_control_plane/models/inputkafka.py +17 -189
  56. cribl_control_plane/models/inputkinesis.py +1 -80
  57. cribl_control_plane/models/inputkubeevents.py +1 -24
  58. cribl_control_plane/models/inputkubelogs.py +1 -33
  59. cribl_control_plane/models/inputkubemetrics.py +1 -33
  60. cribl_control_plane/models/inputloki.py +17 -71
  61. cribl_control_plane/models/inputmetrics.py +17 -62
  62. cribl_control_plane/models/inputmodeldriventelemetry.py +17 -62
  63. cribl_control_plane/models/inputmsk.py +18 -81
  64. cribl_control_plane/models/inputnetflow.py +1 -24
  65. cribl_control_plane/models/inputoffice365mgmt.py +1 -67
  66. cribl_control_plane/models/inputoffice365msgtrace.py +1 -67
  67. cribl_control_plane/models/inputoffice365service.py +1 -67
  68. cribl_control_plane/models/inputopentelemetry.py +16 -92
  69. cribl_control_plane/models/inputprometheus.py +34 -138
  70. cribl_control_plane/models/inputprometheusrw.py +17 -71
  71. cribl_control_plane/models/inputrawudp.py +1 -24
  72. cribl_control_plane/models/inputs3.py +1 -45
  73. cribl_control_plane/models/inputs3inventory.py +1 -54
  74. cribl_control_plane/models/inputsecuritylake.py +1 -54
  75. cribl_control_plane/models/inputsnmp.py +1 -40
  76. cribl_control_plane/models/inputsplunk.py +17 -85
  77. cribl_control_plane/models/inputsplunkhec.py +16 -70
  78. cribl_control_plane/models/inputsplunksearch.py +1 -63
  79. cribl_control_plane/models/inputsqs.py +1 -56
  80. cribl_control_plane/models/inputsyslog.py +32 -121
  81. cribl_control_plane/models/inputsystemmetrics.py +9 -142
  82. cribl_control_plane/models/inputsystemstate.py +1 -33
  83. cribl_control_plane/models/inputtcp.py +17 -81
  84. cribl_control_plane/models/inputtcpjson.py +17 -71
  85. cribl_control_plane/models/inputwef.py +1 -71
  86. cribl_control_plane/models/inputwindowsmetrics.py +9 -129
  87. cribl_control_plane/models/inputwineventlogs.py +1 -60
  88. cribl_control_plane/models/inputwiz.py +1 -45
  89. cribl_control_plane/models/inputwizwebhook.py +17 -62
  90. cribl_control_plane/models/inputzscalerhec.py +16 -70
  91. cribl_control_plane/models/jobinfo.py +1 -4
  92. cribl_control_plane/models/jobstatus.py +3 -34
  93. cribl_control_plane/models/listconfiggroupbyproductop.py +0 -11
  94. cribl_control_plane/models/logininfo.py +3 -3
  95. cribl_control_plane/models/masterworkerentry.py +1 -11
  96. cribl_control_plane/models/nodeprovidedinfo.py +1 -11
  97. cribl_control_plane/models/nodeupgradestatus.py +0 -38
  98. cribl_control_plane/models/output.py +88 -93
  99. cribl_control_plane/models/outputazureblob.py +1 -110
  100. cribl_control_plane/models/outputazuredataexplorer.py +87 -452
  101. cribl_control_plane/models/outputazureeventhub.py +19 -281
  102. cribl_control_plane/models/outputazurelogs.py +19 -115
  103. cribl_control_plane/models/outputchronicle.py +19 -115
  104. cribl_control_plane/models/outputclickhouse.py +19 -155
  105. cribl_control_plane/models/outputcloudwatch.py +19 -106
  106. cribl_control_plane/models/outputconfluentcloud.py +38 -311
  107. cribl_control_plane/models/outputcriblhttp.py +19 -135
  108. cribl_control_plane/models/outputcribllake.py +1 -97
  109. cribl_control_plane/models/outputcribltcp.py +19 -132
  110. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +20 -129
  111. cribl_control_plane/models/outputdatadog.py +19 -159
  112. cribl_control_plane/models/outputdataset.py +19 -143
  113. cribl_control_plane/models/outputdiskspool.py +1 -11
  114. cribl_control_plane/models/outputdls3.py +1 -152
  115. cribl_control_plane/models/outputdynatracehttp.py +19 -160
  116. cribl_control_plane/models/outputdynatraceotlp.py +19 -160
  117. cribl_control_plane/models/outputelastic.py +19 -163
  118. cribl_control_plane/models/outputelasticcloud.py +19 -140
  119. cribl_control_plane/models/outputexabeam.py +1 -61
  120. cribl_control_plane/models/outputfilesystem.py +1 -87
  121. cribl_control_plane/models/outputgooglechronicle.py +20 -166
  122. cribl_control_plane/models/outputgooglecloudlogging.py +20 -131
  123. cribl_control_plane/models/outputgooglecloudstorage.py +1 -136
  124. cribl_control_plane/models/outputgooglepubsub.py +19 -106
  125. cribl_control_plane/models/outputgrafanacloud.py +37 -288
  126. cribl_control_plane/models/outputgraphite.py +19 -105
  127. cribl_control_plane/models/outputhoneycomb.py +19 -115
  128. cribl_control_plane/models/outputhumiohec.py +19 -126
  129. cribl_control_plane/models/outputinfluxdb.py +19 -130
  130. cribl_control_plane/models/outputkafka.py +34 -302
  131. cribl_control_plane/models/outputkinesis.py +19 -133
  132. cribl_control_plane/models/outputloki.py +17 -129
  133. cribl_control_plane/models/outputminio.py +1 -145
  134. cribl_control_plane/models/outputmsk.py +34 -193
  135. cribl_control_plane/models/outputnewrelic.py +19 -136
  136. cribl_control_plane/models/outputnewrelicevents.py +20 -128
  137. cribl_control_plane/models/outputopentelemetry.py +19 -178
  138. cribl_control_plane/models/outputprometheus.py +19 -115
  139. cribl_control_plane/models/outputring.py +1 -31
  140. cribl_control_plane/models/outputs3.py +1 -152
  141. cribl_control_plane/models/outputsecuritylake.py +1 -114
  142. cribl_control_plane/models/outputsentinel.py +19 -135
  143. cribl_control_plane/models/outputsentineloneaisiem.py +20 -134
  144. cribl_control_plane/models/outputservicenow.py +19 -168
  145. cribl_control_plane/models/outputsignalfx.py +19 -115
  146. cribl_control_plane/models/outputsns.py +17 -113
  147. cribl_control_plane/models/outputsplunk.py +19 -153
  148. cribl_control_plane/models/outputsplunkhec.py +19 -208
  149. cribl_control_plane/models/outputsplunklb.py +19 -182
  150. cribl_control_plane/models/outputsqs.py +17 -124
  151. cribl_control_plane/models/outputstatsd.py +19 -105
  152. cribl_control_plane/models/outputstatsdext.py +19 -105
  153. cribl_control_plane/models/outputsumologic.py +19 -117
  154. cribl_control_plane/models/outputsyslog.py +96 -259
  155. cribl_control_plane/models/outputtcpjson.py +19 -141
  156. cribl_control_plane/models/outputwavefront.py +19 -115
  157. cribl_control_plane/models/outputwebhook.py +19 -161
  158. cribl_control_plane/models/outputxsiam.py +17 -113
  159. cribl_control_plane/models/packinfo.py +5 -8
  160. cribl_control_plane/models/packinstallinfo.py +5 -8
  161. cribl_control_plane/models/resourcepolicy.py +0 -11
  162. cribl_control_plane/models/{uploadpackresponse.py → routecloneconf.py} +4 -4
  163. cribl_control_plane/models/routeconf.py +4 -3
  164. cribl_control_plane/models/runnablejobcollection.py +9 -72
  165. cribl_control_plane/models/runnablejobexecutor.py +9 -32
  166. cribl_control_plane/models/runnablejobscheduledsearch.py +9 -23
  167. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +0 -11
  168. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +0 -11
  169. cribl_control_plane/packs.py +7 -202
  170. cribl_control_plane/routes_sdk.py +6 -6
  171. cribl_control_plane/tokens.py +15 -23
  172. {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/METADATA +9 -50
  173. cribl_control_plane-0.3.0a1.dist-info/RECORD +330 -0
  174. cribl_control_plane/models/groupcreaterequest.py +0 -171
  175. cribl_control_plane/models/outpostnodeinfo.py +0 -16
  176. cribl_control_plane/models/outputdatabricks.py +0 -482
  177. cribl_control_plane/models/updatepacksop.py +0 -25
  178. cribl_control_plane-0.2.1rc7.dist-info/RECORD +0 -331
  179. {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/WHEEL +0 -0
@@ -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 models, utils
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 InputTcpjsonConnection(BaseModel):
30
29
  class InputTcpjsonMode(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 InputTcpjsonCompression(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 InputTcpjsonPq(BaseModel):
107
102
  Optional[InputTcpjsonPqControls], 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.InputTcpjsonMode(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.InputTcpjsonCompression(value)
124
- except ValueError:
125
- return value
126
- return value
127
-
128
105
 
129
106
  class InputTcpjsonMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
130
107
  TL_SV1 = "TLSv1"
@@ -142,12 +119,6 @@ class InputTcpjsonMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
142
119
 
143
120
  class InputTcpjsonTLSSettingsServerSideTypedDict(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 InputTcpjsonTLSSettingsServerSideTypedDict(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[InputTcpjsonMinimumTLSVersion]
162
137
  max_version: NotRequired[InputTcpjsonMaximumTLSVersion]
163
138
 
@@ -165,19 +140,6 @@ class InputTcpjsonTLSSettingsServerSideTypedDict(TypedDict):
165
140
  class InputTcpjsonTLSSettingsServerSide(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 InputTcpjsonTLSSettingsServerSide(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[InputTcpjsonMinimumTLSVersion],
@@ -211,24 +184,6 @@ class InputTcpjsonTLSSettingsServerSide(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.InputTcpjsonMinimumTLSVersion(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.InputTcpjsonMaximumTLSVersion(value)
228
- except ValueError:
229
- return value
230
- return value
231
-
232
187
 
233
188
  class InputTcpjsonMetadatumTypedDict(TypedDict):
234
189
  name: str
@@ -390,12 +345,3 @@ class InputTcpjson(BaseModel):
390
345
 
391
346
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
392
347
  r"""Select or create a stored text secret"""
393
-
394
- @field_serializer("auth_type")
395
- def serialize_auth_type(self, value):
396
- if isinstance(value, str):
397
- try:
398
- return models.InputTcpjsonAuthenticationMethod(value)
399
- except ValueError:
400
- return value
401
- return value
@@ -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 models, utils
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 Any, List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -30,18 +29,14 @@ class InputWefConnection(BaseModel):
30
29
  class InputWefMode(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 InputWefCompression(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,31 +102,11 @@ class InputWefPq(BaseModel):
107
102
  Optional[InputWefPqControls], 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.InputWefMode(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.InputWefCompression(value)
124
- except ValueError:
125
- return value
126
- return value
127
-
128
105
 
129
106
  class InputWefAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
130
107
  r"""How to authenticate incoming client connections"""
131
108
 
132
- # Client certificate
133
109
  CLIENT_CERT = "clientCert"
134
- # Kerberos
135
110
  KERBEROS = "kerberos"
136
111
 
137
112
 
@@ -240,24 +215,6 @@ class MTLSSettings(BaseModel):
240
215
  ] = False
241
216
  r"""If enabled, checks will fail on any OCSP error. Otherwise, checks will fail only when a certificate is revoked, ignoring other errors."""
242
217
 
243
- @field_serializer("min_version")
244
- def serialize_min_version(self, value):
245
- if isinstance(value, str):
246
- try:
247
- return models.InputWefMinimumTLSVersion(value)
248
- except ValueError:
249
- return value
250
- return value
251
-
252
- @field_serializer("max_version")
253
- def serialize_max_version(self, value):
254
- if isinstance(value, str):
255
- try:
256
- return models.InputWefMaximumTLSVersion(value)
257
- except ValueError:
258
- return value
259
- return value
260
-
261
218
 
262
219
  class InputWefFormat(str, Enum, metaclass=utils.OpenEnumMeta):
263
220
  r"""Content format in which the endpoint should deliver events"""
@@ -358,24 +315,6 @@ class Subscription(BaseModel):
358
315
  metadata: Optional[List[SubscriptionMetadatum]] = None
359
316
  r"""Fields to add to events ingested under this subscription"""
360
317
 
361
- @field_serializer("content_format")
362
- def serialize_content_format(self, value):
363
- if isinstance(value, str):
364
- try:
365
- return models.InputWefFormat(value)
366
- except ValueError:
367
- return value
368
- return value
369
-
370
- @field_serializer("query_selector")
371
- def serialize_query_selector(self, value):
372
- if isinstance(value, str):
373
- try:
374
- return models.QueryBuilderMode(value)
375
- except ValueError:
376
- return value
377
- return value
378
-
379
318
 
380
319
  class InputWefMetadatumTypedDict(TypedDict):
381
320
  name: str
@@ -570,12 +509,3 @@ class InputWef(BaseModel):
570
509
  Optional[bool], pydantic.Field(alias="logFingerprintMismatch")
571
510
  ] = False
572
511
  r"""Log a warning if the client certificate authority (CA) fingerprint does not match the expected value. A mismatch prevents Cribl from receiving events from the Windows Event Forwarder."""
573
-
574
- @field_serializer("auth_method")
575
- def serialize_auth_method(self, value):
576
- if isinstance(value, str):
577
- try:
578
- return models.InputWefAuthenticationMethod(value)
579
- except ValueError:
580
- return value
581
- return value
@@ -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 models, utils
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 InputWindowsMetricsConnection(BaseModel):
30
29
  class InputWindowsMetricsPqMode(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 InputWindowsMetricsCompression(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 InputWindowsMetricsPq(BaseModel):
108
103
  Optional[InputWindowsMetricsPqControls], 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.InputWindowsMetricsPqMode(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.InputWindowsMetricsCompression(value)
125
- except ValueError:
126
- return value
127
- return value
128
-
129
106
 
130
107
  class InputWindowsMetricsHostMode(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 InputWindowsMetricsSystemMode(str, Enum, metaclass=utils.OpenEnumMeta):
144
117
  r"""Select the level of details 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 InputWindowsMetricsSystem(BaseModel):
170
139
  detail: Optional[bool] = False
171
140
  r"""Generate metrics for all system information"""
172
141
 
173
- @field_serializer("mode")
174
- def serialize_mode(self, value):
175
- if isinstance(value, str):
176
- try:
177
- return models.InputWindowsMetricsSystemMode(value)
178
- except ValueError:
179
- return value
180
- return value
181
-
182
142
 
183
143
  class InputWindowsMetricsCPUMode(str, Enum, metaclass=utils.OpenEnumMeta):
184
144
  r"""Select the level of details 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 InputWindowsMetricsCPU(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.InputWindowsMetricsCPUMode(value)
227
- except ValueError:
228
- return value
229
- return value
230
-
231
178
 
232
179
  class InputWindowsMetricsMemoryMode(str, Enum, metaclass=utils.OpenEnumMeta):
233
180
  r"""Select the level of details 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 InputWindowsMetricsMemory(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.InputWindowsMetricsMemoryMode(value)
267
- except ValueError:
268
- return value
269
- return value
270
-
271
205
 
272
206
  class InputWindowsMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
273
207
  r"""Select the level of details 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 InputWindowsMetricsNetworkTypedDict(TypedDict):
286
216
  mode: NotRequired[InputWindowsMetricsNetworkMode]
287
217
  r"""Select the level of details 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. 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 InputWindowsMetricsNetwork(BaseModel):
@@ -302,12 +230,6 @@ class InputWindowsMetricsNetwork(BaseModel):
302
230
  ] = InputWindowsMetricsNetworkMode.BASIC
303
231
  r"""Select the level of details 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. All interfaces are included if this list is empty."""
313
235
 
@@ -316,38 +238,26 @@ class InputWindowsMetricsNetwork(BaseModel):
316
238
  )
317
239
  r"""Generate separate metrics for each interface"""
318
240
 
319
- @field_serializer("mode")
320
- def serialize_mode(self, value):
321
- if isinstance(value, str):
322
- try:
323
- return models.InputWindowsMetricsNetworkMode(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 InputWindowsMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
330
246
  r"""Select the level of details 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 InputWindowsMetricsDiskTypedDict(TypedDict):
343
255
  mode: NotRequired[InputWindowsMetricsDiskMode]
344
256
  r"""Select the level of details for disk metrics"""
345
- per_volume: NotRequired[bool]
346
- r"""Generate separate metrics for each volume"""
347
- detail: NotRequired[bool]
348
- r"""Generate full disk metrics"""
349
257
  volumes: NotRequired[List[str]]
350
258
  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."""
259
+ per_volume: NotRequired[bool]
260
+ r"""Generate separate metrics for each volume"""
351
261
 
352
262
 
353
263
  class InputWindowsMetricsDisk(BaseModel):
@@ -356,23 +266,11 @@ class InputWindowsMetricsDisk(BaseModel):
356
266
  ] = InputWindowsMetricsDiskMode.BASIC
357
267
  r"""Select the level of details for disk metrics"""
358
268
 
359
- per_volume: Annotated[Optional[bool], pydantic.Field(alias="perVolume")] = False
360
- r"""Generate separate metrics for each volume"""
361
-
362
- detail: Optional[bool] = False
363
- r"""Generate full disk metrics"""
364
-
365
269
  volumes: Optional[List[str]] = None
366
270
  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."""
367
271
 
368
- @field_serializer("mode")
369
- def serialize_mode(self, value):
370
- if isinstance(value, str):
371
- try:
372
- return models.InputWindowsMetricsDiskMode(value)
373
- except ValueError:
374
- return value
375
- return value
272
+ per_volume: Annotated[Optional[bool], pydantic.Field(alias="perVolume")] = False
273
+ r"""Generate separate metrics for each volume"""
376
274
 
377
275
 
378
276
  class InputWindowsMetricsCustomTypedDict(TypedDict):
@@ -409,15 +307,6 @@ class InputWindowsMetricsHost(BaseModel):
409
307
 
410
308
  custom: Optional[InputWindowsMetricsCustom] = None
411
309
 
412
- @field_serializer("mode")
413
- def serialize_mode(self, value):
414
- if isinstance(value, str):
415
- try:
416
- return models.InputWindowsMetricsHostMode(value)
417
- except ValueError:
418
- return value
419
- return value
420
-
421
310
 
422
311
  class InputWindowsMetricsSetTypedDict(TypedDict):
423
312
  name: str
@@ -500,15 +389,6 @@ class InputWindowsMetricsPersistence(BaseModel):
500
389
  )
501
390
  r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/windows_metrics"""
502
391
 
503
- @field_serializer("compress")
504
- def serialize_compress(self, value):
505
- if isinstance(value, str):
506
- try:
507
- return models.InputWindowsMetricsDataCompressionFormat(value)
508
- except ValueError:
509
- return value
510
- return value
511
-
512
392
 
513
393
  class InputWindowsMetricsTypedDict(TypedDict):
514
394
  type: InputWindowsMetricsType
@@ -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 models, utils
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 InputWinEventLogsConnection(BaseModel):
30
29
  class InputWinEventLogsMode(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 InputWinEventLogsCompression(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,40 +103,18 @@ class InputWinEventLogsPq(BaseModel):
108
103
  Optional[InputWinEventLogsPqControls], 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.InputWinEventLogsMode(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.InputWinEventLogsCompression(value)
125
- except ValueError:
126
- return value
127
- return value
128
-
129
106
 
130
107
  class ReadMode(str, Enum, metaclass=utils.OpenEnumMeta):
131
108
  r"""Read all stored and future event logs, or only future events"""
132
109
 
133
- # Entire log
134
110
  OLDEST = "oldest"
135
- # From last entry
136
111
  NEWEST = "newest"
137
112
 
138
113
 
139
114
  class EventFormat(str, Enum, metaclass=utils.OpenEnumMeta):
140
115
  r"""Format of individual events"""
141
116
 
142
- # JSON
143
117
  JSON = "json"
144
- # XML
145
118
  XML = "xml"
146
119
 
147
120
 
@@ -193,10 +166,6 @@ class InputWinEventLogsTypedDict(TypedDict):
193
166
  max_event_bytes: NotRequired[float]
194
167
  r"""The maximum number of bytes in an event before it is flushed to the pipelines"""
195
168
  description: NotRequired[str]
196
- disable_json_rendering: NotRequired[bool]
197
- r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
198
- disable_xml_rendering: NotRequired[bool]
199
- r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
200
169
 
201
170
 
202
171
  class InputWinEventLogs(BaseModel):
@@ -264,31 +233,3 @@ class InputWinEventLogs(BaseModel):
264
233
  r"""The maximum number of bytes in an event before it is flushed to the pipelines"""
265
234
 
266
235
  description: Optional[str] = None
267
-
268
- disable_json_rendering: Annotated[
269
- Optional[bool], pydantic.Field(alias="disableJsonRendering")
270
- ] = False
271
- r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
272
-
273
- disable_xml_rendering: Annotated[
274
- Optional[bool], pydantic.Field(alias="disableXmlRendering")
275
- ] = True
276
- r"""Enable/disable the rendering of localized event message strings (Applicable for 4.8.0 nodes and newer that use the Native API)"""
277
-
278
- @field_serializer("read_mode")
279
- def serialize_read_mode(self, value):
280
- if isinstance(value, str):
281
- try:
282
- return models.ReadMode(value)
283
- except ValueError:
284
- return value
285
- return value
286
-
287
- @field_serializer("event_format")
288
- def serialize_event_format(self, value):
289
- if isinstance(value, str):
290
- try:
291
- return models.EventFormat(value)
292
- except ValueError:
293
- return value
294
- return value