cribl-control-plane 0.0.21__py3-none-any.whl → 0.4.0b23__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.
Files changed (436) hide show
  1. cribl_control_plane/_hooks/clientcredentials.py +113 -48
  2. cribl_control_plane/_version.py +4 -4
  3. cribl_control_plane/acl.py +225 -0
  4. cribl_control_plane/auth_sdk.py +12 -176
  5. cribl_control_plane/basesdk.py +17 -1
  6. cribl_control_plane/branches.py +351 -0
  7. cribl_control_plane/commits.py +1403 -0
  8. cribl_control_plane/commits_files.py +391 -0
  9. cribl_control_plane/configs_versions.py +201 -0
  10. cribl_control_plane/cribl.py +495 -0
  11. cribl_control_plane/destinations.py +146 -805
  12. cribl_control_plane/destinations_pq.py +379 -0
  13. cribl_control_plane/errors/__init__.py +26 -10
  14. cribl_control_plane/errors/apierror.py +2 -0
  15. cribl_control_plane/errors/criblcontrolplaneerror.py +11 -7
  16. cribl_control_plane/errors/error.py +4 -2
  17. cribl_control_plane/errors/healthserverstatus_error.py +41 -0
  18. cribl_control_plane/errors/no_response_error.py +5 -1
  19. cribl_control_plane/errors/responsevalidationerror.py +2 -0
  20. cribl_control_plane/functions.py +367 -0
  21. cribl_control_plane/groups_configs.py +22 -0
  22. cribl_control_plane/groups_sdk.py +333 -578
  23. cribl_control_plane/health.py +38 -18
  24. cribl_control_plane/hectokens.py +503 -0
  25. cribl_control_plane/httpclient.py +0 -1
  26. cribl_control_plane/{lake.py → lakedatasets.py} +207 -115
  27. cribl_control_plane/models/__init__.py +3644 -5986
  28. cribl_control_plane/models/addhectokenrequest.py +7 -1
  29. cribl_control_plane/models/authtoken.py +5 -1
  30. cribl_control_plane/models/backupssettings_union.py +37 -0
  31. cribl_control_plane/models/{lookupversions.py → branchinfo.py} +4 -4
  32. cribl_control_plane/models/cacheconnection.py +30 -2
  33. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  34. cribl_control_plane/models/cloudprovider.py +2 -1
  35. cribl_control_plane/models/collectorazureblob.py +130 -0
  36. cribl_control_plane/models/collectorconf.py +56 -0
  37. cribl_control_plane/models/collectorcribllake.py +27 -0
  38. cribl_control_plane/models/collectordatabase.py +92 -0
  39. cribl_control_plane/models/collectorfilesystem.py +66 -0
  40. cribl_control_plane/models/collectorgooglecloudstorage.py +131 -0
  41. cribl_control_plane/models/collectorhealthcheck.py +269 -0
  42. cribl_control_plane/models/collectorrest.py +340 -0
  43. cribl_control_plane/models/collectors3.py +239 -0
  44. cribl_control_plane/models/collectorscript.py +59 -0
  45. cribl_control_plane/models/collectorsplunk.py +253 -0
  46. cribl_control_plane/models/configgroup.py +67 -11
  47. cribl_control_plane/models/configgroupcloud.py +17 -3
  48. cribl_control_plane/models/countedbranchinfo.py +20 -0
  49. cribl_control_plane/models/countedconfiggroup.py +20 -0
  50. cribl_control_plane/models/countedcribllakedataset.py +20 -0
  51. cribl_control_plane/models/counteddistributedsummary.py +20 -0
  52. cribl_control_plane/models/countedfunctionresponse.py +20 -0
  53. cribl_control_plane/models/countedgitcommitsummary.py +20 -0
  54. cribl_control_plane/models/countedgitcountresult.py +20 -0
  55. cribl_control_plane/models/countedgitdiffresult.py +20 -0
  56. cribl_control_plane/models/countedgitfilesresponse.py +20 -0
  57. cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
  58. cribl_control_plane/models/countedgitlogresult.py +20 -0
  59. cribl_control_plane/models/countedgitrevertresult.py +20 -0
  60. cribl_control_plane/models/countedgitshowresult.py +20 -0
  61. cribl_control_plane/models/countedgitstatusresult.py +20 -0
  62. cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
  63. cribl_control_plane/models/countedinputsplunkhec.py +20 -0
  64. cribl_control_plane/models/countedjobinfo.py +20 -0
  65. cribl_control_plane/models/countedmasterworkerentry.py +20 -0
  66. cribl_control_plane/models/countednumber.py +19 -0
  67. cribl_control_plane/models/{getversionbranchop.py → countedobject.py} +2 -6
  68. cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
  69. cribl_control_plane/models/countedoutputsamplesresponse.py +20 -0
  70. cribl_control_plane/models/countedoutputtestresponse.py +20 -0
  71. cribl_control_plane/models/countedpackinfo.py +20 -0
  72. cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
  73. cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
  74. cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
  75. cribl_control_plane/models/countedstring.py +19 -0
  76. cribl_control_plane/models/countedsystemsettingsconf.py +20 -0
  77. cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
  78. cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
  79. cribl_control_plane/models/createauthloginop.py +18 -0
  80. cribl_control_plane/models/createconfiggroupbyproductop.py +46 -0
  81. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +3 -21
  82. cribl_control_plane/models/createinputhectokenbyidop.py +3 -21
  83. cribl_control_plane/models/createoutputtestbyidop.py +3 -22
  84. cribl_control_plane/models/createroutesappendbyidop.py +4 -21
  85. cribl_control_plane/models/createversioncommitop.py +27 -20
  86. cribl_control_plane/models/createversionrevertop.py +7 -23
  87. cribl_control_plane/models/createversionundoop.py +7 -22
  88. cribl_control_plane/models/criblevent.py +15 -0
  89. cribl_control_plane/models/cribllakedataset.py +23 -3
  90. cribl_control_plane/models/cribllakedatasetupdate.py +95 -0
  91. cribl_control_plane/models/currentbranchresult.py +13 -0
  92. cribl_control_plane/models/datasetmetadata.py +18 -2
  93. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +43 -0
  94. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +5 -24
  95. cribl_control_plane/models/deleteinputbyidop.py +3 -22
  96. cribl_control_plane/models/deleteoutputbyidop.py +3 -22
  97. cribl_control_plane/models/deleteoutputpqbyidop.py +3 -21
  98. cribl_control_plane/models/deletepacksbyidop.py +3 -22
  99. cribl_control_plane/models/deletepipelinebyidop.py +3 -22
  100. cribl_control_plane/models/difffiles.py +130 -0
  101. cribl_control_plane/models/diffline.py +26 -0
  102. cribl_control_plane/models/difflinecontext.py +28 -0
  103. cribl_control_plane/models/difflinedelete.py +25 -0
  104. cribl_control_plane/models/difflineinsert.py +25 -0
  105. cribl_control_plane/models/distributedsummary.py +6 -0
  106. cribl_control_plane/models/functionaggregatemetrics.py +206 -0
  107. cribl_control_plane/models/functionaggregation.py +172 -0
  108. cribl_control_plane/models/functionautotimestamp.py +173 -0
  109. cribl_control_plane/models/functioncef.py +111 -0
  110. cribl_control_plane/models/functionchain.py +75 -0
  111. cribl_control_plane/models/functionclone.py +75 -0
  112. cribl_control_plane/models/functioncode.py +96 -0
  113. cribl_control_plane/models/functioncomment.py +75 -0
  114. cribl_control_plane/models/functiondistinct.py +99 -0
  115. cribl_control_plane/models/functiondnslookup.py +250 -0
  116. cribl_control_plane/models/functiondrop.py +73 -0
  117. cribl_control_plane/models/functiondropdimensions.py +87 -0
  118. cribl_control_plane/models/functiondynamicsampling.py +121 -0
  119. cribl_control_plane/models/functioneval.py +103 -0
  120. cribl_control_plane/models/functioneventbreaker.py +103 -0
  121. cribl_control_plane/models/functioneventstats.py +92 -0
  122. cribl_control_plane/models/functionexternaldata.py +73 -0
  123. cribl_control_plane/models/functionflatten.py +90 -0
  124. cribl_control_plane/models/functionfoldkeys.py +89 -0
  125. cribl_control_plane/models/functiongenstats.py +73 -0
  126. cribl_control_plane/models/functiongeoip.py +120 -0
  127. cribl_control_plane/models/functiongrok.py +95 -0
  128. cribl_control_plane/models/functionhandlebar.py +112 -0
  129. cribl_control_plane/models/functionjoin.py +112 -0
  130. cribl_control_plane/models/functionjsonunroll.py +80 -0
  131. cribl_control_plane/models/functionlakeexport.py +102 -0
  132. cribl_control_plane/models/functionlimit.py +75 -0
  133. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
  134. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
  135. cribl_control_plane/models/functionlookup.py +148 -0
  136. cribl_control_plane/models/functionmask.py +121 -0
  137. cribl_control_plane/models/functionmvexpand.py +128 -0
  138. cribl_control_plane/models/functionmvpull.py +99 -0
  139. cribl_control_plane/models/functionnotificationpolicies.py +186 -0
  140. cribl_control_plane/models/functionnotifications.py +85 -0
  141. cribl_control_plane/models/functionnotify.py +196 -0
  142. cribl_control_plane/models/functionnumerify.py +119 -0
  143. cribl_control_plane/models/functionotlplogs.py +82 -0
  144. cribl_control_plane/models/functionotlpmetrics.py +118 -0
  145. cribl_control_plane/models/functionotlptraces.py +111 -0
  146. cribl_control_plane/models/functionpack.py +80 -0
  147. cribl_control_plane/models/functionpivot.py +85 -0
  148. cribl_control_plane/models/functionpublishmetrics.py +153 -0
  149. cribl_control_plane/models/functionredis.py +173 -0
  150. cribl_control_plane/models/functionregexextract.py +112 -0
  151. cribl_control_plane/models/functionregexfilter.py +95 -0
  152. cribl_control_plane/models/functionrename.py +107 -0
  153. cribl_control_plane/models/functionresponse.py +242 -0
  154. cribl_control_plane/models/functionrollupmetrics.py +114 -0
  155. cribl_control_plane/models/functionsampling.py +90 -0
  156. cribl_control_plane/models/functionsend.py +141 -0
  157. cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
  158. cribl_control_plane/models/functionserde.py +161 -0
  159. cribl_control_plane/models/functionserialize.py +134 -0
  160. cribl_control_plane/models/functionsidlookup.py +93 -0
  161. cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
  162. cribl_control_plane/models/functionsort.py +97 -0
  163. cribl_control_plane/models/functionstore.py +132 -0
  164. cribl_control_plane/models/functionsuppress.py +115 -0
  165. cribl_control_plane/models/functiontee.py +90 -0
  166. cribl_control_plane/models/functiontrimtimestamp.py +75 -0
  167. cribl_control_plane/models/functionunion.py +80 -0
  168. cribl_control_plane/models/functionunroll.py +80 -0
  169. cribl_control_plane/models/functionwindow.py +96 -0
  170. cribl_control_plane/models/functionxmlunroll.py +92 -0
  171. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +63 -0
  172. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +63 -0
  173. cribl_control_plane/models/getconfiggroupbyproductandidop.py +53 -0
  174. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +43 -0
  175. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +5 -24
  176. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +56 -16
  177. cribl_control_plane/models/getfunctionsbyidop.py +18 -0
  178. cribl_control_plane/models/getinputbyidop.py +3 -22
  179. cribl_control_plane/models/getmasterworkerentryop.py +22 -0
  180. cribl_control_plane/models/getoutputbyidop.py +3 -22
  181. cribl_control_plane/models/getoutputpqbyidop.py +3 -21
  182. cribl_control_plane/models/getoutputsamplesbyidop.py +3 -22
  183. cribl_control_plane/models/getpacksbyidop.py +18 -0
  184. cribl_control_plane/models/getpacksop.py +3 -21
  185. cribl_control_plane/models/getpipelinebyidop.py +3 -22
  186. cribl_control_plane/models/getroutesbyidop.py +3 -22
  187. cribl_control_plane/models/getsummaryop.py +23 -32
  188. cribl_control_plane/models/getversioncountop.py +10 -27
  189. cribl_control_plane/models/getversiondiffop.py +12 -28
  190. cribl_control_plane/models/getversionfilesop.py +10 -28
  191. cribl_control_plane/models/getversionop.py +30 -0
  192. cribl_control_plane/models/getversionshowop.py +12 -28
  193. cribl_control_plane/models/getversionstatusop.py +7 -23
  194. cribl_control_plane/models/gitcommitsummary.py +3 -3
  195. cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
  196. cribl_control_plane/models/gitdiffresult.py +16 -0
  197. cribl_control_plane/models/gitfilesresponse.py +7 -5
  198. cribl_control_plane/models/gitinfo.py +14 -3
  199. cribl_control_plane/models/gitlogresult.py +33 -0
  200. cribl_control_plane/models/gitrevertparams.py +3 -3
  201. cribl_control_plane/models/gitrevertresult.py +5 -5
  202. cribl_control_plane/models/gitshowresult.py +19 -0
  203. cribl_control_plane/models/gitstatusresult.py +0 -3
  204. cribl_control_plane/models/groupcreaterequest.py +172 -0
  205. cribl_control_plane/models/hbcriblinfo.py +42 -7
  206. cribl_control_plane/models/healthserverstatus.py +55 -0
  207. cribl_control_plane/models/heartbeatmetadata.py +6 -11
  208. cribl_control_plane/models/input.py +89 -81
  209. cribl_control_plane/models/inputappscope.py +131 -35
  210. cribl_control_plane/models/inputazureblob.py +62 -6
  211. cribl_control_plane/models/inputcloudflarehec.py +518 -0
  212. cribl_control_plane/models/inputcollection.py +49 -6
  213. cribl_control_plane/models/inputconfluentcloud.py +262 -22
  214. cribl_control_plane/models/inputcribl.py +52 -9
  215. cribl_control_plane/models/inputcriblhttp.py +124 -33
  216. cribl_control_plane/models/inputcribllakehttp.py +199 -29
  217. cribl_control_plane/models/inputcriblmetrics.py +53 -9
  218. cribl_control_plane/models/inputcribltcp.py +125 -27
  219. cribl_control_plane/models/inputcrowdstrike.py +99 -10
  220. cribl_control_plane/models/inputdatadogagent.py +101 -27
  221. cribl_control_plane/models/inputdatagen.py +47 -4
  222. cribl_control_plane/models/inputedgeprometheus.py +215 -58
  223. cribl_control_plane/models/inputelastic.py +170 -39
  224. cribl_control_plane/models/inputeventhub.py +212 -9
  225. cribl_control_plane/models/inputexec.py +59 -6
  226. cribl_control_plane/models/inputfile.py +83 -15
  227. cribl_control_plane/models/inputfirehose.py +100 -27
  228. cribl_control_plane/models/inputgooglepubsub.py +83 -15
  229. cribl_control_plane/models/{inputgrafana_union.py → inputgrafana.py} +261 -67
  230. cribl_control_plane/models/inputhttp.py +100 -27
  231. cribl_control_plane/models/inputhttpraw.py +100 -27
  232. cribl_control_plane/models/inputjournalfiles.py +51 -7
  233. cribl_control_plane/models/inputkafka.py +257 -19
  234. cribl_control_plane/models/inputkinesis.py +133 -17
  235. cribl_control_plane/models/inputkubeevents.py +52 -9
  236. cribl_control_plane/models/inputkubelogs.py +66 -13
  237. cribl_control_plane/models/inputkubemetrics.py +66 -13
  238. cribl_control_plane/models/inputloki.py +116 -30
  239. cribl_control_plane/models/inputmetrics.py +97 -24
  240. cribl_control_plane/models/inputmodeldriventelemetry.py +110 -29
  241. cribl_control_plane/models/inputmsk.py +148 -21
  242. cribl_control_plane/models/inputnetflow.py +50 -7
  243. cribl_control_plane/models/inputoffice365mgmt.py +115 -17
  244. cribl_control_plane/models/inputoffice365msgtrace.py +117 -19
  245. cribl_control_plane/models/inputoffice365service.py +117 -19
  246. cribl_control_plane/models/inputopentelemetry.py +146 -35
  247. cribl_control_plane/models/inputprometheus.py +196 -47
  248. cribl_control_plane/models/inputprometheusrw.py +117 -30
  249. cribl_control_plane/models/inputrawudp.py +50 -7
  250. cribl_control_plane/models/inputs3.py +85 -8
  251. cribl_control_plane/models/inputs3inventory.py +99 -10
  252. cribl_control_plane/models/inputsecuritylake.py +100 -10
  253. cribl_control_plane/models/inputsnmp.py +115 -24
  254. cribl_control_plane/models/inputsplunk.py +133 -31
  255. cribl_control_plane/models/inputsplunkhec.py +122 -32
  256. cribl_control_plane/models/inputsplunksearch.py +115 -18
  257. cribl_control_plane/models/inputsqs.py +102 -19
  258. cribl_control_plane/models/{inputsyslog_union.py → inputsyslog.py} +193 -51
  259. cribl_control_plane/models/inputsystemmetrics.py +207 -37
  260. cribl_control_plane/models/inputsystemstate.py +66 -13
  261. cribl_control_plane/models/inputtcp.py +125 -29
  262. cribl_control_plane/models/inputtcpjson.py +115 -29
  263. cribl_control_plane/models/inputwef.py +151 -22
  264. cribl_control_plane/models/inputwindowsmetrics.py +191 -38
  265. cribl_control_plane/models/inputwineventlogs.py +93 -11
  266. cribl_control_plane/models/inputwiz.py +176 -11
  267. cribl_control_plane/models/inputwizwebhook.py +466 -0
  268. cribl_control_plane/models/inputzscalerhec.py +122 -32
  269. cribl_control_plane/models/jobinfo.py +34 -0
  270. cribl_control_plane/models/jobstatus.py +48 -0
  271. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  272. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  273. cribl_control_plane/models/listconfiggroupbyproductop.py +46 -0
  274. cribl_control_plane/models/listmasterworkerentryop.py +64 -0
  275. cribl_control_plane/models/logininfo.py +3 -3
  276. cribl_control_plane/models/masterworkerentry.py +20 -13
  277. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  278. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  279. cribl_control_plane/models/nodeprovidedinfo.py +13 -11
  280. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  281. cribl_control_plane/models/nodeupgradestate.py +2 -1
  282. cribl_control_plane/models/nodeupgradestatus.py +51 -5
  283. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  284. cribl_control_plane/models/output.py +103 -89
  285. cribl_control_plane/models/outputazureblob.py +174 -21
  286. cribl_control_plane/models/outputazuredataexplorer.py +517 -93
  287. cribl_control_plane/models/outputazureeventhub.py +318 -34
  288. cribl_control_plane/models/outputazurelogs.py +145 -26
  289. cribl_control_plane/models/outputchronicle.py +532 -0
  290. cribl_control_plane/models/outputclickhouse.py +208 -37
  291. cribl_control_plane/models/outputcloudflarer2.py +632 -0
  292. cribl_control_plane/models/outputcloudwatch.py +132 -26
  293. cribl_control_plane/models/outputconfluentcloud.py +387 -46
  294. cribl_control_plane/models/outputcriblhttp.py +203 -36
  295. cribl_control_plane/models/outputcribllake.py +161 -21
  296. cribl_control_plane/models/outputcribltcp.py +199 -34
  297. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +176 -32
  298. cribl_control_plane/models/outputdatabricks.py +501 -0
  299. cribl_control_plane/models/outputdatadog.py +204 -36
  300. cribl_control_plane/models/outputdataset.py +186 -34
  301. cribl_control_plane/models/outputdevnull.py +5 -5
  302. cribl_control_plane/models/outputdiskspool.py +22 -7
  303. cribl_control_plane/models/outputdls3.py +238 -29
  304. cribl_control_plane/models/outputdynatracehttp.py +211 -37
  305. cribl_control_plane/models/outputdynatraceotlp.py +213 -39
  306. cribl_control_plane/models/outputelastic.py +199 -30
  307. cribl_control_plane/models/outputelasticcloud.py +174 -29
  308. cribl_control_plane/models/outputexabeam.py +99 -13
  309. cribl_control_plane/models/outputfilesystem.py +139 -14
  310. cribl_control_plane/models/outputgooglechronicle.py +216 -35
  311. cribl_control_plane/models/outputgooglecloudlogging.py +177 -34
  312. cribl_control_plane/models/outputgooglecloudstorage.py +220 -29
  313. cribl_control_plane/models/outputgooglepubsub.py +138 -51
  314. cribl_control_plane/models/outputgrafanacloud.py +386 -70
  315. cribl_control_plane/models/outputgraphite.py +131 -28
  316. cribl_control_plane/models/outputhoneycomb.py +145 -26
  317. cribl_control_plane/models/outputhumiohec.py +165 -31
  318. cribl_control_plane/models/outputinfluxdb.py +165 -28
  319. cribl_control_plane/models/outputkafka.py +378 -41
  320. cribl_control_plane/models/outputkinesis.py +168 -30
  321. cribl_control_plane/models/outputloki.py +171 -27
  322. cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
  323. cribl_control_plane/models/outputminio.py +228 -28
  324. cribl_control_plane/models/outputmsk.py +270 -43
  325. cribl_control_plane/models/outputnewrelic.py +176 -34
  326. cribl_control_plane/models/outputnewrelicevents.py +166 -31
  327. cribl_control_plane/models/outputopentelemetry.py +240 -40
  328. cribl_control_plane/models/outputprometheus.py +145 -26
  329. cribl_control_plane/models/outputring.py +54 -13
  330. cribl_control_plane/models/outputs3.py +238 -31
  331. cribl_control_plane/models/outputsecuritylake.py +182 -21
  332. cribl_control_plane/models/outputsentinel.py +175 -32
  333. cribl_control_plane/models/outputsentineloneaisiem.py +184 -38
  334. cribl_control_plane/models/outputservicenow.py +226 -41
  335. cribl_control_plane/models/outputsignalfx.py +145 -26
  336. cribl_control_plane/models/outputsns.py +146 -28
  337. cribl_control_plane/models/outputsplunk.py +209 -39
  338. cribl_control_plane/models/outputsplunkhec.py +243 -31
  339. cribl_control_plane/models/outputsplunklb.py +266 -46
  340. cribl_control_plane/models/outputsqs.py +166 -36
  341. cribl_control_plane/models/outputstatsd.py +130 -28
  342. cribl_control_plane/models/outputstatsdext.py +131 -28
  343. cribl_control_plane/models/outputsumologic.py +146 -25
  344. cribl_control_plane/models/outputsyslog.py +323 -51
  345. cribl_control_plane/models/outputtcpjson.py +191 -37
  346. cribl_control_plane/models/outputwavefront.py +145 -26
  347. cribl_control_plane/models/outputwebhook.py +216 -38
  348. cribl_control_plane/models/outputxsiam.py +148 -31
  349. cribl_control_plane/models/packinfo.py +11 -8
  350. cribl_control_plane/models/packinstallinfo.py +14 -11
  351. cribl_control_plane/models/packrequestbody_union.py +140 -0
  352. cribl_control_plane/models/packupgraderequest.py +26 -0
  353. cribl_control_plane/models/piisettings_union.py +31 -0
  354. cribl_control_plane/models/productscore.py +10 -0
  355. cribl_control_plane/models/rbacresource.py +2 -1
  356. cribl_control_plane/models/resourcepolicy.py +15 -2
  357. cribl_control_plane/models/rollbacksettings_union.py +44 -0
  358. cribl_control_plane/models/routeconf.py +3 -4
  359. cribl_control_plane/models/routes.py +0 -24
  360. cribl_control_plane/models/runnablejob.py +27 -0
  361. cribl_control_plane/models/runnablejobcollection.py +628 -0
  362. cribl_control_plane/models/runnablejobexecutor.py +360 -0
  363. cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
  364. cribl_control_plane/models/schemeclientoauth.py +5 -0
  365. cribl_control_plane/models/snisettings_union.py +31 -0
  366. cribl_control_plane/models/systemsettingsconf.py +291 -0
  367. cribl_control_plane/models/tlssettings_union.py +43 -0
  368. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +56 -0
  369. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +53 -0
  370. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +14 -29
  371. cribl_control_plane/models/updatehectokenrequest.py +7 -1
  372. cribl_control_plane/models/updateinputbyidop.py +5 -23
  373. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +5 -23
  374. cribl_control_plane/models/updateoutputbyidop.py +5 -23
  375. cribl_control_plane/models/updatepacksbyidop.py +12 -50
  376. cribl_control_plane/models/updatepacksop.py +12 -24
  377. cribl_control_plane/models/updatepipelinebyidop.py +5 -23
  378. cribl_control_plane/models/updateroutesbyidop.py +8 -27
  379. cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
  380. cribl_control_plane/models/upgradepackageurls.py +20 -0
  381. cribl_control_plane/models/upgradesettings.py +38 -0
  382. cribl_control_plane/models/uploadpackresponse.py +13 -0
  383. cribl_control_plane/models/{appmode.py → workertypes.py} +2 -5
  384. cribl_control_plane/{workers_sdk.py → nodes.py} +102 -234
  385. cribl_control_plane/packs.py +385 -184
  386. cribl_control_plane/pipelines.py +116 -66
  387. cribl_control_plane/routes_sdk.py +102 -70
  388. cribl_control_plane/samples.py +407 -0
  389. cribl_control_plane/sdk.py +35 -25
  390. cribl_control_plane/settings.py +20 -0
  391. cribl_control_plane/sources.py +143 -545
  392. cribl_control_plane/statuses.py +195 -0
  393. cribl_control_plane/summaries.py +195 -0
  394. cribl_control_plane/system_sdk.py +20 -0
  395. cribl_control_plane/teams.py +36 -28
  396. cribl_control_plane/tokens.py +210 -0
  397. cribl_control_plane/utils/__init__.py +18 -5
  398. cribl_control_plane/utils/annotations.py +32 -8
  399. cribl_control_plane/utils/eventstreaming.py +10 -0
  400. cribl_control_plane/utils/forms.py +21 -10
  401. cribl_control_plane/utils/queryparams.py +14 -2
  402. cribl_control_plane/utils/retries.py +69 -5
  403. cribl_control_plane/utils/security.py +5 -0
  404. cribl_control_plane/utils/unmarshal_json_response.py +15 -1
  405. cribl_control_plane/versions.py +31 -0
  406. cribl_control_plane/{distributed.py → versions_configs.py} +29 -35
  407. cribl_control_plane-0.4.0b23.dist-info/METADATA +855 -0
  408. cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
  409. {cribl_control_plane-0.0.21.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
  410. cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
  411. cribl_control_plane/errors/healthstatus_error.py +0 -32
  412. cribl_control_plane/models/createinputop.py +0 -18238
  413. cribl_control_plane/models/createoutputop.py +0 -18437
  414. cribl_control_plane/models/createpipelineop.py +0 -24
  415. cribl_control_plane/models/createproductsgroupsbyproductop.py +0 -54
  416. cribl_control_plane/models/createversionpushop.py +0 -23
  417. cribl_control_plane/models/createversionsyncop.py +0 -23
  418. cribl_control_plane/models/deletegroupsbyidop.py +0 -37
  419. cribl_control_plane/models/getgroupsaclbyidop.py +0 -63
  420. cribl_control_plane/models/getgroupsbyidop.py +0 -49
  421. cribl_control_plane/models/getgroupsconfigversionbyidop.py +0 -36
  422. cribl_control_plane/models/getproductsgroupsaclteamsbyproductandidop.py +0 -78
  423. cribl_control_plane/models/getproductsgroupsbyproductop.py +0 -58
  424. cribl_control_plane/models/getsummaryworkersop.py +0 -39
  425. cribl_control_plane/models/getversioncurrentbranchop.py +0 -23
  426. cribl_control_plane/models/getworkersop.py +0 -82
  427. cribl_control_plane/models/healthstatus.py +0 -33
  428. cribl_control_plane/models/packrequestbody.py +0 -75
  429. cribl_control_plane/models/restartresponse.py +0 -26
  430. cribl_control_plane/models/routesroute_input.py +0 -67
  431. cribl_control_plane/models/updategroupsbyidop.py +0 -48
  432. cribl_control_plane/models/updategroupsdeploybyidop.py +0 -46
  433. cribl_control_plane/models/updateworkersrestartop.py +0 -24
  434. cribl_control_plane/versioning.py +0 -2309
  435. cribl_control_plane-0.0.21.dist-info/METADATA +0 -561
  436. cribl_control_plane-0.0.21.dist-info/RECORD +0 -301
@@ -1,9 +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
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
7
11
  from typing import List, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
@@ -23,20 +27,32 @@ class InputWindowsMetricsConnection(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputWindowsMetricsPqMode(str, Enum):
30
+ class InputWindowsMetricsPqMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
31
  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."""
28
32
 
33
+ # Smart
29
34
  SMART = "smart"
35
+ # Always On
30
36
  ALWAYS = "always"
31
37
 
32
38
 
33
- class InputWindowsMetricsCompression(str, Enum):
39
+ class InputWindowsMetricsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
40
  r"""Codec to use to compress the persisted data"""
35
41
 
42
+ # None
36
43
  NONE = "none"
44
+ # Gzip
37
45
  GZIP = "gzip"
38
46
 
39
47
 
48
+ class InputWindowsMetricsPqControlsTypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputWindowsMetricsPqControls(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputWindowsMetricsPqTypedDict(TypedDict):
41
57
  mode: NotRequired[InputWindowsMetricsPqMode]
42
58
  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."""
@@ -52,10 +68,13 @@ class InputWindowsMetricsPqTypedDict(TypedDict):
52
68
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
53
69
  compress: NotRequired[InputWindowsMetricsCompression]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputWindowsMetricsPqControlsTypedDict]
55
72
 
56
73
 
57
74
  class InputWindowsMetricsPq(BaseModel):
58
- mode: Optional[InputWindowsMetricsPqMode] = InputWindowsMetricsPqMode.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputWindowsMetricsPqMode], PlainValidator(validate_open_enum(False))
77
+ ] = InputWindowsMetricsPqMode.ALWAYS
59
78
  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."""
60
79
 
61
80
  max_buffer_size: Annotated[
@@ -79,27 +98,58 @@ class InputWindowsMetricsPq(BaseModel):
79
98
  path: Optional[str] = "$CRIBL_HOME/state/queues"
80
99
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
81
100
 
82
- compress: Optional[InputWindowsMetricsCompression] = (
83
- InputWindowsMetricsCompression.NONE
84
- )
101
+ compress: Annotated[
102
+ Optional[InputWindowsMetricsCompression],
103
+ PlainValidator(validate_open_enum(False)),
104
+ ] = InputWindowsMetricsCompression.NONE
85
105
  r"""Codec to use to compress the persisted data"""
86
106
 
87
-
88
- class InputWindowsMetricsHostMode(str, Enum):
107
+ pq_controls: Annotated[
108
+ Optional[InputWindowsMetricsPqControls], pydantic.Field(alias="pqControls")
109
+ ] = None
110
+
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
+
130
+ class InputWindowsMetricsHostMode(str, Enum, metaclass=utils.OpenEnumMeta):
89
131
  r"""Select level of detail for host metrics"""
90
132
 
133
+ # Basic
91
134
  BASIC = "basic"
135
+ # All
92
136
  ALL = "all"
137
+ # Custom
93
138
  CUSTOM = "custom"
139
+ # Disabled
94
140
  DISABLED = "disabled"
95
141
 
96
142
 
97
- class InputWindowsMetricsSystemMode(str, Enum):
143
+ class InputWindowsMetricsSystemMode(str, Enum, metaclass=utils.OpenEnumMeta):
98
144
  r"""Select the level of details for system metrics"""
99
145
 
146
+ # Basic
100
147
  BASIC = "basic"
148
+ # All
101
149
  ALL = "all"
150
+ # Custom
102
151
  CUSTOM = "custom"
152
+ # Disabled
103
153
  DISABLED = "disabled"
104
154
 
105
155
 
@@ -111,19 +161,35 @@ class InputWindowsMetricsSystemTypedDict(TypedDict):
111
161
 
112
162
 
113
163
  class InputWindowsMetricsSystem(BaseModel):
114
- mode: Optional[InputWindowsMetricsSystemMode] = InputWindowsMetricsSystemMode.BASIC
164
+ mode: Annotated[
165
+ Optional[InputWindowsMetricsSystemMode],
166
+ PlainValidator(validate_open_enum(False)),
167
+ ] = InputWindowsMetricsSystemMode.BASIC
115
168
  r"""Select the level of details for system metrics"""
116
169
 
117
170
  detail: Optional[bool] = False
118
171
  r"""Generate metrics for all system information"""
119
172
 
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
120
181
 
121
- class InputWindowsMetricsCPUMode(str, Enum):
182
+
183
+ class InputWindowsMetricsCPUMode(str, Enum, metaclass=utils.OpenEnumMeta):
122
184
  r"""Select the level of details for CPU metrics"""
123
185
 
186
+ # Basic
124
187
  BASIC = "basic"
188
+ # All
125
189
  ALL = "all"
190
+ # Custom
126
191
  CUSTOM = "custom"
192
+ # Disabled
127
193
  DISABLED = "disabled"
128
194
 
129
195
 
@@ -139,7 +205,9 @@ class InputWindowsMetricsCPUTypedDict(TypedDict):
139
205
 
140
206
 
141
207
  class InputWindowsMetricsCPU(BaseModel):
142
- mode: Optional[InputWindowsMetricsCPUMode] = InputWindowsMetricsCPUMode.BASIC
208
+ mode: Annotated[
209
+ Optional[InputWindowsMetricsCPUMode], PlainValidator(validate_open_enum(False))
210
+ ] = InputWindowsMetricsCPUMode.BASIC
143
211
  r"""Select the level of details for CPU metrics"""
144
212
 
145
213
  per_cpu: Annotated[Optional[bool], pydantic.Field(alias="perCpu")] = False
@@ -151,13 +219,26 @@ class InputWindowsMetricsCPU(BaseModel):
151
219
  time: Optional[bool] = False
152
220
  r"""Generate raw, monotonic CPU time counters"""
153
221
 
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
+
154
231
 
155
- class InputWindowsMetricsMemoryMode(str, Enum):
232
+ class InputWindowsMetricsMemoryMode(str, Enum, metaclass=utils.OpenEnumMeta):
156
233
  r"""Select the level of details for memory metrics"""
157
234
 
235
+ # Basic
158
236
  BASIC = "basic"
237
+ # All
159
238
  ALL = "all"
239
+ # Custom
160
240
  CUSTOM = "custom"
241
+ # Disabled
161
242
  DISABLED = "disabled"
162
243
 
163
244
 
@@ -169,39 +250,64 @@ class InputWindowsMetricsMemoryTypedDict(TypedDict):
169
250
 
170
251
 
171
252
  class InputWindowsMetricsMemory(BaseModel):
172
- mode: Optional[InputWindowsMetricsMemoryMode] = InputWindowsMetricsMemoryMode.BASIC
253
+ mode: Annotated[
254
+ Optional[InputWindowsMetricsMemoryMode],
255
+ PlainValidator(validate_open_enum(False)),
256
+ ] = InputWindowsMetricsMemoryMode.BASIC
173
257
  r"""Select the level of details for memory metrics"""
174
258
 
175
259
  detail: Optional[bool] = False
176
260
  r"""Generate metrics for all memory states"""
177
261
 
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
+
178
271
 
179
- class InputWindowsMetricsNetworkMode(str, Enum):
272
+ class InputWindowsMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
180
273
  r"""Select the level of details for network metrics"""
181
274
 
275
+ # Basic
182
276
  BASIC = "basic"
277
+ # All
183
278
  ALL = "all"
279
+ # Custom
184
280
  CUSTOM = "custom"
281
+ # Disabled
185
282
  DISABLED = "disabled"
186
283
 
187
284
 
188
285
  class InputWindowsMetricsNetworkTypedDict(TypedDict):
189
286
  mode: NotRequired[InputWindowsMetricsNetworkMode]
190
287
  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"""
