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,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
@@ -16,96 +15,6 @@ class OutputSplunkHecType(str, Enum):
16
15
  SPLUNK_HEC = "splunk_hec"
17
16
 
18
17
 
19
- class OutputSplunkHecMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
20
- TL_SV1 = "TLSv1"
21
- TL_SV1_1 = "TLSv1.1"
22
- TL_SV1_2 = "TLSv1.2"
23
- TL_SV1_3 = "TLSv1.3"
24
-
25
-
26
- class OutputSplunkHecMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
27
- TL_SV1 = "TLSv1"
28
- TL_SV1_1 = "TLSv1.1"
29
- TL_SV1_2 = "TLSv1.2"
30
- TL_SV1_3 = "TLSv1.3"
31
-
32
-
33
- class OutputSplunkHecTLSSettingsClientSideTypedDict(TypedDict):
34
- disabled: NotRequired[bool]
35
- servername: NotRequired[str]
36
- r"""Server name for the SNI (Server Name Indication) TLS extension. It must be a host name, and not an IP address."""
37
- certificate_name: NotRequired[str]
38
- r"""The name of the predefined certificate"""
39
- ca_path: NotRequired[str]
40
- r"""Path on client in which to find CA certificates to verify the server's cert. PEM format. Can reference $ENV_VARS."""
41
- priv_key_path: NotRequired[str]
42
- r"""Path on client in which to find the private key to use. PEM format. Can reference $ENV_VARS."""
43
- cert_path: NotRequired[str]
44
- r"""Path on client in which to find certificates to use. PEM format. Can reference $ENV_VARS."""
45
- passphrase: NotRequired[str]
46
- r"""Passphrase to use to decrypt private key"""
47
- min_version: NotRequired[OutputSplunkHecMinimumTLSVersion]
48
- max_version: NotRequired[OutputSplunkHecMaximumTLSVersion]
49
-
50
-
51
- class OutputSplunkHecTLSSettingsClientSide(BaseModel):
52
- disabled: Optional[bool] = True
53
-
54
- servername: Optional[str] = None
55
- r"""Server name for the SNI (Server Name Indication) TLS extension. It must be a host name, and not an IP address."""
56
-
57
- certificate_name: Annotated[
58
- Optional[str], pydantic.Field(alias="certificateName")
59
- ] = None
60
- r"""The name of the predefined certificate"""
61
-
62
- ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
63
- r"""Path on client in which to find CA certificates to verify the server's cert. PEM format. Can reference $ENV_VARS."""
64
-
65
- priv_key_path: Annotated[Optional[str], pydantic.Field(alias="privKeyPath")] = None
66
- r"""Path on client in which to find the private key to use. PEM format. Can reference $ENV_VARS."""
67
-
68
- cert_path: Annotated[Optional[str], pydantic.Field(alias="certPath")] = None
69
- r"""Path on client in which to find certificates to use. PEM format. Can reference $ENV_VARS."""
70
-
71
- passphrase: Optional[str] = None
72
- r"""Passphrase to use to decrypt private key"""
73
-
74
- min_version: Annotated[
75
- Annotated[
76
- Optional[OutputSplunkHecMinimumTLSVersion],
77
- PlainValidator(validate_open_enum(False)),
78
- ],
79
- pydantic.Field(alias="minVersion"),
80
- ] = None
81
-
82
- max_version: Annotated[
83
- Annotated[
84
- Optional[OutputSplunkHecMaximumTLSVersion],
85
- PlainValidator(validate_open_enum(False)),
86
- ],
87
- pydantic.Field(alias="maxVersion"),
88
- ] = None
89
-
90
- @field_serializer("min_version")
91
- def serialize_min_version(self, value):
92
- if isinstance(value, str):
93
- try:
94
- return models.OutputSplunkHecMinimumTLSVersion(value)
95
- except ValueError:
96
- return value
97
- return value
98
-
99
- @field_serializer("max_version")
100
- def serialize_max_version(self, value):
101
- if isinstance(value, str):
102
- try:
103
- return models.OutputSplunkHecMaximumTLSVersion(value)
104
- except ValueError:
105
- return value
106
- return value
107
-
108
-
109
18
  class OutputSplunkHecExtraHTTPHeaderTypedDict(TypedDict):
