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
@@ -40,11 +39,8 @@ class OutputDynatraceHTTPFailedRequestLoggingMode(
40
39
  ):
41
40
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
42
41
 
43
- # Payload
44
42
  PAYLOAD = "payload"
45
- # Payload + Headers
46
43
  PAYLOAD_AND_HEADERS = "payloadAndHeaders"
47
- # None
48
44
  NONE = "none"
49
45
 
50
46
 
@@ -105,75 +101,56 @@ class OutputDynatraceHTTPTimeoutRetrySettings(BaseModel):
105
101
  class OutputDynatraceHTTPBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
106
102
  r"""How to handle events when all receivers are exerting backpressure"""
107
103
 
108
- # Block
109
104
  BLOCK = "block"
110
- # Drop
111
105
  DROP = "drop"
112
- # Persistent Queue
113
106
  QUEUE = "queue"
114
107
 
115
108
 
116
109
  class OutputDynatraceHTTPAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
117
- # Auth token
118
110
  TOKEN = "token"
119
- # Token (text secret)
120
111
  TEXT_SECRET = "textSecret"
121
112
 
122
113
 
123
114
  class OutputDynatraceHTTPFormat(str, Enum, metaclass=utils.OpenEnumMeta):
124
115
  r"""How to format events before sending. Defaults to JSON. Plaintext is not currently supported."""
125
116
 
126
- # JSON
127
117
  JSON_ARRAY = "json_array"
128
- # Plaintext
129
118
  PLAINTEXT = "plaintext"
130
119
 
131
120
 
132
121
  class Endpoint(str, Enum, metaclass=utils.OpenEnumMeta):
133
- # Cloud
134
122
  CLOUD = "cloud"
135
- # ActiveGate
136
123
  ACTIVE_GATE = "activeGate"
137
- # Manual
138
124
  MANUAL = "manual"
139
125
 
140
126
 
141
127
  class TelemetryType(str, Enum, metaclass=utils.OpenEnumMeta):
142
- # Logs
143
128
  LOGS = "logs"
144
- # Metrics
145
129
  METRICS = "metrics"
146
130
 
147
131
 
148
- class OutputDynatraceHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
149
- 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."""
150
-
151
- # Error
152
- ERROR = "error"
153
- # Backpressure
154
- ALWAYS = "always"
155
- # Always On
156
- BACKPRESSURE = "backpressure"
157
-
158
-
159
132
  class OutputDynatraceHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
160
133
  r"""Codec to use to compress the persisted data"""
161
134
 
162
- # None
163
135
  NONE = "none"
164
- # Gzip
165
136
  GZIP = "gzip"
166
137
 
167
138
 
168
139
  class OutputDynatraceHTTPQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
169
140
  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."""
170
141
 
171
- # Block
172
142
  BLOCK = "block"
173
- # Drop new data
174
143
  DROP = "drop"
175
144
 
176
145
 
146
+ class OutputDynatraceHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
147
+ 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."""
148
+
149
+ ERROR = "error"
150
+ BACKPRESSURE = "backpressure"
151
+ ALWAYS = "always"
152
+
153
+
177
154
  class OutputDynatraceHTTPPqControlsTypedDict(TypedDict):
178
155
  pass
179
156
 
@@ -244,16 +221,6 @@ class OutputDynatraceHTTPTypedDict(TypedDict):
244
221
  total_memory_limit_kb: NotRequired[float]
245
222
  r"""Maximum total size of the batches waiting to be sent. If left blank, defaults to 5 times the max body size (if set). If 0, no limit is enforced."""
246
223
  description: NotRequired[str]
247
- pq_strict_ordering: NotRequired[bool]
248
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
249
- pq_rate_per_sec: NotRequired[float]
250
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
251
- pq_mode: NotRequired[OutputDynatraceHTTPMode]
252
- 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."""
253
- pq_max_buffer_size: NotRequired[float]
254
- r"""The maximum number of events to hold in memory before writing the events to disk"""
255
- pq_max_backpressure_sec: NotRequired[float]
256
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
257
224
  pq_max_file_size: NotRequired[str]