191
292
  devices: NotRequired[List[str]]
192
293
  r"""Network interfaces to include/exclude. All interfaces are included if this list is empty."""
193
294
  per_interface: NotRequired[bool]
194
295
  r"""Generate separate metrics for each interface"""
195
- detail: NotRequired[bool]
196
- r"""Generate full network metrics"""
197
296
 
198
297
 
199
298
  class InputWindowsMetricsNetwork(BaseModel):
200
- mode: Optional[InputWindowsMetricsNetworkMode] = (
201
- InputWindowsMetricsNetworkMode.BASIC
202
- )
299
+ mode: Annotated[
300
+ Optional[InputWindowsMetricsNetworkMode],
301
+ PlainValidator(validate_open_enum(False)),
302
+ ] = InputWindowsMetricsNetworkMode.BASIC
203
303
  r"""Select the level of details for network metrics"""
204
304
 
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
+
205
311
  devices: Optional[List[str]] = None
206
312
  r"""Network interfaces to include/exclude. All interfaces are included if this list is empty."""
207
313
 
@@ -210,37 +316,63 @@ class InputWindowsMetricsNetwork(BaseModel):
210
316
  )
211
317
  r"""Generate separate metrics for each interface"""
212
318
 
213
- detail: Optional[bool] = False
214
- r"""Generate full network metrics"""
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
215
327
 