110
19
  value: str
111
20
  name: NotRequired[str]
@@ -120,11 +29,8 @@ class OutputSplunkHecExtraHTTPHeader(BaseModel):
120
29
  class OutputSplunkHecFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
121
30
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
122
31
 
123
- # Payload
124
32
  PAYLOAD = "payload"
125
- # Payload + Headers
126
33
  PAYLOAD_AND_HEADERS = "payloadAndHeaders"
127
- # None
128
34
  NONE = "none"
129
35
 
130
36
 
@@ -192,11 +98,8 @@ class OutputSplunkHecTimeoutRetrySettings(BaseModel):
192
98
  class OutputSplunkHecBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
193
99
  r"""How to handle events when all receivers are exerting backpressure"""
194
100
 
195
- # Block
196
101
  BLOCK = "block"
197
- # Drop
198
102
  DROP = "drop"
199
- # Persistent Queue
200
103
  QUEUE = "queue"
201
104
 
202
105
 
@@ -215,35 +118,28 @@ class OutputSplunkHecURL(BaseModel):
215
118
  r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
216
119
 
217
120
 
218
- class OutputSplunkHecMode(str, Enum, metaclass=utils.OpenEnumMeta):
219
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
220
-
221
- # Error
222
- ERROR = "error"
223
- # Backpressure
224
- ALWAYS = "always"
225
- # Always On
226
- BACKPRESSURE = "backpressure"
227
-
228
-
229
121
  class OutputSplunkHecCompression(str, Enum, metaclass=utils.OpenEnumMeta):
230
122
  r"""Codec to use to compress the persisted data"""
231
123
 
232
- # None
233
124
  NONE = "none"
234
- # Gzip
235
125
  GZIP = "gzip"
236
126
 
237
127
 
238
128
  class OutputSplunkHecQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
239
129
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
240
130
 
241
- # Block
242
131
  BLOCK = "block"
243
- # Drop new data
244
132
  DROP = "drop"
245
133
 
246
134
 
135
+ class OutputSplunkHecMode(str, Enum, metaclass=utils.OpenEnumMeta):
136
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
137
+
138
+ ERROR = "error"
139
+ BACKPRESSURE = "backpressure"
140
+ ALWAYS = "always"
141
+
142
+
247
143
  class OutputSplunkHecPqControlsTypedDict(TypedDict):
248
144
  pass
249
145
 
@@ -270,7 +166,6 @@ class OutputSplunkHecTypedDict(TypedDict):
270
166
  r"""In the Splunk app, define which Splunk processing queue to send the events after HEC processing."""
271
167
  tcp_routing: NotRequired[str]
272
168
  r"""In the Splunk app, set the value of _TCP_ROUTING for events that do not have _ctrl._TCP_ROUTING set."""
273
- tls: NotRequired[OutputSplunkHecTLSSettingsClientSideTypedDict]
274
169
  concurrency: NotRequired[float]
275
170
  r"""Maximum number of ongoing requests before blocking"""
276
171
  max_payload_size_kb: NotRequired[float]
@@ -323,16 +218,6 @@ class OutputSplunkHecTypedDict(TypedDict):
323
218
  r"""Splunk HEC authentication token"""
324
219
  text_secret: NotRequired[str]
325
220
  r"""Select or create a stored text secret"""
326
- pq_strict_ordering: NotRequired[bool]
327
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
328
- pq_rate_per_sec: NotRequired[float]
329
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
330
- pq_mode: NotRequired[OutputSplunkHecMode]
331
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
332
- pq_max_buffer_size: NotRequired[float]
333
- r"""The maximum number of events to hold in memory before writing the events to disk"""
334
- pq_max_backpressure_sec: NotRequired[float]
335
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
336
221
  pq_max_file_size: NotRequired[str]