258
225
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
259
226
  pq_max_size: NotRequired[str]
@@ -264,6 +231,8 @@ class OutputDynatraceHTTPTypedDict(TypedDict):
264
231
  r"""Codec to use to compress the persisted data"""
265
232
  pq_on_backpressure: NotRequired[OutputDynatraceHTTPQueueFullBehavior]
266
233
  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."""
234
+ pq_mode: NotRequired[OutputDynatraceHTTPMode]
235
+ 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."""
267
236
  pq_controls: NotRequired[OutputDynatraceHTTPPqControlsTypedDict]
268
237
  token: NotRequired[str]
269
238
  r"""Bearer token to include in the authorization header"""
@@ -420,34 +389,6 @@ class OutputDynatraceHTTP(BaseModel):
420
389
 
421
390
  description: Optional[str] = None
422
391
 
423
- pq_strict_ordering: Annotated[
424
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
425
- ] = True
426
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
427
-
428
- pq_rate_per_sec: Annotated[
429
- Optional[float], pydantic.Field(alias="pqRatePerSec")
430
- ] = 0
431
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
432
-
433
- pq_mode: Annotated[
434
- Annotated[
435
- Optional[OutputDynatraceHTTPMode], PlainValidator(validate_open_enum(False))
436
- ],
437
- pydantic.Field(alias="pqMode"),
438
- ] = OutputDynatraceHTTPMode.ERROR
439
- 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."""
440
-
441
- pq_max_buffer_size: Annotated[
442
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
443
- ] = 42
444
- r"""The maximum number of events to hold in memory before writing the events to disk"""
445
-
446
- pq_max_backpressure_sec: Annotated[
447
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
448
- ] = 30
449
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
450
-
451
392
  pq_max_file_size: Annotated[
452
393
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
453
394
  ] = "1 MB"
@@ -479,6 +420,14 @@ class OutputDynatraceHTTP(BaseModel):
479
420
  ] = OutputDynatraceHTTPQueueFullBehavior.BLOCK
480
421
  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."""
481
422
 
423
+ pq_mode: Annotated[
424
+ Annotated[
425
+ Optional[OutputDynatraceHTTPMode], PlainValidator(validate_open_enum(False))
426
+ ],
427
+ pydantic.Field(alias="pqMode"),
428
+ ] = OutputDynatraceHTTPMode.ERROR
429
+ 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."""
430
+
482
431
  pq_controls: Annotated[
483
432
  Optional[OutputDynatraceHTTPPqControls], pydantic.Field(alias="pqControls")
484
433
  ] = None
@@ -501,93 +450,3 @@ class OutputDynatraceHTTP(BaseModel):
501
450
 
502
451
  url: Optional[str] = None
503
452
  r"""URL to send events to. Can be overwritten by an event's __url field."""