216
328
 
217
- class InputWindowsMetricsDiskMode(str, Enum):
329
+ class InputWindowsMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
218
330
  r"""Select the level of details for disk metrics"""
219
331
 
332
+ # Basic
220
333
  BASIC = "basic"
334
+ # All
221
335
  ALL = "all"
336
+ # Custom
222
337
  CUSTOM = "custom"
338
+ # Disabled
223
339
  DISABLED = "disabled"
224
340
 
225
341
 
226
342
  class InputWindowsMetricsDiskTypedDict(TypedDict):
227
343
  mode: NotRequired[InputWindowsMetricsDiskMode]
228
344
  r"""Select the level of details for disk metrics"""
229
- volumes: NotRequired[List[str]]
230
- 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."""
231
345
  per_volume: NotRequired[bool]
232
346
  r"""Generate separate metrics for each volume"""
347
+ detail: NotRequired[bool]
348
+ r"""Generate full disk metrics"""
349
+ volumes: NotRequired[List[str]]
350
+ 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."""
233
351
 
234
352
 
235
353
  class InputWindowsMetricsDisk(BaseModel):
236
- mode: Optional[InputWindowsMetricsDiskMode] = InputWindowsMetricsDiskMode.BASIC
354
+ mode: Annotated[
355
+ Optional[InputWindowsMetricsDiskMode], PlainValidator(validate_open_enum(False))
356
+ ] = InputWindowsMetricsDiskMode.BASIC
237
357
  r"""Select the level of details for disk metrics"""