337
222
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
338
223
  pq_max_size: NotRequired[str]
@@ -343,6 +228,8 @@ class OutputSplunkHecTypedDict(TypedDict):
343
228
  r"""Codec to use to compress the persisted data"""
344
229
  pq_on_backpressure: NotRequired[OutputSplunkHecQueueFullBehavior]
345
230
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
231
+ pq_mode: NotRequired[OutputSplunkHecMode]
232
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
346
233
  pq_controls: NotRequired[OutputSplunkHecPqControlsTypedDict]
347
234
 
348
235
 
@@ -381,8 +268,6 @@ class OutputSplunkHec(BaseModel):
381
268
  )
382
269
  r"""In the Splunk app, set the value of _TCP_ROUTING for events that do not have _ctrl._TCP_ROUTING set."""
383
270
 
384
- tls: Optional[OutputSplunkHecTLSSettingsClientSide] = None
385
-
386
271
  concurrency: Optional[float] = 5
387
272
  r"""Maximum number of ongoing requests before blocking"""
388
273
 
@@ -505,34 +390,6 @@ class OutputSplunkHec(BaseModel):
505
390
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
506
391
  r"""Select or create a stored text secret"""
507
392
 
508
- pq_strict_ordering: Annotated[
509
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
510
- ] = True
511
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
512
-
513
- pq_rate_per_sec: Annotated[
514
- Optional[float], pydantic.Field(alias="pqRatePerSec")
515
- ] = 0
516
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
517
-
518
- pq_mode: Annotated[
519
- Annotated[
520
- Optional[OutputSplunkHecMode], PlainValidator(validate_open_enum(False))
521
- ],
522
- pydantic.Field(alias="pqMode"),
523
- ] = OutputSplunkHecMode.ERROR
524
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
525
-
526
- pq_max_buffer_size: Annotated[
527
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
528
- ] = 42
529
- r"""The maximum number of events to hold in memory before writing the events to disk"""
530
-
531
- pq_max_backpressure_sec: Annotated[
532
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
533
- ] = 30
534
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
535
-
536
393
  pq_max_file_size: Annotated[
537
394
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
538
395
  ] = "1 MB"
@@ -564,60 +421,14 @@ class OutputSplunkHec(BaseModel):
564
421
  ] = OutputSplunkHecQueueFullBehavior.BLOCK
565
422
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
566
423
 
424
+ pq_mode: Annotated[
425
+ Annotated[
426
+ Optional[OutputSplunkHecMode], PlainValidator(validate_open_enum(False))
427
+ ],
428
+ pydantic.Field(alias="pqMode"),
429
+ ] = OutputSplunkHecMode.ERROR
430
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
431
+
567
432
  pq_controls: Annotated[
568
433
  Optional[OutputSplunkHecPqControls], pydantic.Field(alias="pqControls")
569
434
  ] = None
570
-
571
- @field_serializer("failed_request_logging_mode")
572
- def serialize_failed_request_logging_mode(self, value):
573
- if isinstance(value, str):
574
- try:
575
- return models.OutputSplunkHecFailedRequestLoggingMode(value)
576
- except ValueError:
577
- return value
578
- return value
579
-
580
- @field_serializer("auth_type")
581
- def serialize_auth_type(self, value):
582
- if isinstance(value, str):
583
- try:
584
- return models.OutputSplunkHecAuthenticationMethod(value)
585
- except ValueError:
586
- return value
587
- return value
588
-
589
- @field_serializer("on_backpressure")
590
- def serialize_on_backpressure(self, value):
591
- if isinstance(value, str):
592
- try:
593
- return models.OutputSplunkHecBackpressureBehavior(value)
594
- except ValueError:
595
- return value
596
- return value
597
-
598
- @field_serializer("pq_mode")
599
- def serialize_pq_mode(self, value):
600
- if isinstance(value, str):
601
- try:
602
- return models.OutputSplunkHecMode(value)
603
- except ValueError:
604
- return value
605
- return value
606
-
607
- @field_serializer("pq_compress")
608
- def serialize_pq_compress(self, value):
609
- if isinstance(value, str):
610
- try:
611
- return models.OutputSplunkHecCompression(value)
612
- except ValueError:
613
- return value
614
- return value
615
-
616
- @field_serializer("pq_on_backpressure")
617
- def serialize_pq_on_backpressure(self, value):
618
- if isinstance(value, str):
619
- try:
620
- return models.OutputSplunkHecQueueFullBehavior(value)
621
- except ValueError:
622
- return value
623
- 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
@@ -19,9 +18,7 @@ class OutputSplunkLbType(str, Enum):
19
18
  class OutputSplunkLbNestedFieldSerialization(str, Enum, metaclass=utils.OpenEnumMeta):