504
-
505
- @field_serializer("method")
506
- def serialize_method(self, value):
507
- if isinstance(value, str):
508
- try:
509
- return models.OutputDynatraceHTTPMethod(value)
510
- except ValueError:
511
- return value
512
- return value
513
-
514
- @field_serializer("failed_request_logging_mode")
515
- def serialize_failed_request_logging_mode(self, value):
516
- if isinstance(value, str):
517
- try:
518
- return models.OutputDynatraceHTTPFailedRequestLoggingMode(value)
519
- except ValueError:
520
- return value
521
- return value
522
-
523
- @field_serializer("on_backpressure")
524
- def serialize_on_backpressure(self, value):
525
- if isinstance(value, str):
526
- try:
527
- return models.OutputDynatraceHTTPBackpressureBehavior(value)
528
- except ValueError:
529
- return value
530
- return value
531
-
532
- @field_serializer("auth_type")
533
- def serialize_auth_type(self, value):
534
- if isinstance(value, str):
535
- try:
536
- return models.OutputDynatraceHTTPAuthenticationType(value)
537
- except ValueError:
538
- return value
539
- return value
540
-
541
- @field_serializer("format_")
542
- def serialize_format_(self, value):
543
- if isinstance(value, str):
544
- try:
545
- return models.OutputDynatraceHTTPFormat(value)
546
- except ValueError:
547
- return value
548
- return value
549
-
550
- @field_serializer("endpoint")
551
- def serialize_endpoint(self, value):
552
- if isinstance(value, str):
553
- try:
554
- return models.Endpoint(value)
555
- except ValueError:
556
- return value
557
- return value
558
-
559
- @field_serializer("telemetry_type")
560
- def serialize_telemetry_type(self, value):
561
- if isinstance(value, str):
562
- try:
563
- return models.TelemetryType(value)
564
- except ValueError:
565
- return value
566
- return value
567
-
568
- @field_serializer("pq_mode")
569
- def serialize_pq_mode(self, value):
570
- if isinstance(value, str):
571
- try:
572
- return models.OutputDynatraceHTTPMode(value)
573
- except ValueError:
574
- return value
575
- return value
576
-
577
- @field_serializer("pq_compress")
578
- def serialize_pq_compress(self, value):
579
- if isinstance(value, str):
580
- try:
581
- return models.OutputDynatraceHTTPCompression(value)
582
- except ValueError:
583
- return value
584
- return value
585
-
586
- @field_serializer("pq_on_backpressure")
587
- def serialize_pq_on_backpressure(self, value):
588
- if isinstance(value, str):
589
- try:
590
- return models.OutputDynatraceHTTPQueueFullBehavior(value)
591
- except ValueError:
592
- return value
593
- 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,25 +18,20 @@ class OutputDynatraceOtlpType(str, Enum):
19
18
  class OutputDynatraceOtlpProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
20
19
  r"""Select a transport option for Dynatrace"""
21
20
 
22
- # HTTP
23
21
  HTTP = "http"
24
22
 
25
23
 
26
24
  class OutputDynatraceOTLPOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
27
25
  r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
28
26
 
29
- # 1.3.1
30
27
  ONE_DOT_3_DOT_1 = "1.3.1"
31
28
 
32
29
 
33
30
  class OutputDynatraceOtlpCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
31
  r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
35
32
 
36
- # None
37
33
  NONE = "none"
38
- # Deflate
39
34
  DEFLATE = "deflate"
40
- # Gzip
41
35
  GZIP = "gzip"
42
36
 
43
37
 
@@ -46,9 +40,7 @@ class OutputDynatraceOtlpHTTPCompressCompression(
46
40
  ):
47
41
  r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
48
42
 
49
- # None
50
43
  NONE = "none"
51
- # Gzip
52
44
  GZIP = "gzip"
53
45
 
54
46
 
@@ -68,31 +60,23 @@ class OutputDynatraceOtlpFailedRequestLoggingMode(
68
60
  ):
69
61
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
70
62
 
71
- # Payload
72
63
  PAYLOAD = "payload"
73
- # Payload + Headers
74
64
  PAYLOAD_AND_HEADERS = "payloadAndHeaders"
75
- # None
76
65
  NONE = "none"
77
66
 
78
67
 
79
68
  class EndpointType(str, Enum, metaclass=utils.OpenEnumMeta):
80
69
  r"""Select the type of Dynatrace endpoint configured"""
81
70
 
82
- # SaaS
83
71
  SAAS = "saas"
84
- # ActiveGate
85
72
  AG = "ag"
86
73
 
87
74
 
88
75
  class OutputDynatraceOtlpBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
89
76
  r"""How to handle events when all receivers are exerting backpressure"""
90
77
 
