cribl-control-plane 0.0.39__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 (403) hide show
  1. cribl_control_plane/_hooks/clientcredentials.py +92 -42
  2. cribl_control_plane/_version.py +4 -4
  3. cribl_control_plane/acl.py +21 -9
  4. cribl_control_plane/auth_sdk.py +6 -3
  5. cribl_control_plane/basesdk.py +17 -1
  6. cribl_control_plane/branches.py +28 -8
  7. cribl_control_plane/commits.py +119 -47
  8. cribl_control_plane/commits_files.py +44 -24
  9. cribl_control_plane/configs_versions.py +16 -10
  10. cribl_control_plane/cribl.py +495 -0
  11. cribl_control_plane/destinations.py +86 -34
  12. cribl_control_plane/destinations_pq.py +34 -14
  13. cribl_control_plane/errors/__init__.py +23 -8
  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 +8 -3
  22. cribl_control_plane/groups_sdk.py +156 -94
  23. cribl_control_plane/health.py +34 -14
  24. cribl_control_plane/hectokens.py +44 -20
  25. cribl_control_plane/httpclient.py +0 -1
  26. cribl_control_plane/lakedatasets.py +156 -62
  27. cribl_control_plane/models/__init__.py +3298 -479
  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 +62 -8
  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/{createinputop.py → countedgitdiffresult.py} +5 -9
  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/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
  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 +26 -27
  81. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
  82. cribl_control_plane/models/createinputhectokenbyidop.py +1 -19
  83. cribl_control_plane/models/createoutputtestbyidop.py +1 -20
  84. cribl_control_plane/models/createroutesappendbyidop.py +4 -22
  85. cribl_control_plane/models/createversioncommitop.py +1 -19
  86. cribl_control_plane/models/createversionrevertop.py +3 -21
  87. cribl_control_plane/models/createversionundoop.py +1 -18
  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/datasetmetadata.py +18 -2
  92. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +18 -21
  93. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
  94. cribl_control_plane/models/deleteinputbyidop.py +1 -20
  95. cribl_control_plane/models/deleteoutputbyidop.py +1 -20
  96. cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
  97. cribl_control_plane/models/deletepacksbyidop.py +1 -20
  98. cribl_control_plane/models/deletepipelinebyidop.py +3 -22
  99. cribl_control_plane/models/difffiles.py +130 -0
  100. cribl_control_plane/models/diffline.py +26 -0
  101. cribl_control_plane/models/difflinecontext.py +28 -0
  102. cribl_control_plane/models/difflinedelete.py +25 -0
  103. cribl_control_plane/models/difflineinsert.py +25 -0
  104. cribl_control_plane/models/distributedsummary.py +6 -0
  105. cribl_control_plane/models/functionaggregatemetrics.py +206 -0
  106. cribl_control_plane/models/functionaggregation.py +172 -0
  107. cribl_control_plane/models/functionautotimestamp.py +173 -0
  108. cribl_control_plane/models/functioncef.py +111 -0
  109. cribl_control_plane/models/functionchain.py +75 -0
  110. cribl_control_plane/models/functionclone.py +75 -0
  111. cribl_control_plane/models/functioncode.py +96 -0
  112. cribl_control_plane/models/functioncomment.py +75 -0
  113. cribl_control_plane/models/functiondistinct.py +99 -0
  114. cribl_control_plane/models/functiondnslookup.py +250 -0
  115. cribl_control_plane/models/functiondrop.py +73 -0
  116. cribl_control_plane/models/functiondropdimensions.py +87 -0
  117. cribl_control_plane/models/functiondynamicsampling.py +121 -0
  118. cribl_control_plane/models/functioneval.py +103 -0
  119. cribl_control_plane/models/functioneventbreaker.py +103 -0
  120. cribl_control_plane/models/functioneventstats.py +92 -0
  121. cribl_control_plane/models/functionexternaldata.py +73 -0
  122. cribl_control_plane/models/functionflatten.py +90 -0
  123. cribl_control_plane/models/functionfoldkeys.py +89 -0
  124. cribl_control_plane/models/functiongenstats.py +73 -0
  125. cribl_control_plane/models/functiongeoip.py +120 -0
  126. cribl_control_plane/models/functiongrok.py +95 -0
  127. cribl_control_plane/models/functionhandlebar.py +112 -0
  128. cribl_control_plane/models/functionjoin.py +112 -0
  129. cribl_control_plane/models/functionjsonunroll.py +80 -0
  130. cribl_control_plane/models/functionlakeexport.py +102 -0
  131. cribl_control_plane/models/functionlimit.py +75 -0
  132. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
  133. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
  134. cribl_control_plane/models/functionlookup.py +148 -0
  135. cribl_control_plane/models/functionmask.py +121 -0
  136. cribl_control_plane/models/functionmvexpand.py +128 -0
  137. cribl_control_plane/models/functionmvpull.py +99 -0
  138. cribl_control_plane/models/functionnotificationpolicies.py +186 -0
  139. cribl_control_plane/models/functionnotifications.py +85 -0
  140. cribl_control_plane/models/functionnotify.py +196 -0
  141. cribl_control_plane/models/functionnumerify.py +119 -0
  142. cribl_control_plane/models/functionotlplogs.py +82 -0
  143. cribl_control_plane/models/functionotlpmetrics.py +118 -0
  144. cribl_control_plane/models/functionotlptraces.py +111 -0
  145. cribl_control_plane/models/functionpack.py +80 -0
  146. cribl_control_plane/models/functionpivot.py +85 -0
  147. cribl_control_plane/models/functionpublishmetrics.py +153 -0
  148. cribl_control_plane/models/functionredis.py +173 -0
  149. cribl_control_plane/models/functionregexextract.py +112 -0
  150. cribl_control_plane/models/functionregexfilter.py +95 -0
  151. cribl_control_plane/models/functionrename.py +107 -0
  152. cribl_control_plane/models/functionresponse.py +242 -0
  153. cribl_control_plane/models/functionrollupmetrics.py +114 -0
  154. cribl_control_plane/models/functionsampling.py +90 -0
  155. cribl_control_plane/models/functionsend.py +141 -0
  156. cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
  157. cribl_control_plane/models/functionserde.py +161 -0
  158. cribl_control_plane/models/functionserialize.py +134 -0
  159. cribl_control_plane/models/functionsidlookup.py +93 -0
  160. cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
  161. cribl_control_plane/models/functionsort.py +97 -0
  162. cribl_control_plane/models/functionstore.py +132 -0
  163. cribl_control_plane/models/functionsuppress.py +115 -0
  164. cribl_control_plane/models/functiontee.py +90 -0
  165. cribl_control_plane/models/functiontrimtimestamp.py +75 -0
  166. cribl_control_plane/models/functionunion.py +80 -0
  167. cribl_control_plane/models/functionunroll.py +80 -0
  168. cribl_control_plane/models/functionwindow.py +96 -0
  169. cribl_control_plane/models/functionxmlunroll.py +92 -0
  170. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +24 -20
  171. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +24 -20
  172. cribl_control_plane/models/getconfiggroupbyproductandidop.py +14 -19
  173. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +18 -20
  174. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
  175. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +54 -14
  176. cribl_control_plane/models/getfunctionsbyidop.py +18 -0
  177. cribl_control_plane/models/getinputbyidop.py +1 -20
  178. cribl_control_plane/models/getmasterworkerentryop.py +1 -18
  179. cribl_control_plane/models/getoutputbyidop.py +1 -20
  180. cribl_control_plane/models/getoutputpqbyidop.py +1 -19
  181. cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
  182. cribl_control_plane/models/getpacksbyidop.py +1 -20
  183. cribl_control_plane/models/getpacksop.py +1 -19
  184. cribl_control_plane/models/getpipelinebyidop.py +3 -22
  185. cribl_control_plane/models/getroutesbyidop.py +3 -22
  186. cribl_control_plane/models/getsummaryop.py +18 -20
  187. cribl_control_plane/models/getversioncountop.py +3 -21
  188. cribl_control_plane/models/getversiondiffop.py +1 -18
  189. cribl_control_plane/models/getversionfilesop.py +3 -22
  190. cribl_control_plane/models/getversionop.py +1 -19
  191. cribl_control_plane/models/getversionshowop.py +1 -18
  192. cribl_control_plane/models/getversionstatusop.py +1 -19
  193. cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
  194. cribl_control_plane/models/gitdiffresult.py +16 -0
  195. cribl_control_plane/models/gitinfo.py +14 -3
  196. cribl_control_plane/models/gitshowresult.py +19 -0
  197. cribl_control_plane/models/groupcreaterequest.py +172 -0
  198. cribl_control_plane/models/hbcriblinfo.py +42 -7
  199. cribl_control_plane/models/healthserverstatus.py +55 -0
  200. cribl_control_plane/models/heartbeatmetadata.py +6 -11
  201. cribl_control_plane/models/input.py +83 -78
  202. cribl_control_plane/models/inputappscope.py +126 -30
  203. cribl_control_plane/models/inputazureblob.py +62 -6
  204. cribl_control_plane/models/inputcloudflarehec.py +518 -0
  205. cribl_control_plane/models/inputcollection.py +47 -4
  206. cribl_control_plane/models/inputconfluentcloud.py +258 -32
  207. cribl_control_plane/models/inputcribl.py +47 -4
  208. cribl_control_plane/models/inputcriblhttp.py +121 -30
  209. cribl_control_plane/models/inputcribllakehttp.py +136 -30
  210. cribl_control_plane/models/inputcriblmetrics.py +48 -4
  211. cribl_control_plane/models/inputcribltcp.py +122 -24
  212. cribl_control_plane/models/inputcrowdstrike.py +92 -10
  213. cribl_control_plane/models/inputdatadogagent.py +98 -24
  214. cribl_control_plane/models/inputdatagen.py +47 -4
  215. cribl_control_plane/models/inputedgeprometheus.py +210 -50
  216. cribl_control_plane/models/inputelastic.py +167 -36
  217. cribl_control_plane/models/inputeventhub.py +209 -6
  218. cribl_control_plane/models/inputexec.py +59 -6
  219. cribl_control_plane/models/inputfile.py +78 -10
  220. cribl_control_plane/models/inputfirehose.py +97 -24
  221. cribl_control_plane/models/inputgooglepubsub.py +67 -6
  222. cribl_control_plane/models/inputgrafana.py +251 -71
  223. cribl_control_plane/models/inputhttp.py +97 -24
  224. cribl_control_plane/models/inputhttpraw.py +97 -24
  225. cribl_control_plane/models/inputjournalfiles.py +48 -4
  226. cribl_control_plane/models/inputkafka.py +252 -28
  227. cribl_control_plane/models/inputkinesis.py +130 -14
  228. cribl_control_plane/models/inputkubeevents.py +47 -4
  229. cribl_control_plane/models/inputkubelogs.py +61 -8
  230. cribl_control_plane/models/inputkubemetrics.py +61 -8
  231. cribl_control_plane/models/inputloki.py +113 -34
  232. cribl_control_plane/models/inputmetrics.py +97 -24
  233. cribl_control_plane/models/inputmodeldriventelemetry.py +107 -26
  234. cribl_control_plane/models/inputmsk.py +145 -32
  235. cribl_control_plane/models/inputnetflow.py +47 -4
  236. cribl_control_plane/models/inputoffice365mgmt.py +112 -14
  237. cribl_control_plane/models/inputoffice365msgtrace.py +114 -16
  238. cribl_control_plane/models/inputoffice365service.py +114 -16
  239. cribl_control_plane/models/inputopentelemetry.py +143 -32
  240. cribl_control_plane/models/inputprometheus.py +193 -44
  241. cribl_control_plane/models/inputprometheusrw.py +114 -27
  242. cribl_control_plane/models/inputrawudp.py +47 -4
  243. cribl_control_plane/models/inputs3.py +78 -8
  244. cribl_control_plane/models/inputs3inventory.py +92 -10
  245. cribl_control_plane/models/inputsecuritylake.py +93 -10
  246. cribl_control_plane/models/inputsnmp.py +112 -21
  247. cribl_control_plane/models/inputsplunk.py +130 -28
  248. cribl_control_plane/models/inputsplunkhec.py +119 -29
  249. cribl_control_plane/models/inputsplunksearch.py +112 -15
  250. cribl_control_plane/models/inputsqs.py +99 -16
  251. cribl_control_plane/models/inputsyslog.py +189 -47
  252. cribl_control_plane/models/inputsystemmetrics.py +202 -32
  253. cribl_control_plane/models/inputsystemstate.py +61 -8
  254. cribl_control_plane/models/inputtcp.py +122 -26
  255. cribl_control_plane/models/inputtcpjson.py +112 -26
  256. cribl_control_plane/models/inputwef.py +144 -15
  257. cribl_control_plane/models/inputwindowsmetrics.py +186 -33
  258. cribl_control_plane/models/inputwineventlogs.py +93 -11
  259. cribl_control_plane/models/inputwiz.py +173 -8
  260. cribl_control_plane/models/inputwizwebhook.py +97 -24
  261. cribl_control_plane/models/inputzscalerhec.py +119 -29
  262. cribl_control_plane/models/jobinfo.py +34 -0
  263. cribl_control_plane/models/jobstatus.py +48 -0
  264. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  265. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  266. cribl_control_plane/models/listconfiggroupbyproductop.py +14 -19
  267. cribl_control_plane/models/listmasterworkerentryop.py +1 -19
  268. cribl_control_plane/models/logininfo.py +3 -3
  269. cribl_control_plane/models/masterworkerentry.py +20 -13
  270. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  271. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  272. cribl_control_plane/models/nodeprovidedinfo.py +13 -11
  273. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  274. cribl_control_plane/models/nodeupgradestate.py +2 -1
  275. cribl_control_plane/models/nodeupgradestatus.py +51 -5
  276. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  277. cribl_control_plane/models/output.py +104 -90
  278. cribl_control_plane/models/outputazureblob.py +171 -18
  279. cribl_control_plane/models/outputazuredataexplorer.py +514 -90
  280. cribl_control_plane/models/outputazureeventhub.py +315 -31
  281. cribl_control_plane/models/outputazurelogs.py +145 -26
  282. cribl_control_plane/models/outputchronicle.py +532 -0
  283. cribl_control_plane/models/outputclickhouse.py +205 -34
  284. cribl_control_plane/models/outputcloudflarer2.py +632 -0
  285. cribl_control_plane/models/outputcloudwatch.py +129 -23
  286. cribl_control_plane/models/outputconfluentcloud.py +384 -57
  287. cribl_control_plane/models/outputcriblhttp.py +198 -31
  288. cribl_control_plane/models/outputcribllake.py +156 -16
  289. cribl_control_plane/models/outputcribltcp.py +194 -29
  290. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +172 -28
  291. cribl_control_plane/models/outputdatabricks.py +501 -0
  292. cribl_control_plane/models/outputdatadog.py +199 -31
  293. cribl_control_plane/models/outputdataset.py +181 -29
  294. cribl_control_plane/models/outputdiskspool.py +17 -2
  295. cribl_control_plane/models/outputdls3.py +233 -24
  296. cribl_control_plane/models/outputdynatracehttp.py +208 -34
  297. cribl_control_plane/models/outputdynatraceotlp.py +210 -36
  298. cribl_control_plane/models/outputelastic.py +199 -30
  299. cribl_control_plane/models/outputelasticcloud.py +171 -26
  300. cribl_control_plane/models/outputexabeam.py +96 -10
  301. cribl_control_plane/models/outputfilesystem.py +139 -14
  302. cribl_control_plane/models/outputgooglechronicle.py +216 -35
  303. cribl_control_plane/models/outputgooglecloudlogging.py +174 -31
  304. cribl_control_plane/models/outputgooglecloudstorage.py +215 -24
  305. cribl_control_plane/models/outputgooglepubsub.py +131 -23
  306. cribl_control_plane/models/outputgrafanacloud.py +376 -74
  307. cribl_control_plane/models/outputgraphite.py +128 -25
  308. cribl_control_plane/models/outputhoneycomb.py +145 -26
  309. cribl_control_plane/models/outputhumiohec.py +162 -28
  310. cribl_control_plane/models/outputinfluxdb.py +165 -28
  311. cribl_control_plane/models/outputkafka.py +375 -52
  312. cribl_control_plane/models/outputkinesis.py +165 -27
  313. cribl_control_plane/models/outputloki.py +164 -34
  314. cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
  315. cribl_control_plane/models/outputminio.py +225 -25
  316. cribl_control_plane/models/outputmsk.py +267 -54
  317. cribl_control_plane/models/outputnewrelic.py +171 -29
  318. cribl_control_plane/models/outputnewrelicevents.py +163 -28
  319. cribl_control_plane/models/outputopentelemetry.py +240 -40
  320. cribl_control_plane/models/outputprometheus.py +145 -26
  321. cribl_control_plane/models/outputring.py +49 -8
  322. cribl_control_plane/models/outputs3.py +233 -26
  323. cribl_control_plane/models/outputsecuritylake.py +179 -18
  324. cribl_control_plane/models/outputsentinel.py +172 -29
  325. cribl_control_plane/models/outputsentineloneaisiem.py +178 -32
  326. cribl_control_plane/models/outputservicenow.py +223 -38
  327. cribl_control_plane/models/outputsignalfx.py +145 -26
  328. cribl_control_plane/models/outputsns.py +143 -25
  329. cribl_control_plane/models/outputsplunk.py +206 -36
  330. cribl_control_plane/models/outputsplunkhec.py +238 -26
  331. cribl_control_plane/models/outputsplunklb.py +262 -42
  332. cribl_control_plane/models/outputsqs.py +163 -33
  333. cribl_control_plane/models/outputstatsd.py +127 -25
  334. cribl_control_plane/models/outputstatsdext.py +128 -25
  335. cribl_control_plane/models/outputsumologic.py +146 -25
  336. cribl_control_plane/models/outputsyslog.py +318 -46
  337. cribl_control_plane/models/outputtcpjson.py +186 -32
  338. cribl_control_plane/models/outputwavefront.py +145 -26
  339. cribl_control_plane/models/outputwebhook.py +211 -33
  340. cribl_control_plane/models/outputxsiam.py +143 -26
  341. cribl_control_plane/models/packinfo.py +8 -5
  342. cribl_control_plane/models/packinstallinfo.py +11 -8
  343. cribl_control_plane/models/piisettings_union.py +31 -0
  344. cribl_control_plane/models/productscore.py +2 -1
  345. cribl_control_plane/models/rbacresource.py +2 -1
  346. cribl_control_plane/models/resourcepolicy.py +15 -2
  347. cribl_control_plane/models/rollbacksettings_union.py +44 -0
  348. cribl_control_plane/models/routeconf.py +3 -4
  349. cribl_control_plane/models/runnablejob.py +27 -0
  350. cribl_control_plane/models/runnablejobcollection.py +628 -0
  351. cribl_control_plane/models/runnablejobexecutor.py +360 -0
  352. cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
  353. cribl_control_plane/models/snisettings_union.py +31 -0
  354. cribl_control_plane/models/systemsettingsconf.py +291 -0
  355. cribl_control_plane/models/tlssettings_union.py +43 -0
  356. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +19 -20
  357. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +19 -21
  358. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +10 -25
  359. cribl_control_plane/models/updatehectokenrequest.py +7 -1
  360. cribl_control_plane/models/updateinputbyidop.py +1 -19
  361. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -19
  362. cribl_control_plane/models/updateoutputbyidop.py +1 -19
  363. cribl_control_plane/models/updatepacksbyidop.py +1 -20
  364. cribl_control_plane/models/updatepacksop.py +25 -0
  365. cribl_control_plane/models/updatepipelinebyidop.py +5 -23
  366. cribl_control_plane/models/updateroutesbyidop.py +3 -21
  367. cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
  368. cribl_control_plane/models/upgradepackageurls.py +20 -0
  369. cribl_control_plane/models/upgradesettings.py +38 -0
  370. cribl_control_plane/models/uploadpackresponse.py +13 -0
  371. cribl_control_plane/models/workertypes.py +2 -1
  372. cribl_control_plane/nodes.py +37 -23
  373. cribl_control_plane/packs.py +292 -37
  374. cribl_control_plane/pipelines.py +98 -48
  375. cribl_control_plane/routes_sdk.py +86 -50
  376. cribl_control_plane/samples.py +32 -16
  377. cribl_control_plane/sdk.py +26 -6
  378. cribl_control_plane/settings.py +20 -0
  379. cribl_control_plane/sources.py +85 -33
  380. cribl_control_plane/statuses.py +16 -6
  381. cribl_control_plane/summaries.py +16 -6
  382. cribl_control_plane/system_sdk.py +20 -0
  383. cribl_control_plane/teams.py +16 -6
  384. cribl_control_plane/tokens.py +49 -21
  385. cribl_control_plane/utils/__init__.py +15 -3
  386. cribl_control_plane/utils/annotations.py +32 -8
  387. cribl_control_plane/utils/eventstreaming.py +10 -0
  388. cribl_control_plane/utils/forms.py +21 -10
  389. cribl_control_plane/utils/queryparams.py +14 -2
  390. cribl_control_plane/utils/retries.py +69 -5
  391. cribl_control_plane/utils/unmarshal_json_response.py +15 -1
  392. cribl_control_plane/versions.py +11 -6
  393. cribl_control_plane/versions_configs.py +16 -6
  394. {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/METADATA +99 -43
  395. cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
  396. {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
  397. cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
  398. cribl_control_plane/errors/healthstatus_error.py +0 -32
  399. cribl_control_plane/models/appmode.py +0 -13
  400. cribl_control_plane/models/createpipelineop.py +0 -24
  401. cribl_control_plane/models/createversionpushop.py +0 -23
  402. cribl_control_plane/models/healthstatus.py +0 -33
  403. cribl_control_plane-0.0.39.dist-info/RECORD +0 -315
@@ -0,0 +1,99 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import Any, Dict, List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class FunctionDistinctID(str, Enum):
12
+ DISTINCT = "distinct"
13
+
14
+
15
+ class DistinctConfigurationTypedDict(TypedDict):
16
+ group_by: List[str]
17
+ r"""Defines the properties that are concatenated to produce distinct key"""
18
+ max_combinations: NotRequired[float]
19
+ r"""maximum number of tracked combinations"""
20
+ max_depth: NotRequired[float]
21
+ r"""maximum number of groupBy properties"""
22
+ is_federated: NotRequired[bool]
23
+ r"""indicator that the operator runs on a federated executor"""
24
+ suppress_previews: NotRequired[bool]
25
+ r"""Toggle this on to suppress generating previews of intermediate results"""
26
+
27
+
28
+ class DistinctConfiguration(BaseModel):
29
+ group_by: Annotated[List[str], pydantic.Field(alias="groupBy")]
30
+ r"""Defines the properties that are concatenated to produce distinct key"""
31
+
32
+ max_combinations: Annotated[
33
+ Optional[float], pydantic.Field(alias="maxCombinations")
34
+ ] = 10000
35
+ r"""maximum number of tracked combinations"""
36
+
37
+ max_depth: Annotated[Optional[float], pydantic.Field(alias="maxDepth")] = 15
38
+ r"""maximum number of groupBy properties"""
39
+
40
+ is_federated: Annotated[Optional[bool], pydantic.Field(alias="isFederated")] = False
41
+ r"""indicator that the operator runs on a federated executor"""
42
+
43
+ suppress_previews: Annotated[
44
+ Optional[bool], pydantic.Field(alias="suppressPreviews")
45
+ ] = None
46
+ r"""Toggle this on to suppress generating previews of intermediate results"""
47
+
48
+
49
+ class FunctionDistinctTypedDict(TypedDict):
50
+ filename: str
51
+ group: str
52
+ id: FunctionDistinctID
53
+ load_time: float
54
+ mod_time: float
55
+ name: str
56
+ uischema: Dict[str, Any]
57
+ version: str
58
+ async_timeout: NotRequired[float]
59
+ cribl_version: NotRequired[str]
60
+ disabled: NotRequired[bool]
61
+ handle_signals: NotRequired[bool]
62
+ sync: NotRequired[bool]
63
+ schema_: NotRequired[DistinctConfigurationTypedDict]
64
+
65
+
66
+ class FunctionDistinct(BaseModel):
67
+ filename: Annotated[str, pydantic.Field(alias="__filename")]
68
+
69
+ group: str
70
+
71
+ id: FunctionDistinctID
72
+
73
+ load_time: Annotated[float, pydantic.Field(alias="loadTime")]
74
+
75
+ mod_time: Annotated[float, pydantic.Field(alias="modTime")]
76
+
77
+ name: str
78
+
79
+ uischema: Dict[str, Any]
80
+
81
+ version: str
82
+
83
+ async_timeout: Annotated[Optional[float], pydantic.Field(alias="asyncTimeout")] = (
84
+ None
85
+ )
86
+
87
+ cribl_version: Optional[str] = None
88
+
89
+ disabled: Optional[bool] = None
90
+
91
+ handle_signals: Annotated[Optional[bool], pydantic.Field(alias="handleSignals")] = (
92
+ None
93
+ )
94
+
95
+ sync: Optional[bool] = None
96
+
97
+ schema_: Annotated[
98
+ Optional[DistinctConfiguration], pydantic.Field(alias="schema")
99
+ ] = None
@@ -0,0 +1,250 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane import models, utils
5
+ from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
7
+ from enum import Enum
8
+ import pydantic
9
+ from pydantic import ConfigDict, field_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import Any, Dict, List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class FunctionDNSLookupID(str, Enum):
16
+ DNS_LOOKUP = "dns_lookup"
17
+
18
+
19
+ class ResourceRecordType(str, Enum, metaclass=utils.OpenEnumMeta):
20
+ r"""The DNS record type (RR) to return. Defaults to 'A'."""
21
+
22
+ # A
23
+ A = "A"
24
+ # AAAA
25
+ AAAA = "AAAA"
26
+ # ANY
27
+ ANY = "ANY"
28
+ # CNAME
29
+ CNAME = "CNAME"
30
+ # MX
31
+ MX = "MX"
32
+ # NAPTR
33
+ NAPTR = "NAPTR"
34
+ # NS
35
+ NS = "NS"
36
+ # PTR
37
+ PTR = "PTR"
38
+ # SOA
39
+ SOA = "SOA"
40
+ # SRV
41
+ SRV = "SRV"
42
+ # TXT
43
+ TXT = "TXT"
44
+
45
+
46
+ class DNSLookupFieldTypedDict(TypedDict):
47
+ in_field_name: NotRequired[str]
48
+ resource_record_type: NotRequired[ResourceRecordType]
49
+ r"""The DNS record type (RR) to return. Defaults to 'A'."""
50
+ out_field_name: NotRequired[str]
51
+ r"""Name of field to add lookup results to. Leave blank to overwrite the lookup field."""
52
+
53
+
54
+ class DNSLookupField(BaseModel):
55
+ in_field_name: Annotated[Optional[str], pydantic.Field(alias="inFieldName")] = None
56
+
57
+ resource_record_type: Annotated[
58
+ Annotated[
59
+ Optional[ResourceRecordType], PlainValidator(validate_open_enum(False))
60
+ ],
61
+ pydantic.Field(alias="resourceRecordType"),
62
+ ] = ResourceRecordType.A
63
+ r"""The DNS record type (RR) to return. Defaults to 'A'."""
64
+
65
+ out_field_name: Annotated[Optional[str], pydantic.Field(alias="outFieldName")] = (
66
+ None
67
+ )
68
+ r"""Name of field to add lookup results to. Leave blank to overwrite the lookup field."""
69
+
70
+ @field_serializer("resource_record_type")
71
+ def serialize_resource_record_type(self, value):
72
+ if isinstance(value, str):
73
+ try:
74
+ return models.ResourceRecordType(value)
75
+ except ValueError:
76
+ return value
77
+ return value
78
+
79
+
80
+ class ReverseLookupFieldTypedDict(TypedDict):
81
+ in_field_name: NotRequired[str]
82
+ r"""Name of the field containing the IP to look up. If the field value is not in IPv4 or IPv6 format, the lookup is skipped."""
83
+ out_field_name: NotRequired[str]
84
+ r"""Name of field to add the resolved domain to. Leave blank to overwrite the lookup field."""
85
+
86
+
87
+ class ReverseLookupField(BaseModel):
88
+ in_field_name: Annotated[Optional[str], pydantic.Field(alias="inFieldName")] = None
89
+ r"""Name of the field containing the IP to look up. If the field value is not in IPv4 or IPv6 format, the lookup is skipped."""
90
+
91
+ out_field_name: Annotated[Optional[str], pydantic.Field(alias="outFieldName")] = (
92
+ None
93
+ )
94
+ r"""Name of field to add the resolved domain to. Leave blank to overwrite the lookup field."""
95
+
96
+
97
+ class LogLevelForFailedLookups(str, Enum, metaclass=utils.OpenEnumMeta):
98
+ # silly
99
+ SILLY = "silly"
100
+ # debug
101
+ DEBUG = "debug"
102
+ # info
103
+ INFO = "info"
104
+ # warn
105
+ WARN = "warn"
106
+ # error
107
+ ERROR = "error"
108
+
109
+
110
+ class FunctionDNSLookupSchemaTypedDict(TypedDict):
111
+ dns_lookup_fields: NotRequired[List[DNSLookupFieldTypedDict]]
112
+ r"""List of field names on which to perform DNS lookup"""
113
+ reverse_lookup_fields: NotRequired[List[ReverseLookupFieldTypedDict]]
114
+ r"""List of field names on which to perform reverse DNS lookup"""
115
+ dns_servers: NotRequired[List[str]]
116
+ r"""IPs, in RFC 5952 format, of the DNS servers to use for resolution. Examples: IPv4 1.1.1.1, 4.2.2.2:53, or IPv6 [2001:4860:4860::8888], [2001:4860:4860::8888]:1053. If not specified, system's DNS will be used."""
117
+ cache_ttl: NotRequired[float]
118
+ r"""How frequently to expire and refetch DNS cache. Use 0 to disable."""
119
+ max_cache_size: NotRequired[float]
120
+ r"""The maximum number of DNS resolutions to be cached locally. Leave at default unless you understand the implications of changing."""
121
+ use_resolv_conf: NotRequired[bool]
122
+ r"""Attempt to resolve DNS short names using the search or domain directive from /etc/resolv.conf"""
123
+ lookup_fallback: NotRequired[bool]
124
+ r"""If unable to resolve a DNS short name, make a DNS.lookup() call to resolve it. Caution: This might degrade performance in unrelated areas of @{product}."""
125
+ domain_overrides: NotRequired[List[str]]
126
+ r"""Specify fallback values for the DNS resolver to use when it cannot resolve a DNS short name"""
127
+ lookup_fail_log_level: NotRequired[LogLevelForFailedLookups]
128
+
129
+
130
+ class FunctionDNSLookupSchema(BaseModel):
131
+ model_config = ConfigDict(
132
+ populate_by_name=True, arbitrary_types_allowed=True, extra="allow"
133
+ )
134
+ __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False)
135
+
136
+ dns_lookup_fields: Annotated[
137
+ Optional[List[DNSLookupField]], pydantic.Field(alias="dnsLookupFields")
138
+ ] = None
139
+ r"""List of field names on which to perform DNS lookup"""
140
+
141
+ reverse_lookup_fields: Annotated[
142
+ Optional[List[ReverseLookupField]], pydantic.Field(alias="reverseLookupFields")
143
+ ] = None
144
+ r"""List of field names on which to perform reverse DNS lookup"""
145
+
146
+ dns_servers: Annotated[Optional[List[str]], pydantic.Field(alias="dnsServers")] = (
147
+ None
148
+ )
149
+ r"""IPs, in RFC 5952 format, of the DNS servers to use for resolution. Examples: IPv4 1.1.1.1, 4.2.2.2:53, or IPv6 [2001:4860:4860::8888], [2001:4860:4860::8888]:1053. If not specified, system's DNS will be used."""
150
+
151
+ cache_ttl: Annotated[Optional[float], pydantic.Field(alias="cacheTTL")] = 30
152
+ r"""How frequently to expire and refetch DNS cache. Use 0 to disable."""
153
+
154
+ max_cache_size: Annotated[Optional[float], pydantic.Field(alias="maxCacheSize")] = (
155
+ 5000
156
+ )
157
+ r"""The maximum number of DNS resolutions to be cached locally. Leave at default unless you understand the implications of changing."""
158
+
159
+ use_resolv_conf: Annotated[
160
+ Optional[bool], pydantic.Field(alias="useResolvConf")
161
+ ] = False
162
+ r"""Attempt to resolve DNS short names using the search or domain directive from /etc/resolv.conf"""
163
+
164
+ lookup_fallback: Annotated[
165
+ Optional[bool], pydantic.Field(alias="lookupFallback")
166
+ ] = False
167
+ r"""If unable to resolve a DNS short name, make a DNS.lookup() call to resolve it. Caution: This might degrade performance in unrelated areas of @{product}."""
168
+
169
+ domain_overrides: Annotated[
170
+ Optional[List[str]], pydantic.Field(alias="domainOverrides")
171
+ ] = None
172
+ r"""Specify fallback values for the DNS resolver to use when it cannot resolve a DNS short name"""
173
+
174
+ lookup_fail_log_level: Annotated[
175
+ Annotated[
176
+ Optional[LogLevelForFailedLookups],
177
+ PlainValidator(validate_open_enum(False)),
178
+ ],
179
+ pydantic.Field(alias="lookupFailLogLevel"),
180
+ ] = LogLevelForFailedLookups.ERROR
181
+
182
+ @property
183
+ def additional_properties(self):
184
+ return self.__pydantic_extra__
185
+
186
+ @additional_properties.setter
187
+ def additional_properties(self, value):
188
+ self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride]
189
+
190
+ @field_serializer("lookup_fail_log_level")
191
+ def serialize_lookup_fail_log_level(self, value):
192
+ if isinstance(value, str):
193
+ try:
194
+ return models.LogLevelForFailedLookups(value)
195
+ except ValueError:
196
+ return value
197
+ return value
198
+
199
+
200
+ class FunctionDNSLookupTypedDict(TypedDict):
201
+ filename: str
202
+ group: str
203
+ id: FunctionDNSLookupID
204
+ load_time: float
205
+ mod_time: float
206
+ name: str
207
+ uischema: Dict[str, Any]
208
+ version: str
209
+ async_timeout: NotRequired[float]
210
+ cribl_version: NotRequired[str]
211
+ disabled: NotRequired[bool]
212
+ handle_signals: NotRequired[bool]
213
+ sync: NotRequired[bool]
214
+ schema_: NotRequired[FunctionDNSLookupSchemaTypedDict]
215
+
216
+
217
+ class FunctionDNSLookup(BaseModel):
218
+ filename: Annotated[str, pydantic.Field(alias="__filename")]
219
+
220
+ group: str
221
+
222
+ id: FunctionDNSLookupID
223
+
224
+ load_time: Annotated[float, pydantic.Field(alias="loadTime")]
225
+
226
+ mod_time: Annotated[float, pydantic.Field(alias="modTime")]
227
+
228
+ name: str
229
+
230
+ uischema: Dict[str, Any]
231
+
232
+ version: str
233
+
234
+ async_timeout: Annotated[Optional[float], pydantic.Field(alias="asyncTimeout")] = (
235
+ None
236
+ )
237
+
238
+ cribl_version: Optional[str] = None
239
+
240
+ disabled: Optional[bool] = None
241
+
242
+ handle_signals: Annotated[Optional[bool], pydantic.Field(alias="handleSignals")] = (
243
+ None
244
+ )
245
+
246
+ sync: Optional[bool] = None
247
+
248
+ schema_: Annotated[
249
+ Optional[FunctionDNSLookupSchema], pydantic.Field(alias="schema")
250
+ ] = None
@@ -0,0 +1,73 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import Any, Dict, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class FunctionDropID(str, Enum):
12
+ DROP = "drop"
13
+
14
+
15
+ class FunctionDropSchemaTypedDict(TypedDict):
16
+ pass
17
+
18
+
19
+ class FunctionDropSchema(BaseModel):
20
+ pass
21
+
22
+
23
+ class FunctionDropTypedDict(TypedDict):
24
+ filename: str
25
+ group: str
26
+ id: FunctionDropID
27
+ load_time: float
28
+ mod_time: float
29
+ name: str
30
+ uischema: Dict[str, Any]
31
+ version: str
32
+ async_timeout: NotRequired[float]
33
+ cribl_version: NotRequired[str]
34
+ disabled: NotRequired[bool]
35
+ handle_signals: NotRequired[bool]
36
+ sync: NotRequired[bool]
37
+ schema_: NotRequired[FunctionDropSchemaTypedDict]
38
+
39
+
40
+ class FunctionDrop(BaseModel):
41
+ filename: Annotated[str, pydantic.Field(alias="__filename")]
42
+
43
+ group: str
44
+
45
+ id: FunctionDropID
46
+
47
+ load_time: Annotated[float, pydantic.Field(alias="loadTime")]
48
+
49
+ mod_time: Annotated[float, pydantic.Field(alias="modTime")]
50
+
51
+ name: str
52
+
53
+ uischema: Dict[str, Any]
54
+
55
+ version: str
56
+
57
+ async_timeout: Annotated[Optional[float], pydantic.Field(alias="asyncTimeout")] = (
58
+ None
59
+ )
60
+
61
+ cribl_version: Optional[str] = None
62
+
63
+ disabled: Optional[bool] = None
64
+
65
+ handle_signals: Annotated[Optional[bool], pydantic.Field(alias="handleSignals")] = (
66
+ None
67
+ )
68
+
69
+ sync: Optional[bool] = None
70
+
71
+ schema_: Annotated[Optional[FunctionDropSchema], pydantic.Field(alias="schema")] = (
72
+ None
73
+ )
@@ -0,0 +1,87 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import Any, Dict, List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class FunctionDropDimensionsID(str, Enum):
12
+ DROP_DIMENSIONS = "drop_dimensions"
13
+
14
+
15
+ class FunctionDropDimensionsSchemaTypedDict(TypedDict):
16
+ drop_dimensions: List[str]
17
+ r"""One or more dimensions to be dropped. Supports wildcard expressions. Warning: Using wildcard '*' causes all dimensions in the event to be dropped."""
18
+ time_window: NotRequired[str]
19
+ r"""The time span of the tumbling window for aggregating events. Must be a valid time string (such as 10s)."""
20
+ flush_on_input_close: NotRequired[bool]
21
+ r"""Flush aggregations when an input stream is closed. If disabled, aggregations are flushed based on Time Window Settings instead."""
22
+
23
+
24
+ class FunctionDropDimensionsSchema(BaseModel):
25
+ drop_dimensions: Annotated[List[str], pydantic.Field(alias="dropDimensions")]
26
+ r"""One or more dimensions to be dropped. Supports wildcard expressions. Warning: Using wildcard '*' causes all dimensions in the event to be dropped."""
27
+
28
+ time_window: Annotated[Optional[str], pydantic.Field(alias="timeWindow")] = "10s"
29
+ r"""The time span of the tumbling window for aggregating events. Must be a valid time string (such as 10s)."""
30
+
31
+ flush_on_input_close: Annotated[
32
+ Optional[bool], pydantic.Field(alias="flushOnInputClose")
33
+ ] = True
34
+ r"""Flush aggregations when an input stream is closed. If disabled, aggregations are flushed based on Time Window Settings instead."""
35
+
36
+
37
+ class FunctionDropDimensionsTypedDict(TypedDict):
38
+ filename: str
39
+ group: str
40
+ id: FunctionDropDimensionsID
41
+ load_time: float
42
+ mod_time: float
43
+ name: str
44
+ uischema: Dict[str, Any]
45
+ version: str
46
+ async_timeout: NotRequired[float]
47
+ cribl_version: NotRequired[str]
48
+ disabled: NotRequired[bool]
49
+ handle_signals: NotRequired[bool]
50
+ sync: NotRequired[bool]
51
+ schema_: NotRequired[FunctionDropDimensionsSchemaTypedDict]
52
+
53
+
54
+ class FunctionDropDimensions(BaseModel):
55
+ filename: Annotated[str, pydantic.Field(alias="__filename")]
56
+
57
+ group: str
58
+
59
+ id: FunctionDropDimensionsID
60
+
61
+ load_time: Annotated[float, pydantic.Field(alias="loadTime")]
62
+
63
+ mod_time: Annotated[float, pydantic.Field(alias="modTime")]
64
+
65
+ name: str
66
+
67
+ uischema: Dict[str, Any]
68
+
69
+ version: str
70
+
71
+ async_timeout: Annotated[Optional[float], pydantic.Field(alias="asyncTimeout")] = (
72
+ None
73
+ )
74
+
75
+ cribl_version: Optional[str] = None
76
+
77
+ disabled: Optional[bool] = None
78
+
79
+ handle_signals: Annotated[Optional[bool], pydantic.Field(alias="handleSignals")] = (
80
+ None
81
+ )
82
+
83
+ sync: Optional[bool] = None
84
+
85
+ schema_: Annotated[
86
+ Optional[FunctionDropDimensionsSchema], pydantic.Field(alias="schema")
87
+ ] = None
@@ -0,0 +1,121 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane import models, utils
5
+ from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
7
+ from enum import Enum
8
+ import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import Any, Dict, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class FunctionDynamicSamplingID(str, Enum):
16
+ DYNAMIC_SAMPLING = "dynamic_sampling"
17
+
18
+
19
+ class SampleMode(str, Enum, metaclass=utils.OpenEnumMeta):
20
+ r"""Defines how sample rate will be derived: log(previousPeriodCount) or sqrt(previousPeriodCount)"""
21
+
22
+ # Logarithmic
23
+ LOG = "log"
24
+ # Square Root
25
+ SQRT = "sqrt"
26
+
27
+
28
+ class FunctionDynamicSamplingSchemaTypedDict(TypedDict):
29
+ mode: NotRequired[SampleMode]
30
+ r"""Defines how sample rate will be derived: log(previousPeriodCount) or sqrt(previousPeriodCount)"""
31
+ key_expr: NotRequired[str]
32
+ r"""Expression used to derive sample group key. Example:`${domain}:${status}`. Each sample group will have its own derived sampling rate based on volume. Defaults to `${host}`."""
33
+ sample_period: NotRequired[float]
34
+ r"""How often (in seconds) sample rates will be adjusted"""
35
+ min_events: NotRequired[float]
36
+ r"""Minimum number of events that must be received in previous sample period for sampling mode to be applied to current period. If the number of events received for a sample group is less than this minimum, a sample rate of 1:1 is used."""
37
+ max_sample_rate: NotRequired[float]
38
+ r"""Maximum sampling rate. If computed sampling rate is above this value, it will be limited to this value."""
39
+
40
+
41
+ class FunctionDynamicSamplingSchema(BaseModel):
42
+ mode: Annotated[Optional[SampleMode], PlainValidator(validate_open_enum(False))] = (
43
+ SampleMode.LOG
44
+ )
45
+ r"""Defines how sample rate will be derived: log(previousPeriodCount) or sqrt(previousPeriodCount)"""
46
+
47
+ key_expr: Annotated[Optional[str], pydantic.Field(alias="keyExpr")] = "`${host}`"
48
+ r"""Expression used to derive sample group key. Example:`${domain}:${status}`. Each sample group will have its own derived sampling rate based on volume. Defaults to `${host}`."""
49
+
50
+ sample_period: Annotated[Optional[float], pydantic.Field(alias="samplePeriod")] = 30
51
+ r"""How often (in seconds) sample rates will be adjusted"""
52
+
53
+ min_events: Annotated[Optional[float], pydantic.Field(alias="minEvents")] = 30
54
+ r"""Minimum number of events that must be received in previous sample period for sampling mode to be applied to current period. If the number of events received for a sample group is less than this minimum, a sample rate of 1:1 is used."""
55
+
56
+ max_sample_rate: Annotated[
57
+ Optional[float], pydantic.Field(alias="maxSampleRate")
58
+ ] = 100
59
+ r"""Maximum sampling rate. If computed sampling rate is above this value, it will be limited to this value."""
60
+
61
+ @field_serializer("mode")
62
+ def serialize_mode(self, value):
63
+ if isinstance(value, str):
64
+ try:
65
+ return models.SampleMode(value)
66
+ except ValueError:
67
+ return value
68
+ return value
69
+
70
+
71
+ class FunctionDynamicSamplingTypedDict(TypedDict):
72
+ filename: str
73
+ group: str
74
+ id: FunctionDynamicSamplingID
75
+ load_time: float
76
+ mod_time: float
77
+ name: str
78
+ uischema: Dict[str, Any]
79
+ version: str
80
+ async_timeout: NotRequired[float]
81
+ cribl_version: NotRequired[str]
82
+ disabled: NotRequired[bool]
83
+ handle_signals: NotRequired[bool]
84
+ sync: NotRequired[bool]
85
+ schema_: NotRequired[FunctionDynamicSamplingSchemaTypedDict]
86
+
87
+
88
+ class FunctionDynamicSampling(BaseModel):
89
+ filename: Annotated[str, pydantic.Field(alias="__filename")]
90
+
91
+ group: str
92
+
93
+ id: FunctionDynamicSamplingID
94
+
95
+ load_time: Annotated[float, pydantic.Field(alias="loadTime")]
96
+
97
+ mod_time: Annotated[float, pydantic.Field(alias="modTime")]
98
+
99
+ name: str
100
+
101
+ uischema: Dict[str, Any]
102
+
103
+ version: str
104
+
105
+ async_timeout: Annotated[Optional[float], pydantic.Field(alias="asyncTimeout")] = (
106
+ None
107
+ )
108
+
109
+ cribl_version: Optional[str] = None
110
+
111
+ disabled: Optional[bool] = None
112
+
113
+ handle_signals: Annotated[Optional[bool], pydantic.Field(alias="handleSignals")] = (
114
+ None
115
+ )
116
+
117
+ sync: Optional[bool] = None
118
+
119
+ schema_: Annotated[
120
+ Optional[FunctionDynamicSamplingSchema], pydantic.Field(alias="schema")
121
+ ] = None