20
19
  r"""How to serialize nested fields into index-time fields"""
21
20
 
22
- # JSON
23
21
  JSON = "json"
24
- # None
25
22
  NONE = "none"
26
23
 
27
24
 
@@ -107,24 +104,6 @@ class OutputSplunkLbTLSSettingsClientSide(BaseModel):
107
104
  pydantic.Field(alias="maxVersion"),
108
105
  ] = None
109
106
 
110
- @field_serializer("min_version")
111
- def serialize_min_version(self, value):
112
- if isinstance(value, str):
113
- try:
114
- return models.OutputSplunkLbMinimumTLSVersion(value)
115
- except ValueError:
116
- return value
117
- return value
118
-
119
- @field_serializer("max_version")
120
- def serialize_max_version(self, value):
121
- if isinstance(value, str):
122
- try:
123
- return models.OutputSplunkLbMaximumTLSVersion(value)
124
- except ValueError:
125
- return value
126
- return value
127
-
128
107
 
129
108
  class OutputSplunkLbMaxS2SVersion(str, Enum, metaclass=utils.OpenEnumMeta):
130
109
  r"""The highest S2S protocol version to advertise during handshake"""
@@ -136,11 +115,8 @@ class OutputSplunkLbMaxS2SVersion(str, Enum, metaclass=utils.OpenEnumMeta):
136
115
  class OutputSplunkLbBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
137
116
  r"""How to handle events when all receivers are exerting backpressure"""
138
117
 
139
- # Block
140
118
  BLOCK = "block"
141
- # Drop
142
119
  DROP = "drop"
143
- # Persistent Queue
144
120
  QUEUE = "queue"
145
121
 
146
122
 
@@ -154,11 +130,8 @@ class OutputSplunkLbAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta
154
130
  class OutputSplunkLbCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
155
131
  r"""Controls whether the sender should send compressed data to the server. Select 'Disabled' to reject compressed connections or 'Always' to ignore server's configuration and send compressed data."""
156
132
 
157
- # Disabled
158
133
  DISABLED = "disabled"
159
- # Automatic
160
134
  AUTO = "auto"
161
- # Always
162
135
  ALWAYS = "always"
163
136
 
164
137
 
@@ -186,17 +159,6 @@ class OutputSplunkLbAuthToken(BaseModel):
186
159
  ] = IndexerDiscoveryConfigsAuthTokenAuthenticationMethod.MANUAL
187
160
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
188
161
 
189
- @field_serializer("auth_type")
190
- def serialize_auth_type(self, value):
191
- if isinstance(value, str):
192
- try:
193
- return models.IndexerDiscoveryConfigsAuthTokenAuthenticationMethod(
194
- value
195
- )
196
- except ValueError:
197
- return value
198
- return value
199
-
200
162
 