91
- # Block
92
78
  BLOCK = "block"
93
- # Drop
94
79
  DROP = "drop"
95
- # Persistent Queue
96
80
  QUEUE = "queue"
97
81
 
98
82
 
@@ -161,35 +145,28 @@ class OutputDynatraceOtlpTimeoutRetrySettings(BaseModel):
161
145
  r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
162
146
 
163
147
 
164
- class OutputDynatraceOtlpMode(str, Enum, metaclass=utils.OpenEnumMeta):
165
- 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."""
166
-
167
- # Error
168
- ERROR = "error"
169
- # Backpressure
170
- ALWAYS = "always"
171
- # Always On
172
- BACKPRESSURE = "backpressure"
173
-
174
-
175
148
  class OutputDynatraceOtlpPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
176
149
  r"""Codec to use to compress the persisted data"""
177
150
 
178
- # None
179
151
  NONE = "none"
180
- # Gzip
181
152
  GZIP = "gzip"
182
153
 
183
154
 
184
155
  class OutputDynatraceOtlpQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
185
156
  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."""
186
157
 
187
- # Block
188
158
  BLOCK = "block"
189
- # Drop new data
190
159
  DROP = "drop"
191
160
 
192
161
 
162
+ class OutputDynatraceOtlpMode(str, Enum, metaclass=utils.OpenEnumMeta):
163
+ 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."""
164
+
165
+ ERROR = "error"
166
+ BACKPRESSURE = "backpressure"
167
+ ALWAYS = "always"
168
+
169
+
193
170
  class OutputDynatraceOtlpPqControlsTypedDict(TypedDict):
194
171
  pass
195
172
 
@@ -274,16 +251,6 @@ class OutputDynatraceOtlpTypedDict(TypedDict):
274
251
  ]
275
252
  response_honor_retry_after_header: NotRequired[bool]
276
253
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
277
- pq_strict_ordering: NotRequired[bool]
278
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
279
- pq_rate_per_sec: NotRequired[float]
280
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
281
- pq_mode: NotRequired[OutputDynatraceOtlpMode]
282
- 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."""
283
- pq_max_buffer_size: NotRequired[float]
284
- r"""The maximum number of events to hold in memory before writing the events to disk"""
285
- pq_max_backpressure_sec: NotRequired[float]
286
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
287
254
  pq_max_file_size: NotRequired[str]
288
255
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
289
256
  pq_max_size: NotRequired[str]
@@ -294,6 +261,8 @@ class OutputDynatraceOtlpTypedDict(TypedDict):
294
261
  r"""Codec to use to compress the persisted data"""
295
262
  pq_on_backpressure: NotRequired[OutputDynatraceOtlpQueueFullBehavior]
296
263
  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."""
264
+ pq_mode: NotRequired[OutputDynatraceOtlpMode]
265
+ 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."""
297
266
  pq_controls: NotRequired[OutputDynatraceOtlpPqControlsTypedDict]
298
267
 
299
268
 
@@ -471,34 +440,6 @@ class OutputDynatraceOtlp(BaseModel):
471
440
  ] = True
472
441
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
473
442
 
474
- pq_strict_ordering: Annotated[
475
- Optional[bool], pydantic.Field(alias="pqStrictOrdering")
476
- ] = True
477
- r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
478
-
479
- pq_rate_per_sec: Annotated[
480
- Optional[float], pydantic.Field(alias="pqRatePerSec")
481
- ] = 0
482
- r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
483
-
484
- pq_mode: Annotated[
485
- Annotated[
486
- Optional[OutputDynatraceOtlpMode], PlainValidator(validate_open_enum(False))
487
- ],
488
- pydantic.Field(alias="pqMode"),
489
- ] = OutputDynatraceOtlpMode.ERROR
490
- 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."""
491
-
492
- pq_max_buffer_size: Annotated[
493
- Optional[float], pydantic.Field(alias="pqMaxBufferSize")
494
- ] = 42
495
- r"""The maximum number of events to hold in memory before writing the events to disk"""
496
-
497
- pq_max_backpressure_sec: Annotated[
498
- Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
499
- ] = 30
500
- r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
501
-
502
443
  pq_max_file_size: Annotated[
503
444
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
504
445
  ] = "1 MB"
@@ -530,96 +471,14 @@ class OutputDynatraceOtlp(BaseModel):
530
471
  ] = OutputDynatraceOtlpQueueFullBehavior.BLOCK
531
472
  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."""