238
358
 
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
+
239
365
  volumes: Optional[List[str]] = None
240
366
  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."""
241
367
 
242
- per_volume: Annotated[Optional[bool], pydantic.Field(alias="perVolume")] = False
243
- r"""Generate separate metrics for each volume"""
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
244
376
 
245
377
 
246
378
  class InputWindowsMetricsCustomTypedDict(TypedDict):
@@ -270,11 +402,22 @@ class InputWindowsMetricsHostTypedDict(TypedDict):
270
402
 
271
403
 
272
404
  class InputWindowsMetricsHost(BaseModel):
273
- mode: Optional[InputWindowsMetricsHostMode] = InputWindowsMetricsHostMode.BASIC
405
+ mode: Annotated[
406
+ Optional[InputWindowsMetricsHostMode], PlainValidator(validate_open_enum(False))
407
+ ] = InputWindowsMetricsHostMode.BASIC
274
408
  r"""Select level of detail for host metrics"""
275
409
 
276
410
  custom: Optional[InputWindowsMetricsCustom] = None
277
411
 
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
+
278
421
 
279
422
  class InputWindowsMetricsSetTypedDict(TypedDict):
280
423
  name: str
@@ -315,7 +458,7 @@ class InputWindowsMetricsMetadatum(BaseModel):
315
458
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
316
459
 
317
460
 
318
- class InputWindowsMetricsDataCompressionFormat(str, Enum):
461
+ class InputWindowsMetricsDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
319
462
  NONE = "none"
320
463
  GZIP = "gzip"
321
464
 
@@ -347,20 +490,30 @@ class InputWindowsMetricsPersistence(BaseModel):
347
490
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
348
491
  r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
349
492
 
350
- compress: Optional[InputWindowsMetricsDataCompressionFormat] = (
351
- InputWindowsMetricsDataCompressionFormat.GZIP
352
- )
493
+ compress: Annotated[
494
+ Optional[InputWindowsMetricsDataCompressionFormat],
495
+ PlainValidator(validate_open_enum(False)),
496
+ ] = InputWindowsMetricsDataCompressionFormat.GZIP
353
497
 
354
498
  dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = (
355
499
  "$CRIBL_HOME/state/windows_metrics"
356
500
  )
357
501
  r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/windows_metrics"""