201
163
  class IndexerDiscoveryConfigsAuthenticationMethod(
202
164
  str, Enum, metaclass=utils.OpenEnumMeta
@@ -267,15 +229,6 @@ class IndexerDiscoveryConfigs(BaseModel):
267
229
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
268
230
  r"""Select or create a stored text secret"""
269
231
 
270
- @field_serializer("auth_type")
271
- def serialize_auth_type(self, value):
272
- if isinstance(value, str):
273
- try:
274
- return models.IndexerDiscoveryConfigsAuthenticationMethod(value)
275
- except ValueError:
276
- return value
277
- return value
278
-
279
232
 
280
233
  class OutputSplunkLbTLS(str, Enum, metaclass=utils.OpenEnumMeta):
281
234
  r"""Whether to inherit TLS configs from group setting or disable TLS"""
@@ -315,45 +268,29 @@ class OutputSplunkLbHost(BaseModel):
315
268
  weight: Optional[float] = 1
316
269
  r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
317
270
 
318
- @field_serializer("tls")
319
- def serialize_tls(self, value):
320
- if isinstance(value, str):
321
- try:
322
- return models.OutputSplunkLbTLS(value)
323
- except ValueError:
324
- return value
325
- return value
326
-
327
-
328
- class OutputSplunkLbMode(str, Enum, metaclass=utils.OpenEnumMeta):
329
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
330
-
331
- # Error
332
- ERROR = "error"
333
- # Backpressure
334
- ALWAYS = "always"
335
- # Always On
336
- BACKPRESSURE = "backpressure"
337
-
338
271
 
339
272
  class OutputSplunkLbPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
340
273
  r"""Codec to use to compress the persisted data"""
341
274
 
342
- # None
343
275
  NONE = "none"
344
- # Gzip
345
276
  GZIP = "gzip"
346
277
 
347
278
 
348
279
  class OutputSplunkLbQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
349
280
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
350
281
 
351
- # Block
352
282
  BLOCK = "block"
353
- # Drop new data
354
283
  DROP = "drop"
355
284
 
356
285
 
286
+ class OutputSplunkLbMode(str, Enum, metaclass=utils.OpenEnumMeta):
287
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
288
+
289
+ ERROR = "error"
290
+ BACKPRESSURE = "backpressure"
291
+ ALWAYS = "always"
292
+
293
+
357
294
  class OutputSplunkLbPqControlsTypedDict(TypedDict):
358
295
  pass
359
296
 
@@ -416,16 +353,6 @@ class OutputSplunkLbTypedDict(TypedDict):
416
353
  r"""List of configurations to set up indexer discovery in Splunk Indexer clustering environment."""
417
354
  exclude_self: NotRequired[bool]
418
355
  r"""Exclude all IPs of the current host from the list of any resolved hostnames"""
419
- pq_strict_ordering: NotRequired[bool]
420
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
421
- pq_rate_per_sec: NotRequired[float]
422
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
423
- pq_mode: NotRequired[OutputSplunkLbMode]
424
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
425
- pq_max_buffer_size: NotRequired[float]
426
- r"""The maximum number of events to hold in memory before writing the events to disk"""
427
- pq_max_backpressure_sec: NotRequired[float]
428
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
429
356
  pq_max_file_size: NotRequired[str]
430
357
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
431
358
  pq_max_size: NotRequired[str]
@@ -436,6 +363,8 @@ class OutputSplunkLbTypedDict(TypedDict):
436
363
  r"""Codec to use to compress the persisted data"""
437
364
  pq_on_backpressure: NotRequired[OutputSplunkLbQueueFullBehavior]
438
365
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
366
+ pq_mode: NotRequired[OutputSplunkLbMode]
367
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
439
368
  pq_controls: NotRequired[OutputSplunkLbPqControlsTypedDict]
440
369
  auth_token: NotRequired[str]
441
370
  r"""Shared secret token to use when establishing a connection to a Splunk indexer."""
@@ -579,34 +508,6 @@ class OutputSplunkLb(BaseModel):
579
508
  exclude_self: Annotated[Optional[bool], pydantic.Field(alias="excludeSelf")] = False
580
509
  r"""Exclude all IPs of the current host from the list of any resolved hostnames"""
581
510
 
582
- pq_strict_ordering: Annotated[
583
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
584
- ] = True
585
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
586
-
587
- pq_rate_per_sec: Annotated[
588
- Optional[float], pydantic.Field(alias="pqRatePerSec")
589
- ] = 0
590
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
591
-
592
- pq_mode: Annotated[
593
- Annotated[
594
- Optional[OutputSplunkLbMode], PlainValidator(validate_open_enum(False))
595
- ],
596
- pydantic.Field(alias="pqMode"),
597
- ] = OutputSplunkLbMode.ERROR
598
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
599
-
600
- pq_max_buffer_size: Annotated[
601
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
602
- ] = 42
603
- r"""The maximum number of events to hold in memory before writing the events to disk"""
604
-
605
- pq_max_backpressure_sec: Annotated[
606
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
607
- ] = 30
608
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
609
-
610
511
  pq_max_file_size: Annotated[
611
512
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
612
513
  ] = "1 MB"
@@ -638,6 +539,14 @@ class OutputSplunkLb(BaseModel):
638
539
  ] = OutputSplunkLbQueueFullBehavior.BLOCK