532
473
 
474
+ pq_mode: Annotated[
475
+ Annotated[
476
+ Optional[OutputDynatraceOtlpMode], PlainValidator(validate_open_enum(False))
477
+ ],
478
+ pydantic.Field(alias="pqMode"),
479
+ ] = OutputDynatraceOtlpMode.ERROR
480
+ 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."""
481
+
533
482
  pq_controls: Annotated[
534
483
  Optional[OutputDynatraceOtlpPqControls], pydantic.Field(alias="pqControls")
535
484
  ] = None
536
-
537
- @field_serializer("protocol")
538
- def serialize_protocol(self, value):
539
- if isinstance(value, str):
540
- try:
541
- return models.OutputDynatraceOtlpProtocol(value)
542
- except ValueError:
543
- return value
544
- return value
545
-
546
- @field_serializer("otlp_version")
547
- def serialize_otlp_version(self, value):
548
- if isinstance(value, str):
549
- try:
550
- return models.OutputDynatraceOTLPOTLPVersion(value)
551
- except ValueError:
552
- return value
553
- return value
554
-
555
- @field_serializer("compress")
556
- def serialize_compress(self, value):
557
- if isinstance(value, str):
558
- try:
559
- return models.OutputDynatraceOtlpCompressCompression(value)
560
- except ValueError:
561
- return value
562
- return value
563
-
564
- @field_serializer("http_compress")
565
- def serialize_http_compress(self, value):
566
- if isinstance(value, str):
567
- try:
568
- return models.OutputDynatraceOtlpHTTPCompressCompression(value)
569
- except ValueError:
570
- return value
571
- return value
572
-
573
- @field_serializer("failed_request_logging_mode")
574
- def serialize_failed_request_logging_mode(self, value):
575
- if isinstance(value, str):
576
- try:
577
- return models.OutputDynatraceOtlpFailedRequestLoggingMode(value)
578
- except ValueError:
579
- return value
580
- return value
581
-
582
- @field_serializer("endpoint_type")
583
- def serialize_endpoint_type(self, value):
584
- if isinstance(value, str):
585
- try:
586
- return models.EndpointType(value)
587
- except ValueError:
588
- return value
589
- return value
590
-
591
- @field_serializer("on_backpressure")
592
- def serialize_on_backpressure(self, value):
593
- if isinstance(value, str):
594
- try:
595
- return models.OutputDynatraceOtlpBackpressureBehavior(value)
596
- except ValueError:
597
- return value
598
- return value
599
-
600
- @field_serializer("pq_mode")
601
- def serialize_pq_mode(self, value):
602
- if isinstance(value, str):
603
- try:
604
- return models.OutputDynatraceOtlpMode(value)
605
- except ValueError:
606
- return value
607
- return value
608
-
609
- @field_serializer("pq_compress")
610
- def serialize_pq_compress(self, value):
611
- if isinstance(value, str):
612
- try:
613
- return models.OutputDynatraceOtlpPqCompressCompression(value)
614
- except ValueError:
615
- return value
616
- return value
617
-
618
- @field_serializer("pq_on_backpressure")
619
- def serialize_pq_on_backpressure(self, value):
620
- if isinstance(value, str):
621
- try:
622
- return models.OutputDynatraceOtlpQueueFullBehavior(value)
623
- except ValueError:
624
- return value
625
- return value