358
502
 
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
+
359
512
 
360
513
  class InputWindowsMetricsTypedDict(TypedDict):
361
- id: str
362
- r"""Unique ID for this input"""
363
514
  type: InputWindowsMetricsType
515
+ id: NotRequired[str]
516
+ r"""Unique ID for this input"""
364
517
  disabled: NotRequired[bool]
365
518
  pipeline: NotRequired[str]
366
519
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -388,11 +541,11 @@ class InputWindowsMetricsTypedDict(TypedDict):
388
541
 
389
542
 
390
543
  class InputWindowsMetrics(BaseModel):
391
- id: str
392
- r"""Unique ID for this input"""
393
-
394
544
  type: InputWindowsMetricsType
395
545
 
546
+ id: Optional[str] = None
547
+ r"""Unique ID for this input"""
548
+
396
549
  disabled: Optional[bool] = False
397
550
 
398
551
  pipeline: Optional[str] = None
@@ -1,9 +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
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
7
11
  from typing import List, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
@@ -23,20 +27,32 @@ class InputWinEventLogsConnection(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputWinEventLogsMode(str, Enum):
30
+ class InputWinEventLogsMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
31
  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."""
28
32
 
33
+ # Smart
29
34
  SMART = "smart"
35
+ # Always On
30
36
  ALWAYS = "always"
31
37
 
32
38
 
33
- class InputWinEventLogsCompression(str, Enum):
39
+ class InputWinEventLogsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
40
  r"""Codec to use to compress the persisted data"""
35
41
 
42
+ # None
36
43
  NONE = "none"
44
+ # Gzip
37
45
  GZIP = "gzip"
38
46
 
39
47
 
48
+ class InputWinEventLogsPqControlsTypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputWinEventLogsPqControls(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputWinEventLogsPqTypedDict(TypedDict):
41
57
  mode: NotRequired[InputWinEventLogsMode]
42
58
  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."""
@@ -52,10 +68,13 @@ class InputWinEventLogsPqTypedDict(TypedDict):
52
68
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
53
69
  compress: NotRequired[InputWinEventLogsCompression]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputWinEventLogsPqControlsTypedDict]
55
72
 
56
73
 
57
74
  class InputWinEventLogsPq(BaseModel):
58
- mode: Optional[InputWinEventLogsMode] = InputWinEventLogsMode.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputWinEventLogsMode], PlainValidator(validate_open_enum(False))
77
+ ] = InputWinEventLogsMode.ALWAYS
59
78
  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."""
60
79
 
61
80
  max_buffer_size: Annotated[
@@ -79,21 +98,50 @@ class InputWinEventLogsPq(BaseModel):
79
98
  path: Optional[str] = "$CRIBL_HOME/state/queues"
80
99
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
81
100
 
82
- compress: Optional[InputWinEventLogsCompression] = InputWinEventLogsCompression.NONE
101
+ compress: Annotated[
102
+ Optional[InputWinEventLogsCompression],
103
+ PlainValidator(validate_open_enum(False)),
104
+ ] = InputWinEventLogsCompression.NONE
83
105
  r"""Codec to use to compress the persisted data"""
84
106
 
85
-
86
- class ReadMode(str, Enum):
107
+ pq_controls: Annotated[
108
+ Optional[InputWinEventLogsPqControls], pydantic.Field(alias="pqControls")
109
+ ] = None
110
+
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
+
130
+ class ReadMode(str, Enum, metaclass=utils.OpenEnumMeta):
87
131
  r"""Read all stored and future event logs, or only future events"""
88
132
 
133
+ # Entire log
89
134
  OLDEST = "oldest"
135
+ # From last entry
90
136
  NEWEST = "newest"
91
137
 
92
138
 
93
- class EventFormat(str, Enum):
139
+ class EventFormat(str, Enum, metaclass=utils.OpenEnumMeta):
94
140
  r"""Format of individual events"""
95
141
 
142
+ # JSON
96
143
  JSON = "json"
144
+ # XML
97
145
  XML = "xml"
98
146
 
99
147
 
@@ -145,6 +193,10 @@ class InputWinEventLogsTypedDict(TypedDict):
145
193
  max_event_bytes: NotRequired[float]
146
194
  r"""The maximum number of bytes in an event before it is flushed to the pipelines"""
147
195
  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)"""