639
540
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
640
541
 
542
+ pq_mode: Annotated[
543
+ Annotated[
544
+ Optional[OutputSplunkLbMode], PlainValidator(validate_open_enum(False))
545
+ ],
546
+ pydantic.Field(alias="pqMode"),
547
+ ] = OutputSplunkLbMode.ERROR
548
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
549
+
641
550
  pq_controls: Annotated[
642
551
  Optional[OutputSplunkLbPqControls], pydantic.Field(alias="pqControls")
643
552
  ] = None
@@ -647,75 +556,3 @@ class OutputSplunkLb(BaseModel):
647
556
 
648
557
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
649
558
  r"""Select or create a stored text secret"""
650
-
651
- @field_serializer("nested_fields")
652
- def serialize_nested_fields(self, value):
653
- if isinstance(value, str):
654
- try:
655
- return models.OutputSplunkLbNestedFieldSerialization(value)
656
- except ValueError:
657
- return value
658
- return value
659
-
660
- @field_serializer("max_s2_sversion")
661
- def serialize_max_s2_sversion(self, value):
662
- if isinstance(value, str):
663
- try:
664
- return models.OutputSplunkLbMaxS2SVersion(value)
665
- except ValueError:
666
- return value
667
- return value
668
-
669
- @field_serializer("on_backpressure")
670
- def serialize_on_backpressure(self, value):
671
- if isinstance(value, str):
672
- try:
673
- return models.OutputSplunkLbBackpressureBehavior(value)
674
- except ValueError:
675
- return value
676
- return value
677
-
678
- @field_serializer("auth_type")
679
- def serialize_auth_type(self, value):
680
- if isinstance(value, str):
681
- try:
682
- return models.OutputSplunkLbAuthenticationMethod(value)
683
- except ValueError:
684
- return value
685
- return value
686
-
687
- @field_serializer("compress")
688
- def serialize_compress(self, value):
689
- if isinstance(value, str):
690
- try:
691
- return models.OutputSplunkLbCompressCompression(value)
692
- except ValueError:
693
- return value
694
- return value
695
-
696
- @field_serializer("pq_mode")
697
- def serialize_pq_mode(self, value):
698
- if isinstance(value, str):
699
- try:
700
- return models.OutputSplunkLbMode(value)
701
- except ValueError:
702
- return value
703
- return value
704
-
705
- @field_serializer("pq_compress")
706
- def serialize_pq_compress(self, value):
707
- if isinstance(value, str):
708
- try:
709
- return models.OutputSplunkLbPqCompressCompression(value)
710
- except ValueError:
711
- return value
712
- return value
713
-
714
- @field_serializer("pq_on_backpressure")
715
- def serialize_pq_on_backpressure(self, value):
716
- if isinstance(value, str):
717
- try:
718
- return models.OutputSplunkLbQueueFullBehavior(value)
719
- except ValueError:
720
- return value
721
- return value