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.
- cribl_control_plane/_hooks/clientcredentials.py +92 -42
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/acl.py +21 -9
- cribl_control_plane/auth_sdk.py +6 -3
- cribl_control_plane/basesdk.py +17 -1
- cribl_control_plane/branches.py +28 -8
- cribl_control_plane/commits.py +119 -47
- cribl_control_plane/commits_files.py +44 -24
- cribl_control_plane/configs_versions.py +16 -10
- cribl_control_plane/cribl.py +495 -0
- cribl_control_plane/destinations.py +86 -34
- cribl_control_plane/destinations_pq.py +34 -14
- cribl_control_plane/errors/__init__.py +23 -8
- cribl_control_plane/errors/apierror.py +2 -0
- cribl_control_plane/errors/criblcontrolplaneerror.py +11 -7
- cribl_control_plane/errors/error.py +4 -2
- cribl_control_plane/errors/healthserverstatus_error.py +41 -0
- cribl_control_plane/errors/no_response_error.py +5 -1
- cribl_control_plane/errors/responsevalidationerror.py +2 -0
- cribl_control_plane/functions.py +367 -0
- cribl_control_plane/groups_configs.py +8 -3
- cribl_control_plane/groups_sdk.py +156 -94
- cribl_control_plane/health.py +34 -14
- cribl_control_plane/hectokens.py +44 -20
- cribl_control_plane/httpclient.py +0 -1
- cribl_control_plane/lakedatasets.py +156 -62
- cribl_control_plane/models/__init__.py +3298 -479
- cribl_control_plane/models/addhectokenrequest.py +7 -1
- cribl_control_plane/models/authtoken.py +5 -1
- cribl_control_plane/models/backupssettings_union.py +37 -0
- cribl_control_plane/models/{lookupversions.py → branchinfo.py} +4 -4
- cribl_control_plane/models/cacheconnection.py +30 -2
- cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
- cribl_control_plane/models/cloudprovider.py +2 -1
- cribl_control_plane/models/collectorazureblob.py +130 -0
- cribl_control_plane/models/collectorconf.py +56 -0
- cribl_control_plane/models/collectorcribllake.py +27 -0
- cribl_control_plane/models/collectordatabase.py +92 -0
- cribl_control_plane/models/collectorfilesystem.py +66 -0
- cribl_control_plane/models/collectorgooglecloudstorage.py +131 -0
- cribl_control_plane/models/collectorhealthcheck.py +269 -0
- cribl_control_plane/models/collectorrest.py +340 -0
- cribl_control_plane/models/collectors3.py +239 -0
- cribl_control_plane/models/collectorscript.py +59 -0
- cribl_control_plane/models/collectorsplunk.py +253 -0
- cribl_control_plane/models/configgroup.py +62 -8
- cribl_control_plane/models/configgroupcloud.py +17 -3
- cribl_control_plane/models/countedbranchinfo.py +20 -0
- cribl_control_plane/models/countedconfiggroup.py +20 -0
- cribl_control_plane/models/countedcribllakedataset.py +20 -0
- cribl_control_plane/models/counteddistributedsummary.py +20 -0
- cribl_control_plane/models/countedfunctionresponse.py +20 -0
- cribl_control_plane/models/countedgitcommitsummary.py +20 -0
- cribl_control_plane/models/countedgitcountresult.py +20 -0
- cribl_control_plane/models/{createinputop.py → countedgitdiffresult.py} +5 -9
- cribl_control_plane/models/countedgitfilesresponse.py +20 -0
- cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
- cribl_control_plane/models/countedgitlogresult.py +20 -0
- cribl_control_plane/models/countedgitrevertresult.py +20 -0
- cribl_control_plane/models/countedgitshowresult.py +20 -0
- cribl_control_plane/models/countedgitstatusresult.py +20 -0
- cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
- cribl_control_plane/models/countedinputsplunkhec.py +20 -0
- cribl_control_plane/models/countedjobinfo.py +20 -0
- cribl_control_plane/models/countedmasterworkerentry.py +20 -0
- cribl_control_plane/models/countednumber.py +19 -0
- cribl_control_plane/models/{getversionbranchop.py → countedobject.py} +2 -6
- cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
- cribl_control_plane/models/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
- cribl_control_plane/models/countedoutputtestresponse.py +20 -0
- cribl_control_plane/models/countedpackinfo.py +20 -0
- cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
- cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
- cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
- cribl_control_plane/models/countedstring.py +19 -0
- cribl_control_plane/models/countedsystemsettingsconf.py +20 -0
- cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
- cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
- cribl_control_plane/models/createauthloginop.py +18 -0
- cribl_control_plane/models/createconfiggroupbyproductop.py +26 -27
- cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
- cribl_control_plane/models/createinputhectokenbyidop.py +1 -19
- cribl_control_plane/models/createoutputtestbyidop.py +1 -20
- cribl_control_plane/models/createroutesappendbyidop.py +4 -22
- cribl_control_plane/models/createversioncommitop.py +1 -19
- cribl_control_plane/models/createversionrevertop.py +3 -21
- cribl_control_plane/models/createversionundoop.py +1 -18
- cribl_control_plane/models/criblevent.py +15 -0
- cribl_control_plane/models/cribllakedataset.py +23 -3
- cribl_control_plane/models/cribllakedatasetupdate.py +95 -0
- cribl_control_plane/models/datasetmetadata.py +18 -2
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +18 -21
- cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/deleteinputbyidop.py +1 -20
- cribl_control_plane/models/deleteoutputbyidop.py +1 -20
- cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
- cribl_control_plane/models/deletepacksbyidop.py +1 -20
- cribl_control_plane/models/deletepipelinebyidop.py +3 -22
- cribl_control_plane/models/difffiles.py +130 -0
- cribl_control_plane/models/diffline.py +26 -0
- cribl_control_plane/models/difflinecontext.py +28 -0
- cribl_control_plane/models/difflinedelete.py +25 -0
- cribl_control_plane/models/difflineinsert.py +25 -0
- cribl_control_plane/models/distributedsummary.py +6 -0
- cribl_control_plane/models/functionaggregatemetrics.py +206 -0
- cribl_control_plane/models/functionaggregation.py +172 -0
- cribl_control_plane/models/functionautotimestamp.py +173 -0
- cribl_control_plane/models/functioncef.py +111 -0
- cribl_control_plane/models/functionchain.py +75 -0
- cribl_control_plane/models/functionclone.py +75 -0
- cribl_control_plane/models/functioncode.py +96 -0
- cribl_control_plane/models/functioncomment.py +75 -0
- cribl_control_plane/models/functiondistinct.py +99 -0
- cribl_control_plane/models/functiondnslookup.py +250 -0
- cribl_control_plane/models/functiondrop.py +73 -0
- cribl_control_plane/models/functiondropdimensions.py +87 -0
- cribl_control_plane/models/functiondynamicsampling.py +121 -0
- cribl_control_plane/models/functioneval.py +103 -0
- cribl_control_plane/models/functioneventbreaker.py +103 -0
- cribl_control_plane/models/functioneventstats.py +92 -0
- cribl_control_plane/models/functionexternaldata.py +73 -0
- cribl_control_plane/models/functionflatten.py +90 -0
- cribl_control_plane/models/functionfoldkeys.py +89 -0
- cribl_control_plane/models/functiongenstats.py +73 -0
- cribl_control_plane/models/functiongeoip.py +120 -0
- cribl_control_plane/models/functiongrok.py +95 -0
- cribl_control_plane/models/functionhandlebar.py +112 -0
- cribl_control_plane/models/functionjoin.py +112 -0
- cribl_control_plane/models/functionjsonunroll.py +80 -0
- cribl_control_plane/models/functionlakeexport.py +102 -0
- cribl_control_plane/models/functionlimit.py +75 -0
- cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
- cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
- cribl_control_plane/models/functionlookup.py +148 -0
- cribl_control_plane/models/functionmask.py +121 -0
- cribl_control_plane/models/functionmvexpand.py +128 -0
- cribl_control_plane/models/functionmvpull.py +99 -0
- cribl_control_plane/models/functionnotificationpolicies.py +186 -0
- cribl_control_plane/models/functionnotifications.py +85 -0
- cribl_control_plane/models/functionnotify.py +196 -0
- cribl_control_plane/models/functionnumerify.py +119 -0
- cribl_control_plane/models/functionotlplogs.py +82 -0
- cribl_control_plane/models/functionotlpmetrics.py +118 -0
- cribl_control_plane/models/functionotlptraces.py +111 -0
- cribl_control_plane/models/functionpack.py +80 -0
- cribl_control_plane/models/functionpivot.py +85 -0
- cribl_control_plane/models/functionpublishmetrics.py +153 -0
- cribl_control_plane/models/functionredis.py +173 -0
- cribl_control_plane/models/functionregexextract.py +112 -0
- cribl_control_plane/models/functionregexfilter.py +95 -0
- cribl_control_plane/models/functionrename.py +107 -0
- cribl_control_plane/models/functionresponse.py +242 -0
- cribl_control_plane/models/functionrollupmetrics.py +114 -0
- cribl_control_plane/models/functionsampling.py +90 -0
- cribl_control_plane/models/functionsend.py +141 -0
- cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
- cribl_control_plane/models/functionserde.py +161 -0
- cribl_control_plane/models/functionserialize.py +134 -0
- cribl_control_plane/models/functionsidlookup.py +93 -0
- cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
- cribl_control_plane/models/functionsort.py +97 -0
- cribl_control_plane/models/functionstore.py +132 -0
- cribl_control_plane/models/functionsuppress.py +115 -0
- cribl_control_plane/models/functiontee.py +90 -0
- cribl_control_plane/models/functiontrimtimestamp.py +75 -0
- cribl_control_plane/models/functionunion.py +80 -0
- cribl_control_plane/models/functionunroll.py +80 -0
- cribl_control_plane/models/functionwindow.py +96 -0
- cribl_control_plane/models/functionxmlunroll.py +92 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +24 -20
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +24 -20
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +14 -19
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +18 -20
- cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/getcribllakedatasetbylakeidop.py +54 -14
- cribl_control_plane/models/getfunctionsbyidop.py +18 -0
- cribl_control_plane/models/getinputbyidop.py +1 -20
- cribl_control_plane/models/getmasterworkerentryop.py +1 -18
- cribl_control_plane/models/getoutputbyidop.py +1 -20
- cribl_control_plane/models/getoutputpqbyidop.py +1 -19
- cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
- cribl_control_plane/models/getpacksbyidop.py +1 -20
- cribl_control_plane/models/getpacksop.py +1 -19
- cribl_control_plane/models/getpipelinebyidop.py +3 -22
- cribl_control_plane/models/getroutesbyidop.py +3 -22
- cribl_control_plane/models/getsummaryop.py +18 -20
- cribl_control_plane/models/getversioncountop.py +3 -21
- cribl_control_plane/models/getversiondiffop.py +1 -18
- cribl_control_plane/models/getversionfilesop.py +3 -22
- cribl_control_plane/models/getversionop.py +1 -19
- cribl_control_plane/models/getversionshowop.py +1 -18
- cribl_control_plane/models/getversionstatusop.py +1 -19
- cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
- cribl_control_plane/models/gitdiffresult.py +16 -0
- cribl_control_plane/models/gitinfo.py +14 -3
- cribl_control_plane/models/gitshowresult.py +19 -0
- cribl_control_plane/models/groupcreaterequest.py +172 -0
- cribl_control_plane/models/hbcriblinfo.py +42 -7
- cribl_control_plane/models/healthserverstatus.py +55 -0
- cribl_control_plane/models/heartbeatmetadata.py +6 -11
- cribl_control_plane/models/input.py +83 -78
- cribl_control_plane/models/inputappscope.py +126 -30
- cribl_control_plane/models/inputazureblob.py +62 -6
- cribl_control_plane/models/inputcloudflarehec.py +518 -0
- cribl_control_plane/models/inputcollection.py +47 -4
- cribl_control_plane/models/inputconfluentcloud.py +258 -32
- cribl_control_plane/models/inputcribl.py +47 -4
- cribl_control_plane/models/inputcriblhttp.py +121 -30
- cribl_control_plane/models/inputcribllakehttp.py +136 -30
- cribl_control_plane/models/inputcriblmetrics.py +48 -4
- cribl_control_plane/models/inputcribltcp.py +122 -24
- cribl_control_plane/models/inputcrowdstrike.py +92 -10
- cribl_control_plane/models/inputdatadogagent.py +98 -24
- cribl_control_plane/models/inputdatagen.py +47 -4
- cribl_control_plane/models/inputedgeprometheus.py +210 -50
- cribl_control_plane/models/inputelastic.py +167 -36
- cribl_control_plane/models/inputeventhub.py +209 -6
- cribl_control_plane/models/inputexec.py +59 -6
- cribl_control_plane/models/inputfile.py +78 -10
- cribl_control_plane/models/inputfirehose.py +97 -24
- cribl_control_plane/models/inputgooglepubsub.py +67 -6
- cribl_control_plane/models/inputgrafana.py +251 -71
- cribl_control_plane/models/inputhttp.py +97 -24
- cribl_control_plane/models/inputhttpraw.py +97 -24
- cribl_control_plane/models/inputjournalfiles.py +48 -4
- cribl_control_plane/models/inputkafka.py +252 -28
- cribl_control_plane/models/inputkinesis.py +130 -14
- cribl_control_plane/models/inputkubeevents.py +47 -4
- cribl_control_plane/models/inputkubelogs.py +61 -8
- cribl_control_plane/models/inputkubemetrics.py +61 -8
- cribl_control_plane/models/inputloki.py +113 -34
- cribl_control_plane/models/inputmetrics.py +97 -24
- cribl_control_plane/models/inputmodeldriventelemetry.py +107 -26
- cribl_control_plane/models/inputmsk.py +145 -32
- cribl_control_plane/models/inputnetflow.py +47 -4
- cribl_control_plane/models/inputoffice365mgmt.py +112 -14
- cribl_control_plane/models/inputoffice365msgtrace.py +114 -16
- cribl_control_plane/models/inputoffice365service.py +114 -16
- cribl_control_plane/models/inputopentelemetry.py +143 -32
- cribl_control_plane/models/inputprometheus.py +193 -44
- cribl_control_plane/models/inputprometheusrw.py +114 -27
- cribl_control_plane/models/inputrawudp.py +47 -4
- cribl_control_plane/models/inputs3.py +78 -8
- cribl_control_plane/models/inputs3inventory.py +92 -10
- cribl_control_plane/models/inputsecuritylake.py +93 -10
- cribl_control_plane/models/inputsnmp.py +112 -21
- cribl_control_plane/models/inputsplunk.py +130 -28
- cribl_control_plane/models/inputsplunkhec.py +119 -29
- cribl_control_plane/models/inputsplunksearch.py +112 -15
- cribl_control_plane/models/inputsqs.py +99 -16
- cribl_control_plane/models/inputsyslog.py +189 -47
- cribl_control_plane/models/inputsystemmetrics.py +202 -32
- cribl_control_plane/models/inputsystemstate.py +61 -8
- cribl_control_plane/models/inputtcp.py +122 -26
- cribl_control_plane/models/inputtcpjson.py +112 -26
- cribl_control_plane/models/inputwef.py +144 -15
- cribl_control_plane/models/inputwindowsmetrics.py +186 -33
- cribl_control_plane/models/inputwineventlogs.py +93 -11
- cribl_control_plane/models/inputwiz.py +173 -8
- cribl_control_plane/models/inputwizwebhook.py +97 -24
- cribl_control_plane/models/inputzscalerhec.py +119 -29
- cribl_control_plane/models/jobinfo.py +34 -0
- cribl_control_plane/models/jobstatus.py +48 -0
- cribl_control_plane/models/lakedatasetmetrics.py +17 -0
- cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
- cribl_control_plane/models/listconfiggroupbyproductop.py +14 -19
- cribl_control_plane/models/listmasterworkerentryop.py +1 -19
- cribl_control_plane/models/logininfo.py +3 -3
- cribl_control_plane/models/masterworkerentry.py +20 -13
- cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
- cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeprovidedinfo.py +13 -11
- cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeupgradestate.py +2 -1
- cribl_control_plane/models/nodeupgradestatus.py +51 -5
- cribl_control_plane/models/outpostnodeinfo.py +16 -0
- cribl_control_plane/models/output.py +104 -90
- cribl_control_plane/models/outputazureblob.py +171 -18
- cribl_control_plane/models/outputazuredataexplorer.py +514 -90
- cribl_control_plane/models/outputazureeventhub.py +315 -31
- cribl_control_plane/models/outputazurelogs.py +145 -26
- cribl_control_plane/models/outputchronicle.py +532 -0
- cribl_control_plane/models/outputclickhouse.py +205 -34
- cribl_control_plane/models/outputcloudflarer2.py +632 -0
- cribl_control_plane/models/outputcloudwatch.py +129 -23
- cribl_control_plane/models/outputconfluentcloud.py +384 -57
- cribl_control_plane/models/outputcriblhttp.py +198 -31
- cribl_control_plane/models/outputcribllake.py +156 -16
- cribl_control_plane/models/outputcribltcp.py +194 -29
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +172 -28
- cribl_control_plane/models/outputdatabricks.py +501 -0
- cribl_control_plane/models/outputdatadog.py +199 -31
- cribl_control_plane/models/outputdataset.py +181 -29
- cribl_control_plane/models/outputdiskspool.py +17 -2
- cribl_control_plane/models/outputdls3.py +233 -24
- cribl_control_plane/models/outputdynatracehttp.py +208 -34
- cribl_control_plane/models/outputdynatraceotlp.py +210 -36
- cribl_control_plane/models/outputelastic.py +199 -30
- cribl_control_plane/models/outputelasticcloud.py +171 -26
- cribl_control_plane/models/outputexabeam.py +96 -10
- cribl_control_plane/models/outputfilesystem.py +139 -14
- cribl_control_plane/models/outputgooglechronicle.py +216 -35
- cribl_control_plane/models/outputgooglecloudlogging.py +174 -31
- cribl_control_plane/models/outputgooglecloudstorage.py +215 -24
- cribl_control_plane/models/outputgooglepubsub.py +131 -23
- cribl_control_plane/models/outputgrafanacloud.py +376 -74
- cribl_control_plane/models/outputgraphite.py +128 -25
- cribl_control_plane/models/outputhoneycomb.py +145 -26
- cribl_control_plane/models/outputhumiohec.py +162 -28
- cribl_control_plane/models/outputinfluxdb.py +165 -28
- cribl_control_plane/models/outputkafka.py +375 -52
- cribl_control_plane/models/outputkinesis.py +165 -27
- cribl_control_plane/models/outputloki.py +164 -34
- cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
- cribl_control_plane/models/outputminio.py +225 -25
- cribl_control_plane/models/outputmsk.py +267 -54
- cribl_control_plane/models/outputnewrelic.py +171 -29
- cribl_control_plane/models/outputnewrelicevents.py +163 -28
- cribl_control_plane/models/outputopentelemetry.py +240 -40
- cribl_control_plane/models/outputprometheus.py +145 -26
- cribl_control_plane/models/outputring.py +49 -8
- cribl_control_plane/models/outputs3.py +233 -26
- cribl_control_plane/models/outputsecuritylake.py +179 -18
- cribl_control_plane/models/outputsentinel.py +172 -29
- cribl_control_plane/models/outputsentineloneaisiem.py +178 -32
- cribl_control_plane/models/outputservicenow.py +223 -38
- cribl_control_plane/models/outputsignalfx.py +145 -26
- cribl_control_plane/models/outputsns.py +143 -25
- cribl_control_plane/models/outputsplunk.py +206 -36
- cribl_control_plane/models/outputsplunkhec.py +238 -26
- cribl_control_plane/models/outputsplunklb.py +262 -42
- cribl_control_plane/models/outputsqs.py +163 -33
- cribl_control_plane/models/outputstatsd.py +127 -25
- cribl_control_plane/models/outputstatsdext.py +128 -25
- cribl_control_plane/models/outputsumologic.py +146 -25
- cribl_control_plane/models/outputsyslog.py +318 -46
- cribl_control_plane/models/outputtcpjson.py +186 -32
- cribl_control_plane/models/outputwavefront.py +145 -26
- cribl_control_plane/models/outputwebhook.py +211 -33
- cribl_control_plane/models/outputxsiam.py +143 -26
- cribl_control_plane/models/packinfo.py +8 -5
- cribl_control_plane/models/packinstallinfo.py +11 -8
- cribl_control_plane/models/piisettings_union.py +31 -0
- cribl_control_plane/models/productscore.py +2 -1
- cribl_control_plane/models/rbacresource.py +2 -1
- cribl_control_plane/models/resourcepolicy.py +15 -2
- cribl_control_plane/models/rollbacksettings_union.py +44 -0
- cribl_control_plane/models/routeconf.py +3 -4
- cribl_control_plane/models/runnablejob.py +27 -0
- cribl_control_plane/models/runnablejobcollection.py +628 -0
- cribl_control_plane/models/runnablejobexecutor.py +360 -0
- cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
- cribl_control_plane/models/snisettings_union.py +31 -0
- cribl_control_plane/models/systemsettingsconf.py +291 -0
- cribl_control_plane/models/tlssettings_union.py +43 -0
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +19 -20
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +19 -21
- cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +10 -25
- cribl_control_plane/models/updatehectokenrequest.py +7 -1
- cribl_control_plane/models/updateinputbyidop.py +1 -19
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -19
- cribl_control_plane/models/updateoutputbyidop.py +1 -19
- cribl_control_plane/models/updatepacksbyidop.py +1 -20
- cribl_control_plane/models/updatepacksop.py +25 -0
- cribl_control_plane/models/updatepipelinebyidop.py +5 -23
- cribl_control_plane/models/updateroutesbyidop.py +3 -21
- cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
- cribl_control_plane/models/upgradepackageurls.py +20 -0
- cribl_control_plane/models/upgradesettings.py +38 -0
- cribl_control_plane/models/uploadpackresponse.py +13 -0
- cribl_control_plane/models/workertypes.py +2 -1
- cribl_control_plane/nodes.py +37 -23
- cribl_control_plane/packs.py +292 -37
- cribl_control_plane/pipelines.py +98 -48
- cribl_control_plane/routes_sdk.py +86 -50
- cribl_control_plane/samples.py +32 -16
- cribl_control_plane/sdk.py +26 -6
- cribl_control_plane/settings.py +20 -0
- cribl_control_plane/sources.py +85 -33
- cribl_control_plane/statuses.py +16 -6
- cribl_control_plane/summaries.py +16 -6
- cribl_control_plane/system_sdk.py +20 -0
- cribl_control_plane/teams.py +16 -6
- cribl_control_plane/tokens.py +49 -21
- cribl_control_plane/utils/__init__.py +15 -3
- cribl_control_plane/utils/annotations.py +32 -8
- cribl_control_plane/utils/eventstreaming.py +10 -0
- cribl_control_plane/utils/forms.py +21 -10
- cribl_control_plane/utils/queryparams.py +14 -2
- cribl_control_plane/utils/retries.py +69 -5
- cribl_control_plane/utils/unmarshal_json_response.py +15 -1
- cribl_control_plane/versions.py +11 -6
- cribl_control_plane/versions_configs.py +16 -6
- {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/METADATA +99 -43
- cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
- {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
- cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
- cribl_control_plane/errors/healthstatus_error.py +0 -32
- cribl_control_plane/models/appmode.py +0 -13
- cribl_control_plane/models/createpipelineop.py +0 -24
- cribl_control_plane/models/createversionpushop.py +0 -23
- cribl_control_plane/models/healthstatus.py +0 -33
- cribl_control_plane-0.0.39.dist-info/RECORD +0 -315
|
@@ -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
|
|
|
@@ -12,14 +16,14 @@ class OutputCriblHTTPType(str, Enum):
|
|
|
12
16
|
CRIBL_HTTP = "cribl_http"
|
|
13
17
|
|
|
14
18
|
|
|
15
|
-
class OutputCriblHTTPMinimumTLSVersion(str, Enum):
|
|
19
|
+
class OutputCriblHTTPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
20
|
TL_SV1 = "TLSv1"
|
|
17
21
|
TL_SV1_1 = "TLSv1.1"
|
|
18
22
|
TL_SV1_2 = "TLSv1.2"
|
|
19
23
|
TL_SV1_3 = "TLSv1.3"
|
|
20
24
|
|
|
21
25
|
|
|
22
|
-
class OutputCriblHTTPMaximumTLSVersion(str, Enum):
|
|
26
|
+
class OutputCriblHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
23
27
|
TL_SV1 = "TLSv1"
|
|
24
28
|
TL_SV1_1 = "TLSv1.1"
|
|
25
29
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -79,18 +83,46 @@ class OutputCriblHTTPTLSSettingsClientSide(BaseModel):
|
|
|
79
83
|
r"""Passphrase to use to decrypt private key"""
|
|
80
84
|
|
|
81
85
|
min_version: Annotated[
|
|
82
|
-
|
|
86
|
+
Annotated[
|
|
87
|
+
Optional[OutputCriblHTTPMinimumTLSVersion],
|
|
88
|
+
PlainValidator(validate_open_enum(False)),
|
|
89
|
+
],
|
|
90
|
+
pydantic.Field(alias="minVersion"),
|
|
83
91
|
] = None
|
|
84
92
|
|
|
85
93
|
max_version: Annotated[
|
|
86
|
-
|
|
94
|
+
Annotated[
|
|
95
|
+
Optional[OutputCriblHTTPMaximumTLSVersion],
|
|
96
|
+
PlainValidator(validate_open_enum(False)),
|
|
97
|
+
],
|
|
98
|
+
pydantic.Field(alias="maxVersion"),
|
|
87
99
|
] = None
|
|
88
100
|
|
|
89
|
-
|
|
90
|
-
|
|
101
|
+
@field_serializer("min_version")
|
|
102
|
+
def serialize_min_version(self, value):
|
|
103
|
+
if isinstance(value, str):
|
|
104
|
+
try:
|
|
105
|
+
return models.OutputCriblHTTPMinimumTLSVersion(value)
|
|
106
|
+
except ValueError:
|
|
107
|
+
return value
|
|
108
|
+
return value
|
|
109
|
+
|
|
110
|
+
@field_serializer("max_version")
|
|
111
|
+
def serialize_max_version(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.OutputCriblHTTPMaximumTLSVersion(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
class OutputCriblHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
91
121
|
r"""Codec to use to compress the data before sending"""
|
|
92
122
|
|
|
123
|
+
# None
|
|
93
124
|
NONE = "none"
|
|
125
|
+
# Gzip
|
|
94
126
|
GZIP = "gzip"
|
|
95
127
|
|
|
96
128
|
|
|
@@ -105,11 +137,14 @@ class OutputCriblHTTPExtraHTTPHeader(BaseModel):
|
|
|
105
137
|
name: Optional[str] = None
|
|
106
138
|
|
|
107
139
|
|
|
108
|
-
class OutputCriblHTTPFailedRequestLoggingMode(str, Enum):
|
|
140
|
+
class OutputCriblHTTPFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
109
141
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
110
142
|
|
|
143
|
+
# Payload
|
|
111
144
|
PAYLOAD = "payload"
|
|
145
|
+
# Payload + Headers
|
|
112
146
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
147
|
+
# None
|
|
113
148
|
NONE = "none"
|
|
114
149
|
|
|
115
150
|
|
|
@@ -167,11 +202,30 @@ class OutputCriblHTTPTimeoutRetrySettings(BaseModel):
|
|
|
167
202
|
r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
|
|
168
203
|
|
|
169
204
|
|
|
170
|
-
class
|
|
205
|
+
class OutputCriblHTTPAuthTokenTypedDict(TypedDict):
|
|
206
|
+
token_secret: str
|
|
207
|
+
r"""Select or create a stored text secret"""
|
|
208
|
+
enabled: NotRequired[bool]
|
|
209
|
+
description: NotRequired[str]
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
class OutputCriblHTTPAuthToken(BaseModel):
|
|
213
|
+
token_secret: Annotated[str, pydantic.Field(alias="tokenSecret")]
|
|
214
|
+
r"""Select or create a stored text secret"""
|
|
215
|
+
|
|
216
|
+
enabled: Optional[bool] = True
|
|
217
|
+
|
|
218
|
+
description: Optional[str] = None
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
class OutputCriblHTTPBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
171
222
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
172
223
|
|
|
224
|
+
# Block
|
|
173
225
|
BLOCK = "block"
|
|
226
|
+
# Drop
|
|
174
227
|
DROP = "drop"
|
|
228
|
+
# Persistent Queue
|
|
175
229
|
QUEUE = "queue"
|
|
176
230
|
|
|
177
231
|
|
|
@@ -190,28 +244,35 @@ class OutputCriblHTTPURL(BaseModel):
|
|
|
190
244
|
r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
|
|
191
245
|
|
|
192
246
|
|
|
193
|
-
class
|
|
247
|
+
class OutputCriblHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
248
|
+
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
249
|
+
|
|
250
|
+
# Error
|
|
251
|
+
ERROR = "error"
|
|
252
|
+
# Backpressure
|
|
253
|
+
ALWAYS = "always"
|
|
254
|
+
# Always On
|
|
255
|
+
BACKPRESSURE = "backpressure"
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
class OutputCriblHTTPPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
194
259
|
r"""Codec to use to compress the persisted data"""
|
|
195
260
|
|
|
261
|
+
# None
|
|
196
262
|
NONE = "none"
|
|
263
|
+
# Gzip
|
|
197
264
|
GZIP = "gzip"
|
|
198
265
|
|
|
199
266
|
|
|
200
|
-
class OutputCriblHTTPQueueFullBehavior(str, Enum):
|
|
267
|
+
class OutputCriblHTTPQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
201
268
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
202
269
|
|
|
270
|
+
# Block
|
|
203
271
|
BLOCK = "block"
|
|
272
|
+
# Drop new data
|
|
204
273
|
DROP = "drop"
|
|
205
274
|
|
|
206
275
|
|
|
207
|
-
class OutputCriblHTTPMode(str, Enum):
|
|
208
|
-
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
209
|
-
|
|
210
|
-
ERROR = "error"
|
|
211
|
-
BACKPRESSURE = "backpressure"
|
|
212
|
-
ALWAYS = "always"
|
|
213
|
-
|
|
214
|
-
|
|
215
276
|
class OutputCriblHTTPPqControlsTypedDict(TypedDict):
|
|
216
277
|
pass
|
|
217
278
|
|
|
@@ -269,6 +330,8 @@ class OutputCriblHTTPTypedDict(TypedDict):
|
|
|
269
330
|
timeout_retry_settings: NotRequired[OutputCriblHTTPTimeoutRetrySettingsTypedDict]
|
|
270
331
|
response_honor_retry_after_header: NotRequired[bool]
|
|
271
332
|
r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
|
|
333
|
+
auth_tokens: NotRequired[List[OutputCriblHTTPAuthTokenTypedDict]]
|
|
334
|
+
r"""Shared secrets to be used by connected environments to authorize connections. These tokens should also be installed in Cribl HTTP Source in Cribl.Cloud."""
|
|
272
335
|
on_backpressure: NotRequired[OutputCriblHTTPBackpressureBehavior]
|
|
273
336
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
274
337
|
description: NotRequired[str]
|
|
@@ -283,6 +346,16 @@ class OutputCriblHTTPTypedDict(TypedDict):
|
|
|
283
346
|
r"""The interval in which to re-resolve any hostnames and pick up destinations from A records"""
|
|
284
347
|
load_balance_stats_period_sec: NotRequired[float]
|
|
285
348
|
r"""How far back in time to keep traffic stats for load balancing purposes"""
|
|
349
|
+
pq_strict_ordering: NotRequired[bool]
|
|
350
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
351
|
+
pq_rate_per_sec: NotRequired[float]
|
|
352
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
353
|
+
pq_mode: NotRequired[OutputCriblHTTPMode]
|
|
354
|
+
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
355
|
+
pq_max_buffer_size: NotRequired[float]
|
|
356
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
357
|
+
pq_max_backpressure_sec: NotRequired[float]
|
|
358
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
286
359
|
pq_max_file_size: NotRequired[str]
|
|
287
360
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
288
361
|
pq_max_size: NotRequired[str]
|
|
@@ -293,8 +366,6 @@ class OutputCriblHTTPTypedDict(TypedDict):
|
|
|
293
366
|
r"""Codec to use to compress the persisted data"""
|
|
294
367
|
pq_on_backpressure: NotRequired[OutputCriblHTTPQueueFullBehavior]
|
|
295
368
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
296
|
-
pq_mode: NotRequired[OutputCriblHTTPMode]
|
|
297
|
-
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
298
369
|
pq_controls: NotRequired[OutputCriblHTTPPqControlsTypedDict]
|
|
299
370
|
|
|
300
371
|
|
|
@@ -335,7 +406,9 @@ class OutputCriblHTTP(BaseModel):
|
|
|
335
406
|
] = None
|
|
336
407
|
r"""Fields to exclude from the event. By default, all internal fields except `__output` are sent. Example: `cribl_pipe`, `c*`. Wildcards supported."""
|
|
337
408
|
|
|
338
|
-
compression:
|
|
409
|
+
compression: Annotated[
|
|
410
|
+
Optional[OutputCriblHTTPCompression], PlainValidator(validate_open_enum(False))
|
|
411
|
+
] = OutputCriblHTTPCompression.GZIP
|
|
339
412
|
r"""Codec to use to compress the data before sending"""
|
|
340
413
|
|
|
341
414
|
concurrency: Optional[float] = 5
|
|
@@ -374,7 +447,10 @@ class OutputCriblHTTP(BaseModel):
|
|
|
374
447
|
r"""Headers to add to all events"""
|
|
375
448
|
|
|
376
449
|
failed_request_logging_mode: Annotated[
|
|
377
|
-
|
|
450
|
+
Annotated[
|
|
451
|
+
Optional[OutputCriblHTTPFailedRequestLoggingMode],
|
|
452
|
+
PlainValidator(validate_open_enum(False)),
|
|
453
|
+
],
|
|
378
454
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
379
455
|
] = OutputCriblHTTPFailedRequestLoggingMode.NONE
|
|
380
456
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -397,11 +473,19 @@ class OutputCriblHTTP(BaseModel):
|
|
|
397
473
|
|
|
398
474
|
response_honor_retry_after_header: Annotated[
|
|
399
475
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
400
|
-
] =
|
|
476
|
+
] = True
|
|
401
477
|
r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
|
|
402
478
|
|
|
479
|
+
auth_tokens: Annotated[
|
|
480
|
+
Optional[List[OutputCriblHTTPAuthToken]], pydantic.Field(alias="authTokens")
|
|
481
|
+
] = None
|
|
482
|
+
r"""Shared secrets to be used by connected environments to authorize connections. These tokens should also be installed in Cribl HTTP Source in Cribl.Cloud."""
|
|
483
|
+
|
|
403
484
|
on_backpressure: Annotated[
|
|
404
|
-
|
|
485
|
+
Annotated[
|
|
486
|
+
Optional[OutputCriblHTTPBackpressureBehavior],
|
|
487
|
+
PlainValidator(validate_open_enum(False)),
|
|
488
|
+
],
|
|
405
489
|
pydantic.Field(alias="onBackpressure"),
|
|
406
490
|
] = OutputCriblHTTPBackpressureBehavior.BLOCK
|
|
407
491
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -431,6 +515,34 @@ class OutputCriblHTTP(BaseModel):
|
|
|
431
515
|
] = 300
|
|
432
516
|
r"""How far back in time to keep traffic stats for load balancing purposes"""
|
|
433
517
|
|
|
518
|
+
pq_strict_ordering: Annotated[
|
|
519
|
+
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
520
|
+
] = True
|
|
521
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
522
|
+
|
|
523
|
+
pq_rate_per_sec: Annotated[
|
|
524
|
+
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
525
|
+
] = 0
|
|
526
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
527
|
+
|
|
528
|
+
pq_mode: Annotated[
|
|
529
|
+
Annotated[
|
|
530
|
+
Optional[OutputCriblHTTPMode], PlainValidator(validate_open_enum(False))
|
|
531
|
+
],
|
|
532
|
+
pydantic.Field(alias="pqMode"),
|
|
533
|
+
] = OutputCriblHTTPMode.ERROR
|
|
534
|
+
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
535
|
+
|
|
536
|
+
pq_max_buffer_size: Annotated[
|
|
537
|
+
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
538
|
+
] = 42
|
|
539
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
540
|
+
|
|
541
|
+
pq_max_backpressure_sec: Annotated[
|
|
542
|
+
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
543
|
+
] = 30
|
|
544
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
545
|
+
|
|
434
546
|
pq_max_file_size: Annotated[
|
|
435
547
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
436
548
|
] = "1 MB"
|
|
@@ -445,22 +557,77 @@ class OutputCriblHTTP(BaseModel):
|
|
|
445
557
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
446
558
|
|
|
447
559
|
pq_compress: Annotated[
|
|
448
|
-
|
|
560
|
+
Annotated[
|
|
561
|
+
Optional[OutputCriblHTTPPqCompressCompression],
|
|
562
|
+
PlainValidator(validate_open_enum(False)),
|
|
563
|
+
],
|
|
449
564
|
pydantic.Field(alias="pqCompress"),
|
|
450
565
|
] = OutputCriblHTTPPqCompressCompression.NONE
|
|
451
566
|
r"""Codec to use to compress the persisted data"""
|
|
452
567
|
|
|
453
568
|
pq_on_backpressure: Annotated[
|
|
454
|
-
|
|
569
|
+
Annotated[
|
|
570
|
+
Optional[OutputCriblHTTPQueueFullBehavior],
|
|
571
|
+
PlainValidator(validate_open_enum(False)),
|
|
572
|
+
],
|
|
455
573
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
456
574
|
] = OutputCriblHTTPQueueFullBehavior.BLOCK
|
|
457
575
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
458
576
|
|
|
459
|
-
pq_mode: Annotated[
|
|
460
|
-
Optional[OutputCriblHTTPMode], pydantic.Field(alias="pqMode")
|
|
461
|
-
] = OutputCriblHTTPMode.ERROR
|
|
462
|
-
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
463
|
-
|
|
464
577
|
pq_controls: Annotated[
|
|
465
578
|
Optional[OutputCriblHTTPPqControls], pydantic.Field(alias="pqControls")
|
|
466
579
|
] = None
|
|
580
|
+
|
|
581
|
+
@field_serializer("compression")
|
|
582
|
+
def serialize_compression(self, value):
|
|
583
|
+
if isinstance(value, str):
|
|
584
|
+
try:
|
|
585
|
+
return models.OutputCriblHTTPCompression(value)
|
|
586
|
+
except ValueError:
|
|
587
|
+
return value
|
|
588
|
+
return value
|
|
589
|
+
|
|
590
|
+
@field_serializer("failed_request_logging_mode")
|
|
591
|
+
def serialize_failed_request_logging_mode(self, value):
|
|
592
|
+
if isinstance(value, str):
|
|
593
|
+
try:
|
|
594
|
+
return models.OutputCriblHTTPFailedRequestLoggingMode(value)
|
|
595
|
+
except ValueError:
|
|
596
|
+
return value
|
|
597
|
+
return value
|
|
598
|
+
|
|
599
|
+
@field_serializer("on_backpressure")
|
|
600
|
+
def serialize_on_backpressure(self, value):
|
|
601
|
+
if isinstance(value, str):
|
|
602
|
+
try:
|
|
603
|
+
return models.OutputCriblHTTPBackpressureBehavior(value)
|
|
604
|
+
except ValueError:
|
|
605
|
+
return value
|
|
606
|
+
return value
|
|
607
|
+
|
|
608
|
+
@field_serializer("pq_mode")
|
|
609
|
+
def serialize_pq_mode(self, value):
|
|
610
|
+
if isinstance(value, str):
|
|
611
|
+
try:
|
|
612
|
+
return models.OutputCriblHTTPMode(value)
|
|
613
|
+
except ValueError:
|
|
614
|
+
return value
|
|
615
|
+
return value
|
|
616
|
+
|
|
617
|
+
@field_serializer("pq_compress")
|
|
618
|
+
def serialize_pq_compress(self, value):
|
|
619
|
+
if isinstance(value, str):
|
|
620
|
+
try:
|
|
621
|
+
return models.OutputCriblHTTPPqCompressCompression(value)
|
|
622
|
+
except ValueError:
|
|
623
|
+
return value
|
|
624
|
+
return value
|
|
625
|
+
|
|
626
|
+
@field_serializer("pq_on_backpressure")
|
|
627
|
+
def serialize_pq_on_backpressure(self, value):
|
|
628
|
+
if isinstance(value, str):
|
|
629
|
+
try:
|
|
630
|
+
return models.OutputCriblHTTPQueueFullBehavior(value)
|
|
631
|
+
except ValueError:
|
|
632
|
+
return value
|
|
633
|
+
return value
|
|
@@ -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
|
|
|
@@ -12,64 +16,87 @@ class OutputCriblLakeType(str, Enum):
|
|
|
12
16
|
CRIBL_LAKE = "cribl_lake"
|
|
13
17
|
|
|
14
18
|
|
|
15
|
-
class OutputCriblLakeSignatureVersion(str, Enum):
|
|
19
|
+
class OutputCriblLakeSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
20
|
r"""Signature version to use for signing S3 requests"""
|
|
17
21
|
|
|
18
22
|
V2 = "v2"
|
|
19
23
|
V4 = "v4"
|
|
20
24
|
|
|
21
25
|
|
|
22
|
-
class OutputCriblLakeObjectACL(str, Enum):
|
|
26
|
+
class OutputCriblLakeObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
23
27
|
r"""Object ACL to assign to uploaded objects"""
|
|
24
28
|
|
|
29
|
+
# Private
|
|
25
30
|
PRIVATE = "private"
|
|
31
|
+
# Public Read Only
|
|
26
32
|
PUBLIC_READ = "public-read"
|
|
33
|
+
# Public Read/Write
|
|
27
34
|
PUBLIC_READ_WRITE = "public-read-write"
|
|
35
|
+
# Authenticated Read Only
|
|
28
36
|
AUTHENTICATED_READ = "authenticated-read"
|
|
37
|
+
# AWS EC2 AMI Read Only
|
|
29
38
|
AWS_EXEC_READ = "aws-exec-read"
|
|
39
|
+
# Bucket Owner Read Only
|
|
30
40
|
BUCKET_OWNER_READ = "bucket-owner-read"
|
|
41
|
+
# Bucket Owner Full Control
|
|
31
42
|
BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
|
|
32
43
|
|
|
33
44
|
|
|
34
|
-
class OutputCriblLakeStorageClass(str, Enum):
|
|
45
|
+
class OutputCriblLakeStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
35
46
|
r"""Storage class to select for uploaded objects"""
|
|
36
47
|
|
|
48
|
+
# Standard
|
|
37
49
|
STANDARD = "STANDARD"
|
|
50
|
+
# Reduced Redundancy Storage
|
|
38
51
|
REDUCED_REDUNDANCY = "REDUCED_REDUNDANCY"
|
|
52
|
+
# Standard, Infrequent Access
|
|
39
53
|
STANDARD_IA = "STANDARD_IA"
|
|
54
|
+
# One Zone, Infrequent Access
|
|
40
55
|
ONEZONE_IA = "ONEZONE_IA"
|
|
56
|
+
# Intelligent Tiering
|
|
41
57
|
INTELLIGENT_TIERING = "INTELLIGENT_TIERING"
|
|
58
|
+
# Glacier Flexible Retrieval
|
|
42
59
|
GLACIER = "GLACIER"
|
|
60
|
+
# Glacier Instant Retrieval
|
|
43
61
|
GLACIER_IR = "GLACIER_IR"
|
|
62
|
+
# Glacier Deep Archive
|
|
44
63
|
DEEP_ARCHIVE = "DEEP_ARCHIVE"
|
|
45
64
|
|
|
46
65
|
|
|
47
|
-
class OutputCriblLakeServerSideEncryptionForUploadedObjects(
|
|
66
|
+
class OutputCriblLakeServerSideEncryptionForUploadedObjects(
|
|
67
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
68
|
+
):
|
|
69
|
+
# Amazon S3 Managed Key
|
|
48
70
|
AES256 = "AES256"
|
|
71
|
+
# AWS KMS Managed Key
|
|
49
72
|
AWS_KMS = "aws:kms"
|
|
50
73
|
|
|
51
74
|
|
|
52
|
-
class OutputCriblLakeBackpressureBehavior(str, Enum):
|
|
75
|
+
class OutputCriblLakeBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
53
76
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
54
77
|
|
|
78
|
+
# Block
|
|
55
79
|
BLOCK = "block"
|
|
80
|
+
# Drop
|
|
56
81
|
DROP = "drop"
|
|
57
82
|
|
|
58
83
|
|
|
59
|
-
class OutputCriblLakeDiskSpaceProtection(str, Enum):
|
|
84
|
+
class OutputCriblLakeDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
60
85
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
61
86
|
|
|
87
|
+
# Block
|
|
62
88
|
BLOCK = "block"
|
|
89
|
+
# Drop
|
|
63
90
|
DROP = "drop"
|
|
64
91
|
|
|
65
92
|
|
|
66
|
-
class AwsAuthenticationMethod(str, Enum):
|
|
93
|
+
class AwsAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
67
94
|
AUTO = "auto"
|
|
68
95
|
AUTO_RPC = "auto_rpc"
|
|
69
96
|
MANUAL = "manual"
|
|
70
97
|
|
|
71
98
|
|
|
72
|
-
class OutputCriblLakeFormat(str, Enum):
|
|
99
|
+
class OutputCriblLakeFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
73
100
|
JSON = "json"
|
|
74
101
|
PARQUET = "parquet"
|
|
75
102
|
DDSS = "ddss"
|
|
@@ -144,6 +171,8 @@ class OutputCriblLakeTypedDict(TypedDict):
|
|
|
144
171
|
r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
|
|
145
172
|
on_disk_full_backpressure: NotRequired[OutputCriblLakeDiskSpaceProtection]
|
|
146
173
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
174
|
+
force_close_on_shutdown: NotRequired[bool]
|
|
175
|
+
r"""Force all staged files to close during an orderly Node shutdown. This triggers immediate upload of in-progress data — regardless of idle time, file age, or size thresholds — to minimize data loss."""
|
|
147
176
|
max_file_open_time_sec: NotRequired[float]
|
|
148
177
|
r"""Maximum amount of time to write to a file. Files open for longer than this will be closed and moved to final output location."""
|
|
149
178
|
max_file_idle_time_sec: NotRequired[float]
|
|
@@ -159,6 +188,8 @@ class OutputCriblLakeTypedDict(TypedDict):
|
|
|
159
188
|
description: NotRequired[str]
|
|
160
189
|
empty_dir_cleanup_sec: NotRequired[float]
|
|
161
190
|
r"""How frequently, in seconds, to clean up empty directories"""
|
|
191
|
+
directory_batch_size: NotRequired[float]
|
|
192
|
+
r"""Number of directories to process in each batch during cleanup of empty directories. Minimum is 10, maximum is 10000. Higher values may require more memory."""
|
|
162
193
|
deadletter_path: NotRequired[str]
|
|
163
194
|
r"""Storage location for files that fail to reach their final destination after maximum retries are exceeded"""
|
|
164
195
|
max_retry_num: NotRequired[float]
|
|
@@ -200,7 +231,10 @@ class OutputCriblLake(BaseModel):
|
|
|
200
231
|
r"""S3 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to S3-compatible endpoint."""
|
|
201
232
|
|
|
202
233
|
signature_version: Annotated[
|
|
203
|
-
|
|
234
|
+
Annotated[
|
|
235
|
+
Optional[OutputCriblLakeSignatureVersion],
|
|
236
|
+
PlainValidator(validate_open_enum(False)),
|
|
237
|
+
],
|
|
204
238
|
pydantic.Field(alias="signatureVersion"),
|
|
205
239
|
] = OutputCriblLakeSignatureVersion.V4
|
|
206
240
|
r"""Signature version to use for signing S3 requests"""
|
|
@@ -249,17 +283,28 @@ class OutputCriblLake(BaseModel):
|
|
|
249
283
|
r"""Lake dataset to send the data to."""
|
|
250
284
|
|
|
251
285
|
object_acl: Annotated[
|
|
252
|
-
|
|
286
|
+
Annotated[
|
|
287
|
+
Optional[OutputCriblLakeObjectACL],
|
|
288
|
+
PlainValidator(validate_open_enum(False)),
|
|
289
|
+
],
|
|
290
|
+
pydantic.Field(alias="objectACL"),
|
|
253
291
|
] = OutputCriblLakeObjectACL.PRIVATE
|
|
254
292
|
r"""Object ACL to assign to uploaded objects"""
|
|
255
293
|
|
|
256
294
|
storage_class: Annotated[
|
|
257
|
-
|
|
295
|
+
Annotated[
|
|
296
|
+
Optional[OutputCriblLakeStorageClass],
|
|
297
|
+
PlainValidator(validate_open_enum(False)),
|
|
298
|
+
],
|
|
299
|
+
pydantic.Field(alias="storageClass"),
|
|
258
300
|
] = None
|
|
259
301
|
r"""Storage class to select for uploaded objects"""
|
|
260
302
|
|
|
261
303
|
server_side_encryption: Annotated[
|
|
262
|
-
|
|
304
|
+
Annotated[
|
|
305
|
+
Optional[OutputCriblLakeServerSideEncryptionForUploadedObjects],
|
|
306
|
+
PlainValidator(validate_open_enum(False)),
|
|
307
|
+
],
|
|
263
308
|
pydantic.Field(alias="serverSideEncryption"),
|
|
264
309
|
] = None
|
|
265
310
|
|
|
@@ -300,7 +345,10 @@ class OutputCriblLake(BaseModel):
|
|
|
300
345
|
r"""Buffer size used to write to a file"""
|
|
301
346
|
|
|
302
347
|
on_backpressure: Annotated[
|
|
303
|
-
|
|
348
|
+
Annotated[
|
|
349
|
+
Optional[OutputCriblLakeBackpressureBehavior],
|
|
350
|
+
PlainValidator(validate_open_enum(False)),
|
|
351
|
+
],
|
|
304
352
|
pydantic.Field(alias="onBackpressure"),
|
|
305
353
|
] = OutputCriblLakeBackpressureBehavior.BLOCK
|
|
306
354
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -311,11 +359,19 @@ class OutputCriblLake(BaseModel):
|
|
|
311
359
|
r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
|
|
312
360
|
|
|
313
361
|
on_disk_full_backpressure: Annotated[
|
|
314
|
-
|
|
362
|
+
Annotated[
|
|
363
|
+
Optional[OutputCriblLakeDiskSpaceProtection],
|
|
364
|
+
PlainValidator(validate_open_enum(False)),
|
|
365
|
+
],
|
|
315
366
|
pydantic.Field(alias="onDiskFullBackpressure"),
|
|
316
367
|
] = OutputCriblLakeDiskSpaceProtection.BLOCK
|
|
317
368
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
318
369
|
|
|
370
|
+
force_close_on_shutdown: Annotated[
|
|
371
|
+
Optional[bool], pydantic.Field(alias="forceCloseOnShutdown")
|
|
372
|
+
] = False
|
|
373
|
+
r"""Force all staged files to close during an orderly Node shutdown. This triggers immediate upload of in-progress data — regardless of idle time, file age, or size thresholds — to minimize data loss."""
|
|
374
|
+
|
|
319
375
|
max_file_open_time_sec: Annotated[
|
|
320
376
|
Optional[float], pydantic.Field(alias="maxFileOpenTimeSec")
|
|
321
377
|
] = 300
|
|
@@ -337,12 +393,17 @@ class OutputCriblLake(BaseModel):
|
|
|
337
393
|
r"""Maximum number of files that can be waiting for upload before backpressure is applied"""
|
|
338
394
|
|
|
339
395
|
aws_authentication_method: Annotated[
|
|
340
|
-
|
|
396
|
+
Annotated[
|
|
397
|
+
Optional[AwsAuthenticationMethod], PlainValidator(validate_open_enum(False))
|
|
398
|
+
],
|
|
341
399
|
pydantic.Field(alias="awsAuthenticationMethod"),
|
|
342
400
|
] = AwsAuthenticationMethod.AUTO
|
|
343
401
|
|
|
344
402
|
format_: Annotated[
|
|
345
|
-
|
|
403
|
+
Annotated[
|
|
404
|
+
Optional[OutputCriblLakeFormat], PlainValidator(validate_open_enum(False))
|
|
405
|
+
],
|
|
406
|
+
pydantic.Field(alias="format"),
|
|
346
407
|
] = None
|
|
347
408
|
|
|
348
409
|
max_concurrent_file_parts: Annotated[
|
|
@@ -357,6 +418,11 @@ class OutputCriblLake(BaseModel):
|
|
|
357
418
|
] = 300
|
|
358
419
|
r"""How frequently, in seconds, to clean up empty directories"""
|
|
359
420
|
|
|
421
|
+
directory_batch_size: Annotated[
|
|
422
|
+
Optional[float], pydantic.Field(alias="directoryBatchSize")
|
|
423
|
+
] = 1000
|
|
424
|
+
r"""Number of directories to process in each batch during cleanup of empty directories. Minimum is 10, maximum is 10000. Higher values may require more memory."""
|
|
425
|
+
|
|
360
426
|
deadletter_path: Annotated[
|
|
361
427
|
Optional[str], pydantic.Field(alias="deadletterPath")
|
|
362
428
|
] = "$CRIBL_HOME/state/outputs/dead-letter"
|
|
@@ -364,3 +430,77 @@ class OutputCriblLake(BaseModel):
|
|
|
364
430
|
|
|
365
431
|
max_retry_num: Annotated[Optional[float], pydantic.Field(alias="maxRetryNum")] = 20
|
|
366
432
|
r"""The maximum number of times a file will attempt to move to its final destination before being dead-lettered"""
|
|
433
|
+
|
|
434
|
+
@field_serializer("signature_version")
|
|
435
|
+
def serialize_signature_version(self, value):
|
|
436
|
+
if isinstance(value, str):
|
|
437
|
+
try:
|
|
438
|
+
return models.OutputCriblLakeSignatureVersion(value)
|
|
439
|
+
except ValueError:
|
|
440
|
+
return value
|
|
441
|
+
return value
|
|
442
|
+
|
|
443
|
+
@field_serializer("object_acl")
|
|
444
|
+
def serialize_object_acl(self, value):
|
|
445
|
+
if isinstance(value, str):
|
|
446
|
+
try:
|
|
447
|
+
return models.OutputCriblLakeObjectACL(value)
|
|
448
|
+
except ValueError:
|
|
449
|
+
return value
|
|
450
|
+
return value
|
|
451
|
+
|
|
452
|
+
@field_serializer("storage_class")
|
|
453
|
+
def serialize_storage_class(self, value):
|
|
454
|
+
if isinstance(value, str):
|
|
455
|
+
try:
|
|
456
|
+
return models.OutputCriblLakeStorageClass(value)
|
|
457
|
+
except ValueError:
|
|
458
|
+
return value
|
|
459
|
+
return value
|
|
460
|
+
|
|
461
|
+
@field_serializer("server_side_encryption")
|
|
462
|
+
def serialize_server_side_encryption(self, value):
|
|
463
|
+
if isinstance(value, str):
|
|
464
|
+
try:
|
|
465
|
+
return models.OutputCriblLakeServerSideEncryptionForUploadedObjects(
|
|
466
|
+
value
|
|
467
|
+
)
|
|
468
|
+
except ValueError:
|
|
469
|
+
return value
|
|
470
|
+
return value
|
|
471
|
+
|
|
472
|
+
@field_serializer("on_backpressure")
|
|
473
|
+
def serialize_on_backpressure(self, value):
|
|
474
|
+
if isinstance(value, str):
|
|
475
|
+
try:
|
|
476
|
+
return models.OutputCriblLakeBackpressureBehavior(value)
|
|
477
|
+
except ValueError:
|
|
478
|
+
return value
|
|
479
|
+
return value
|
|
480
|
+
|
|
481
|
+
@field_serializer("on_disk_full_backpressure")
|
|
482
|
+
def serialize_on_disk_full_backpressure(self, value):
|
|
483
|
+
if isinstance(value, str):
|
|
484
|
+
try:
|
|
485
|
+
return models.OutputCriblLakeDiskSpaceProtection(value)
|
|
486
|
+
except ValueError:
|
|
487
|
+
return value
|
|
488
|
+
return value
|
|
489
|
+
|
|
490
|
+
@field_serializer("aws_authentication_method")
|
|
491
|
+
def serialize_aws_authentication_method(self, value):
|
|
492
|
+
if isinstance(value, str):
|
|
493
|
+
try:
|
|
494
|
+
return models.AwsAuthenticationMethod(value)
|
|
495
|
+
except ValueError:
|
|
496
|
+
return value
|
|
497
|
+
return value
|
|
498
|
+
|
|
499
|
+
@field_serializer("format_")
|
|
500
|
+
def serialize_format_(self, value):
|
|
501
|
+
if isinstance(value, str):
|
|
502
|
+
try:
|
|
503
|
+
return models.OutputCriblLakeFormat(value)
|
|
504
|
+
except ValueError:
|
|
505
|
+
return value
|
|
506
|
+
return value
|