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
|
|
|
@@ -23,22 +27,27 @@ class OutputHumioHecExtraHTTPHeader(BaseModel):
|
|
|
23
27
|
name: Optional[str] = None
|
|
24
28
|
|
|
25
29
|
|
|
26
|
-
class OutputHumioHecFailedRequestLoggingMode(str, Enum):
|
|
30
|
+
class OutputHumioHecFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
31
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
28
32
|
|
|
33
|
+
# Payload
|
|
29
34
|
PAYLOAD = "payload"
|
|
35
|
+
# Payload + Headers
|
|
30
36
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
37
|
+
# None
|
|
31
38
|
NONE = "none"
|
|
32
39
|
|
|
33
40
|
|
|
34
|
-
class OutputHumioHecRequestFormat(str, Enum):
|
|
41
|
+
class OutputHumioHecRequestFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
35
42
|
r"""When set to JSON, the event is automatically formatted with required fields before sending. When set to Raw, only the event's `_raw` value is sent."""
|
|
36
43
|
|
|
44
|
+
# JSON
|
|
37
45
|
JSON = "JSON"
|
|
46
|
+
# Raw
|
|
38
47
|
RAW = "raw"
|
|
39
48
|
|
|
40
49
|
|
|
41
|
-
class OutputHumioHecAuthenticationMethod(str, Enum):
|
|
50
|
+
class OutputHumioHecAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
42
51
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
43
52
|
|
|
44
53
|
MANUAL = "manual"
|
|
@@ -99,36 +108,46 @@ class OutputHumioHecTimeoutRetrySettings(BaseModel):
|
|
|
99
108
|
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)."""
|
|
100
109
|
|
|
101
110
|
|
|
102
|
-
class OutputHumioHecBackpressureBehavior(str, Enum):
|
|
111
|
+
class OutputHumioHecBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
103
112
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
104
113
|
|
|
114
|
+
# Block
|
|
105
115
|
BLOCK = "block"
|
|
116
|
+
# Drop
|
|
106
117
|
DROP = "drop"
|
|
118
|
+
# Persistent Queue
|
|
107
119
|
QUEUE = "queue"
|
|
108
120
|
|
|
109
121
|
|
|
110
|
-
class
|
|
122
|
+
class OutputHumioHecMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
123
|
+
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."""
|
|
124
|
+
|
|
125
|
+
# Error
|
|
126
|
+
ERROR = "error"
|
|
127
|
+
# Backpressure
|
|
128
|
+
ALWAYS = "always"
|
|
129
|
+
# Always On
|
|
130
|
+
BACKPRESSURE = "backpressure"
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
class OutputHumioHecCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
111
134
|
r"""Codec to use to compress the persisted data"""
|
|
112
135
|
|
|
136
|
+
# None
|
|
113
137
|
NONE = "none"
|
|
138
|
+
# Gzip
|
|
114
139
|
GZIP = "gzip"
|
|
115
140
|
|
|
116
141
|
|
|
117
|
-
class OutputHumioHecQueueFullBehavior(str, Enum):
|
|
142
|
+
class OutputHumioHecQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
118
143
|
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."""
|
|
119
144
|
|
|
145
|
+
# Block
|
|
120
146
|
BLOCK = "block"
|
|
147
|
+
# Drop new data
|
|
121
148
|
DROP = "drop"
|
|
122
149
|
|
|
123
150
|
|
|
124
|
-
class OutputHumioHecMode(str, Enum):
|
|
125
|
-
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."""
|
|
126
|
-
|
|
127
|
-
ERROR = "error"
|
|
128
|
-
BACKPRESSURE = "backpressure"
|
|
129
|
-
ALWAYS = "always"
|
|
130
|
-
|
|
131
|
-
|
|
132
151
|
class OutputHumioHecPqControlsTypedDict(TypedDict):
|
|
133
152
|
pass
|
|
134
153
|
|
|
@@ -194,6 +213,16 @@ class OutputHumioHecTypedDict(TypedDict):
|
|
|
194
213
|
r"""CrowdStrike Falcon LogScale authentication token"""
|
|
195
214
|
text_secret: NotRequired[str]
|
|
196
215
|
r"""Select or create a stored text secret"""
|
|
216
|
+
pq_strict_ordering: NotRequired[bool]
|
|
217
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
218
|
+
pq_rate_per_sec: NotRequired[float]
|
|
219
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
220
|
+
pq_mode: NotRequired[OutputHumioHecMode]
|
|
221
|
+
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."""
|
|
222
|
+
pq_max_buffer_size: NotRequired[float]
|
|
223
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
224
|
+
pq_max_backpressure_sec: NotRequired[float]
|
|
225
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
197
226
|
pq_max_file_size: NotRequired[str]
|
|
198
227
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
199
228
|
pq_max_size: NotRequired[str]
|
|
@@ -204,8 +233,6 @@ class OutputHumioHecTypedDict(TypedDict):
|
|
|
204
233
|
r"""Codec to use to compress the persisted data"""
|
|
205
234
|
pq_on_backpressure: NotRequired[OutputHumioHecQueueFullBehavior]
|
|
206
235
|
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."""
|
|
207
|
-
pq_mode: NotRequired[OutputHumioHecMode]
|
|
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
236
|
pq_controls: NotRequired[OutputHumioHecPqControlsTypedDict]
|
|
210
237
|
|
|
211
238
|
|
|
@@ -276,7 +303,10 @@ class OutputHumioHec(BaseModel):
|
|
|
276
303
|
r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
|
|
277
304
|
|
|
278
305
|
failed_request_logging_mode: Annotated[
|
|
279
|
-
|
|
306
|
+
Annotated[
|
|
307
|
+
Optional[OutputHumioHecFailedRequestLoggingMode],
|
|
308
|
+
PlainValidator(validate_open_enum(False)),
|
|
309
|
+
],
|
|
280
310
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
281
311
|
] = OutputHumioHecFailedRequestLoggingMode.NONE
|
|
282
312
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -287,12 +317,20 @@ class OutputHumioHec(BaseModel):
|
|
|
287
317
|
r"""List of headers that are safe to log in plain text"""
|
|
288
318
|
|
|
289
319
|
format_: Annotated[
|
|
290
|
-
|
|
320
|
+
Annotated[
|
|
321
|
+
Optional[OutputHumioHecRequestFormat],
|
|
322
|
+
PlainValidator(validate_open_enum(False)),
|
|
323
|
+
],
|
|
324
|
+
pydantic.Field(alias="format"),
|
|
291
325
|
] = OutputHumioHecRequestFormat.JSON
|
|
292
326
|
r"""When set to JSON, the event is automatically formatted with required fields before sending. When set to Raw, only the event's `_raw` value is sent."""
|
|
293
327
|
|
|
294
328
|
auth_type: Annotated[
|
|
295
|
-
|
|
329
|
+
Annotated[
|
|
330
|
+
Optional[OutputHumioHecAuthenticationMethod],
|
|
331
|
+
PlainValidator(validate_open_enum(False)),
|
|
332
|
+
],
|
|
333
|
+
pydantic.Field(alias="authType"),
|
|
296
334
|
] = OutputHumioHecAuthenticationMethod.MANUAL
|
|
297
335
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
298
336
|
|
|
@@ -309,11 +347,14 @@ class OutputHumioHec(BaseModel):
|
|
|
309
347
|
|
|
310
348
|
response_honor_retry_after_header: Annotated[
|
|
311
349
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
312
|
-
] =
|
|
350
|
+
] = True
|
|
313
351
|
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."""
|
|
314
352
|
|
|
315
353
|
on_backpressure: Annotated[
|
|
316
|
-
|
|
354
|
+
Annotated[
|
|
355
|
+
Optional[OutputHumioHecBackpressureBehavior],
|
|
356
|
+
PlainValidator(validate_open_enum(False)),
|
|
357
|
+
],
|
|
317
358
|
pydantic.Field(alias="onBackpressure"),
|
|
318
359
|
] = OutputHumioHecBackpressureBehavior.BLOCK
|
|
319
360
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
@@ -326,6 +367,34 @@ class OutputHumioHec(BaseModel):
|
|
|
326
367
|
text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
|
|
327
368
|
r"""Select or create a stored text secret"""
|
|
328
369
|
|
|
370
|
+
pq_strict_ordering: Annotated[
|
|
371
|
+
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
372
|
+
] = True
|
|
373
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
374
|
+
|
|
375
|
+
pq_rate_per_sec: Annotated[
|
|
376
|
+
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
377
|
+
] = 0
|
|
378
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
379
|
+
|
|
380
|
+
pq_mode: Annotated[
|
|
381
|
+
Annotated[
|
|
382
|
+
Optional[OutputHumioHecMode], PlainValidator(validate_open_enum(False))
|
|
383
|
+
],
|
|
384
|
+
pydantic.Field(alias="pqMode"),
|
|
385
|
+
] = OutputHumioHecMode.ERROR
|
|
386
|
+
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."""
|
|
387
|
+
|
|
388
|
+
pq_max_buffer_size: Annotated[
|
|
389
|
+
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
390
|
+
] = 42
|
|
391
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
392
|
+
|
|
393
|
+
pq_max_backpressure_sec: Annotated[
|
|
394
|
+
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
395
|
+
] = 30
|
|
396
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
397
|
+
|
|
329
398
|
pq_max_file_size: Annotated[
|
|
330
399
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
331
400
|
] = "1 MB"
|
|
@@ -340,21 +409,86 @@ class OutputHumioHec(BaseModel):
|
|
|
340
409
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
341
410
|
|
|
342
411
|
pq_compress: Annotated[
|
|
343
|
-
|
|
412
|
+
Annotated[
|
|
413
|
+
Optional[OutputHumioHecCompression],
|
|
414
|
+
PlainValidator(validate_open_enum(False)),
|
|
415
|
+
],
|
|
416
|
+
pydantic.Field(alias="pqCompress"),
|
|
344
417
|
] = OutputHumioHecCompression.NONE
|
|
345
418
|
r"""Codec to use to compress the persisted data"""
|
|
346
419
|
|
|
347
420
|
pq_on_backpressure: Annotated[
|
|
348
|
-
|
|
421
|
+
Annotated[
|
|
422
|
+
Optional[OutputHumioHecQueueFullBehavior],
|
|
423
|
+
PlainValidator(validate_open_enum(False)),
|
|
424
|
+
],
|
|
349
425
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
350
426
|
] = OutputHumioHecQueueFullBehavior.BLOCK
|
|
351
427
|
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."""
|
|
352
428
|
|
|
353
|
-
pq_mode: Annotated[Optional[OutputHumioHecMode], pydantic.Field(alias="pqMode")] = (
|
|
354
|
-
OutputHumioHecMode.ERROR
|
|
355
|
-
)
|
|
356
|
-
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."""
|
|
357
|
-
|
|
358
429
|
pq_controls: Annotated[
|
|
359
430
|
Optional[OutputHumioHecPqControls], pydantic.Field(alias="pqControls")
|
|
360
431
|
] = None
|
|
432
|
+
|
|
433
|
+
@field_serializer("failed_request_logging_mode")
|
|
434
|
+
def serialize_failed_request_logging_mode(self, value):
|
|
435
|
+
if isinstance(value, str):
|
|
436
|
+
try:
|
|
437
|
+
return models.OutputHumioHecFailedRequestLoggingMode(value)
|
|
438
|
+
except ValueError:
|
|
439
|
+
return value
|
|
440
|
+
return value
|
|
441
|
+
|
|
442
|
+
@field_serializer("format_")
|
|
443
|
+
def serialize_format_(self, value):
|
|
444
|
+
if isinstance(value, str):
|
|
445
|
+
try:
|
|
446
|
+
return models.OutputHumioHecRequestFormat(value)
|
|
447
|
+
except ValueError:
|
|
448
|
+
return value
|
|
449
|
+
return value
|
|
450
|
+
|
|
451
|
+
@field_serializer("auth_type")
|
|
452
|
+
def serialize_auth_type(self, value):
|
|
453
|
+
if isinstance(value, str):
|
|
454
|
+
try:
|
|
455
|
+
return models.OutputHumioHecAuthenticationMethod(value)
|
|
456
|
+
except ValueError:
|
|
457
|
+
return value
|
|
458
|
+
return value
|
|
459
|
+
|
|
460
|
+
@field_serializer("on_backpressure")
|
|
461
|
+
def serialize_on_backpressure(self, value):
|
|
462
|
+
if isinstance(value, str):
|
|
463
|
+
try:
|
|
464
|
+
return models.OutputHumioHecBackpressureBehavior(value)
|
|
465
|
+
except ValueError:
|
|
466
|
+
return value
|
|
467
|
+
return value
|
|
468
|
+
|
|
469
|
+
@field_serializer("pq_mode")
|
|
470
|
+
def serialize_pq_mode(self, value):
|
|
471
|
+
if isinstance(value, str):
|
|
472
|
+
try:
|
|
473
|
+
return models.OutputHumioHecMode(value)
|
|
474
|
+
except ValueError:
|
|
475
|
+
return value
|
|
476
|
+
return value
|
|
477
|
+
|
|
478
|
+
@field_serializer("pq_compress")
|
|
479
|
+
def serialize_pq_compress(self, value):
|
|
480
|
+
if isinstance(value, str):
|
|
481
|
+
try:
|
|
482
|
+
return models.OutputHumioHecCompression(value)
|
|
483
|
+
except ValueError:
|
|
484
|
+
return value
|
|
485
|
+
return value
|
|
486
|
+
|
|
487
|
+
@field_serializer("pq_on_backpressure")
|
|
488
|
+
def serialize_pq_on_backpressure(self, value):
|
|
489
|
+
if isinstance(value, str):
|
|
490
|
+
try:
|
|
491
|
+
return models.OutputHumioHecQueueFullBehavior(value)
|
|
492
|
+
except ValueError:
|
|
493
|
+
return value
|
|
494
|
+
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,14 +16,20 @@ class OutputInfluxdbType(str, Enum):
|
|
|
12
16
|
INFLUXDB = "influxdb"
|
|
13
17
|
|
|
14
18
|
|
|
15
|
-
class TimestampPrecision(str, Enum):
|
|
19
|
+
class TimestampPrecision(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
16
20
|
r"""Sets the precision for the supplied Unix time values. Defaults to milliseconds."""
|
|
17
21
|
|
|
22
|
+
# Nanoseconds
|
|
18
23
|
NS = "ns"
|
|
24
|
+
# Microseconds
|
|
19
25
|
U = "u"
|
|
26
|
+
# Milliseconds
|
|
20
27
|
MS = "ms"
|
|
28
|
+
# Seconds
|
|
21
29
|
S = "s"
|
|
30
|
+
# Minutes
|
|
22
31
|
M = "m"
|
|
32
|
+
# Hours
|
|
23
33
|
H = "h"
|
|
24
34
|
|
|
25
35
|
|
|
@@ -34,11 +44,14 @@ class OutputInfluxdbExtraHTTPHeader(BaseModel):
|
|
|
34
44
|
name: Optional[str] = None
|
|
35
45
|
|
|
36
46
|
|
|
37
|
-
class OutputInfluxdbFailedRequestLoggingMode(str, Enum):
|
|
47
|
+
class OutputInfluxdbFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
38
48
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
39
49
|
|
|
50
|
+
# Payload
|
|
40
51
|
PAYLOAD = "payload"
|
|
52
|
+
# Payload + Headers
|
|
41
53
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
54
|
+
# None
|
|
42
55
|
NONE = "none"
|
|
43
56
|
|
|
44
57
|
|
|
@@ -96,15 +109,18 @@ class OutputInfluxdbTimeoutRetrySettings(BaseModel):
|
|
|
96
109
|
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)."""
|
|
97
110
|
|
|
98
111
|
|
|
99
|
-
class OutputInfluxdbBackpressureBehavior(str, Enum):
|
|
112
|
+
class OutputInfluxdbBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
100
113
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
101
114
|
|
|
115
|
+
# Block
|
|
102
116
|
BLOCK = "block"
|
|
117
|
+
# Drop
|
|
103
118
|
DROP = "drop"
|
|
119
|
+
# Persistent Queue
|
|
104
120
|
QUEUE = "queue"
|
|
105
121
|
|
|
106
122
|
|
|
107
|
-
class OutputInfluxdbAuthenticationType(str, Enum):
|
|
123
|
+
class OutputInfluxdbAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
108
124
|
r"""InfluxDB authentication type"""
|
|
109
125
|
|
|
110
126
|
NONE = "none"
|
|
@@ -115,28 +131,35 @@ class OutputInfluxdbAuthenticationType(str, Enum):
|
|
|
115
131
|
OAUTH = "oauth"
|
|
116
132
|
|
|
117
133
|
|
|
118
|
-
class
|
|
134
|
+
class OutputInfluxdbMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
135
|
+
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."""
|
|
136
|
+
|
|
137
|
+
# Error
|
|
138
|
+
ERROR = "error"
|
|
139
|
+
# Backpressure
|
|
140
|
+
ALWAYS = "always"
|
|
141
|
+
# Always On
|
|
142
|
+
BACKPRESSURE = "backpressure"
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
class OutputInfluxdbCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
119
146
|
r"""Codec to use to compress the persisted data"""
|
|
120
147
|
|
|
148
|
+
# None
|
|
121
149
|
NONE = "none"
|
|
150
|
+
# Gzip
|
|
122
151
|
GZIP = "gzip"
|
|
123
152
|
|
|
124
153
|
|
|
125
|
-
class OutputInfluxdbQueueFullBehavior(str, Enum):
|
|
154
|
+
class OutputInfluxdbQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
126
155
|
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."""
|
|
127
156
|
|
|
157
|
+
# Block
|
|
128
158
|
BLOCK = "block"
|
|
159
|
+
# Drop new data
|
|
129
160
|
DROP = "drop"
|
|
130
161
|
|
|
131
162
|
|
|
132
|
-
class OutputInfluxdbMode(str, Enum):
|
|
133
|
-
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."""
|
|
134
|
-
|
|
135
|
-
ERROR = "error"
|
|
136
|
-
BACKPRESSURE = "backpressure"
|
|
137
|
-
ALWAYS = "always"
|
|
138
|
-
|
|
139
|
-
|
|
140
163
|
class OutputInfluxdbPqControlsTypedDict(TypedDict):
|
|
141
164
|
pass
|
|
142
165
|
|
|
@@ -240,6 +263,16 @@ class OutputInfluxdbTypedDict(TypedDict):
|
|
|
240
263
|
r"""Bucket to write to."""
|
|
241
264
|
org: NotRequired[str]
|
|
242
265
|
r"""Organization ID for this bucket."""
|
|
266
|
+
pq_strict_ordering: NotRequired[bool]
|
|
267
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
268
|
+
pq_rate_per_sec: NotRequired[float]
|
|
269
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
270
|
+
pq_mode: NotRequired[OutputInfluxdbMode]
|
|
271
|
+
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."""
|
|
272
|
+
pq_max_buffer_size: NotRequired[float]
|
|
273
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
274
|
+
pq_max_backpressure_sec: NotRequired[float]
|
|
275
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
243
276
|
pq_max_file_size: NotRequired[str]
|
|
244
277
|
r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
|
|
245
278
|
pq_max_size: NotRequired[str]
|
|
@@ -250,8 +283,6 @@ class OutputInfluxdbTypedDict(TypedDict):
|
|
|
250
283
|
r"""Codec to use to compress the persisted data"""
|
|
251
284
|
pq_on_backpressure: NotRequired[OutputInfluxdbQueueFullBehavior]
|
|
252
285
|
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."""
|
|
253
|
-
pq_mode: NotRequired[OutputInfluxdbMode]
|
|
254
|
-
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."""
|
|
255
286
|
pq_controls: NotRequired[OutputInfluxdbPqControlsTypedDict]
|
|
256
287
|
username: NotRequired[str]
|
|
257
288
|
password: NotRequired[str]
|
|
@@ -306,7 +337,10 @@ class OutputInfluxdb(BaseModel):
|
|
|
306
337
|
r"""The v2 API can be enabled with InfluxDB versions 1.8 and later."""
|
|
307
338
|
|
|
308
339
|
timestamp_precision: Annotated[
|
|
309
|
-
|
|
340
|
+
Annotated[
|
|
341
|
+
Optional[TimestampPrecision], PlainValidator(validate_open_enum(False))
|
|
342
|
+
],
|
|
343
|
+
pydantic.Field(alias="timestampPrecision"),
|
|
310
344
|
] = TimestampPrecision.MS
|
|
311
345
|
r"""Sets the precision for the supplied Unix time values. Defaults to milliseconds."""
|
|
312
346
|
|
|
@@ -364,7 +398,10 @@ class OutputInfluxdb(BaseModel):
|
|
|
364
398
|
r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
|
|
365
399
|
|
|
366
400
|
failed_request_logging_mode: Annotated[
|
|
367
|
-
|
|
401
|
+
Annotated[
|
|
402
|
+
Optional[OutputInfluxdbFailedRequestLoggingMode],
|
|
403
|
+
PlainValidator(validate_open_enum(False)),
|
|
404
|
+
],
|
|
368
405
|
pydantic.Field(alias="failedRequestLoggingMode"),
|
|
369
406
|
] = OutputInfluxdbFailedRequestLoggingMode.NONE
|
|
370
407
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
@@ -387,17 +424,24 @@ class OutputInfluxdb(BaseModel):
|
|
|
387
424
|
|
|
388
425
|
response_honor_retry_after_header: Annotated[
|
|
389
426
|
Optional[bool], pydantic.Field(alias="responseHonorRetryAfterHeader")
|
|
390
|
-
] =
|
|
427
|
+
] = True
|
|
391
428
|
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."""
|
|
392
429
|
|
|
393
430
|
on_backpressure: Annotated[
|
|
394
|
-
|
|
431
|
+
Annotated[
|
|
432
|
+
Optional[OutputInfluxdbBackpressureBehavior],
|
|
433
|
+
PlainValidator(validate_open_enum(False)),
|
|
434
|
+
],
|
|
395
435
|
pydantic.Field(alias="onBackpressure"),
|
|
396
436
|
] = OutputInfluxdbBackpressureBehavior.BLOCK
|
|
397
437
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
398
438
|
|
|
399
439
|
auth_type: Annotated[
|
|
400
|
-
|
|
440
|
+
Annotated[
|
|
441
|
+
Optional[OutputInfluxdbAuthenticationType],
|
|
442
|
+
PlainValidator(validate_open_enum(False)),
|
|
443
|
+
],
|
|
444
|
+
pydantic.Field(alias="authType"),
|
|
401
445
|
] = OutputInfluxdbAuthenticationType.NONE
|
|
402
446
|
r"""InfluxDB authentication type"""
|
|
403
447
|
|
|
@@ -412,6 +456,34 @@ class OutputInfluxdb(BaseModel):
|
|
|
412
456
|
org: Optional[str] = None
|
|
413
457
|
r"""Organization ID for this bucket."""
|
|
414
458
|
|
|
459
|
+
pq_strict_ordering: Annotated[
|
|
460
|
+
Optional[bool], pydantic.Field(alias="pqStrictOrdering")
|
|
461
|
+
] = True
|
|
462
|
+
r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
|
|
463
|
+
|
|
464
|
+
pq_rate_per_sec: Annotated[
|
|
465
|
+
Optional[float], pydantic.Field(alias="pqRatePerSec")
|
|
466
|
+
] = 0
|
|
467
|
+
r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
|
|
468
|
+
|
|
469
|
+
pq_mode: Annotated[
|
|
470
|
+
Annotated[
|
|
471
|
+
Optional[OutputInfluxdbMode], PlainValidator(validate_open_enum(False))
|
|
472
|
+
],
|
|
473
|
+
pydantic.Field(alias="pqMode"),
|
|
474
|
+
] = OutputInfluxdbMode.ERROR
|
|
475
|
+
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."""
|
|
476
|
+
|
|
477
|
+
pq_max_buffer_size: Annotated[
|
|
478
|
+
Optional[float], pydantic.Field(alias="pqMaxBufferSize")
|
|
479
|
+
] = 42
|
|
480
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
481
|
+
|
|
482
|
+
pq_max_backpressure_sec: Annotated[
|
|
483
|
+
Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
|
|
484
|
+
] = 30
|
|
485
|
+
r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
|
|
486
|
+
|
|
415
487
|
pq_max_file_size: Annotated[
|
|
416
488
|
Optional[str], pydantic.Field(alias="pqMaxFileSize")
|
|
417
489
|
] = "1 MB"
|
|
@@ -426,21 +498,23 @@ class OutputInfluxdb(BaseModel):
|
|
|
426
498
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
|
|
427
499
|
|
|
428
500
|
pq_compress: Annotated[
|
|
429
|
-
|
|
501
|
+
Annotated[
|
|
502
|
+
Optional[OutputInfluxdbCompression],
|
|
503
|
+
PlainValidator(validate_open_enum(False)),
|
|
504
|
+
],
|
|
505
|
+
pydantic.Field(alias="pqCompress"),
|
|
430
506
|
] = OutputInfluxdbCompression.NONE
|
|
431
507
|
r"""Codec to use to compress the persisted data"""
|
|
432
508
|
|
|
433
509
|
pq_on_backpressure: Annotated[
|
|
434
|
-
|
|
510
|
+
Annotated[
|
|
511
|
+
Optional[OutputInfluxdbQueueFullBehavior],
|
|
512
|
+
PlainValidator(validate_open_enum(False)),
|
|
513
|
+
],
|
|
435
514
|
pydantic.Field(alias="pqOnBackpressure"),
|
|
436
515
|
] = OutputInfluxdbQueueFullBehavior.BLOCK
|
|
437
516
|
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."""
|
|
438
517
|
|
|
439
|
-
pq_mode: Annotated[Optional[OutputInfluxdbMode], pydantic.Field(alias="pqMode")] = (
|
|
440
|
-
OutputInfluxdbMode.ERROR
|
|
441
|
-
)
|
|
442
|
-
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."""
|
|
443
|
-
|
|
444
518
|
pq_controls: Annotated[
|
|
445
519
|
Optional[OutputInfluxdbPqControls], pydantic.Field(alias="pqControls")
|
|
446
520
|
] = None
|
|
@@ -495,3 +569,66 @@ class OutputInfluxdb(BaseModel):
|
|
|
495
569
|
Optional[List[OutputInfluxdbOauthHeader]], pydantic.Field(alias="oauthHeaders")
|
|
496
570
|
] = None
|
|
497
571
|
r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
|
|
572
|
+
|
|
573
|
+
@field_serializer("timestamp_precision")
|
|
574
|
+
def serialize_timestamp_precision(self, value):
|
|
575
|
+
if isinstance(value, str):
|
|
576
|
+
try:
|
|
577
|
+
return models.TimestampPrecision(value)
|
|
578
|
+
except ValueError:
|
|
579
|
+
return value
|
|
580
|
+
return value
|
|
581
|
+
|
|
582
|
+
@field_serializer("failed_request_logging_mode")
|
|
583
|
+
def serialize_failed_request_logging_mode(self, value):
|
|
584
|
+
if isinstance(value, str):
|
|
585
|
+
try:
|
|
586
|
+
return models.OutputInfluxdbFailedRequestLoggingMode(value)
|
|
587
|
+
except ValueError:
|
|
588
|
+
return value
|
|
589
|
+
return value
|
|
590
|
+
|
|
591
|
+
@field_serializer("on_backpressure")
|
|
592
|
+
def serialize_on_backpressure(self, value):
|
|
593
|
+
if isinstance(value, str):
|
|
594
|
+
try:
|
|
595
|
+
return models.OutputInfluxdbBackpressureBehavior(value)
|
|
596
|
+
except ValueError:
|
|
597
|
+
return value
|
|
598
|
+
return value
|
|
599
|
+
|
|
600
|
+
@field_serializer("auth_type")
|
|
601
|
+
def serialize_auth_type(self, value):
|
|
602
|
+
if isinstance(value, str):
|
|
603
|
+
try:
|
|
604
|
+
return models.OutputInfluxdbAuthenticationType(value)
|
|
605
|
+
except ValueError:
|
|
606
|
+
return value
|
|
607
|
+
return value
|
|
608
|
+
|
|
609
|
+
@field_serializer("pq_mode")
|
|
610
|
+
def serialize_pq_mode(self, value):
|
|
611
|
+
if isinstance(value, str):
|
|
612
|
+
try:
|
|
613
|
+
return models.OutputInfluxdbMode(value)
|
|
614
|
+
except ValueError:
|
|
615
|
+
return value
|
|
616
|
+
return value
|
|
617
|
+
|
|
618
|
+
@field_serializer("pq_compress")
|
|
619
|
+
def serialize_pq_compress(self, value):
|
|
620
|
+
if isinstance(value, str):
|
|
621
|
+
try:
|
|
622
|
+
return models.OutputInfluxdbCompression(value)
|
|
623
|
+
except ValueError:
|
|
624
|
+
return value
|
|
625
|
+
return value
|
|
626
|
+
|
|
627
|
+
@field_serializer("pq_on_backpressure")
|
|
628
|
+
def serialize_pq_on_backpressure(self, value):
|
|
629
|
+
if isinstance(value, str):
|
|
630
|
+
try:
|
|
631
|
+
return models.OutputInfluxdbQueueFullBehavior(value)
|
|
632
|
+
except ValueError:
|
|
633
|
+
return value
|
|
634
|
+
return value
|