148
200
 
149
201
 
150
202
  class InputWinEventLogs(BaseModel):
@@ -180,13 +232,15 @@ class InputWinEventLogs(BaseModel):
180
232
 
181
233
  pq: Optional[InputWinEventLogsPq] = None
182
234
 
183
- read_mode: Annotated[Optional[ReadMode], pydantic.Field(alias="readMode")] = (
184
- ReadMode.OLDEST
185
- )
235
+ read_mode: Annotated[
236
+ Annotated[Optional[ReadMode], PlainValidator(validate_open_enum(False))],
237
+ pydantic.Field(alias="readMode"),
238
+ ] = ReadMode.NEWEST
186
239
  r"""Read all stored and future event logs, or only future events"""
187
240
 
188
241
  event_format: Annotated[
189
- Optional[EventFormat], pydantic.Field(alias="eventFormat")
242
+ Annotated[Optional[EventFormat], PlainValidator(validate_open_enum(False))],
243
+ pydantic.Field(alias="eventFormat"),
190
244
  ] = EventFormat.JSON
191
245
  r"""Format of individual events"""
192
246
 
@@ -210,3 +264,31 @@ class InputWinEventLogs(BaseModel):
210
264
  r"""The maximum number of bytes in an event before it is flushed to the pipelines"""
211
265
 
212
266
  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