cribl-control-plane 0.0.21__py3-none-any.whl → 0.4.0b23__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cribl_control_plane/_hooks/clientcredentials.py +113 -48
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/acl.py +225 -0
- cribl_control_plane/auth_sdk.py +12 -176
- cribl_control_plane/basesdk.py +17 -1
- cribl_control_plane/branches.py +351 -0
- cribl_control_plane/commits.py +1403 -0
- cribl_control_plane/commits_files.py +391 -0
- cribl_control_plane/configs_versions.py +201 -0
- cribl_control_plane/cribl.py +495 -0
- cribl_control_plane/destinations.py +146 -805
- cribl_control_plane/destinations_pq.py +379 -0
- cribl_control_plane/errors/__init__.py +26 -10
- 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 +22 -0
- cribl_control_plane/groups_sdk.py +333 -578
- cribl_control_plane/health.py +38 -18
- cribl_control_plane/hectokens.py +503 -0
- cribl_control_plane/httpclient.py +0 -1
- cribl_control_plane/{lake.py → lakedatasets.py} +207 -115
- cribl_control_plane/models/__init__.py +3644 -5986
- 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 +67 -11
- 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/countedgitdiffresult.py +20 -0
- 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/countedoutputsamplesresponse.py +20 -0
- 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 +46 -0
- cribl_control_plane/models/createcribllakedatasetbylakeidop.py +3 -21
- cribl_control_plane/models/createinputhectokenbyidop.py +3 -21
- cribl_control_plane/models/createoutputtestbyidop.py +3 -22
- cribl_control_plane/models/createroutesappendbyidop.py +4 -21
- cribl_control_plane/models/createversioncommitop.py +27 -20
- cribl_control_plane/models/createversionrevertop.py +7 -23
- cribl_control_plane/models/createversionundoop.py +7 -22
- 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/currentbranchresult.py +13 -0
- cribl_control_plane/models/datasetmetadata.py +18 -2
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +43 -0
- cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +5 -24
- cribl_control_plane/models/deleteinputbyidop.py +3 -22
- cribl_control_plane/models/deleteoutputbyidop.py +3 -22
- cribl_control_plane/models/deleteoutputpqbyidop.py +3 -21
- cribl_control_plane/models/deletepacksbyidop.py +3 -22
- 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 +63 -0
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +63 -0
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +53 -0
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +43 -0
- cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +5 -24
- cribl_control_plane/models/getcribllakedatasetbylakeidop.py +56 -16
- cribl_control_plane/models/getfunctionsbyidop.py +18 -0
- cribl_control_plane/models/getinputbyidop.py +3 -22
- cribl_control_plane/models/getmasterworkerentryop.py +22 -0
- cribl_control_plane/models/getoutputbyidop.py +3 -22
- cribl_control_plane/models/getoutputpqbyidop.py +3 -21
- cribl_control_plane/models/getoutputsamplesbyidop.py +3 -22
- cribl_control_plane/models/getpacksbyidop.py +18 -0
- cribl_control_plane/models/getpacksop.py +3 -21
- cribl_control_plane/models/getpipelinebyidop.py +3 -22
- cribl_control_plane/models/getroutesbyidop.py +3 -22
- cribl_control_plane/models/getsummaryop.py +23 -32
- cribl_control_plane/models/getversioncountop.py +10 -27
- cribl_control_plane/models/getversiondiffop.py +12 -28
- cribl_control_plane/models/getversionfilesop.py +10 -28
- cribl_control_plane/models/getversionop.py +30 -0
- cribl_control_plane/models/getversionshowop.py +12 -28
- cribl_control_plane/models/getversionstatusop.py +7 -23
- cribl_control_plane/models/gitcommitsummary.py +3 -3
- cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
- cribl_control_plane/models/gitdiffresult.py +16 -0
- cribl_control_plane/models/gitfilesresponse.py +7 -5
- cribl_control_plane/models/gitinfo.py +14 -3
- cribl_control_plane/models/gitlogresult.py +33 -0
- cribl_control_plane/models/gitrevertparams.py +3 -3
- cribl_control_plane/models/gitrevertresult.py +5 -5
- cribl_control_plane/models/gitshowresult.py +19 -0
- cribl_control_plane/models/gitstatusresult.py +0 -3
- 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 +89 -81
- cribl_control_plane/models/inputappscope.py +131 -35
- cribl_control_plane/models/inputazureblob.py +62 -6
- cribl_control_plane/models/inputcloudflarehec.py +518 -0
- cribl_control_plane/models/inputcollection.py +49 -6
- cribl_control_plane/models/inputconfluentcloud.py +262 -22
- cribl_control_plane/models/inputcribl.py +52 -9
- cribl_control_plane/models/inputcriblhttp.py +124 -33
- cribl_control_plane/models/inputcribllakehttp.py +199 -29
- cribl_control_plane/models/inputcriblmetrics.py +53 -9
- cribl_control_plane/models/inputcribltcp.py +125 -27
- cribl_control_plane/models/inputcrowdstrike.py +99 -10
- cribl_control_plane/models/inputdatadogagent.py +101 -27
- cribl_control_plane/models/inputdatagen.py +47 -4
- cribl_control_plane/models/inputedgeprometheus.py +215 -58
- cribl_control_plane/models/inputelastic.py +170 -39
- cribl_control_plane/models/inputeventhub.py +212 -9
- cribl_control_plane/models/inputexec.py +59 -6
- cribl_control_plane/models/inputfile.py +83 -15
- cribl_control_plane/models/inputfirehose.py +100 -27
- cribl_control_plane/models/inputgooglepubsub.py +83 -15
- cribl_control_plane/models/{inputgrafana_union.py → inputgrafana.py} +261 -67
- cribl_control_plane/models/inputhttp.py +100 -27
- cribl_control_plane/models/inputhttpraw.py +100 -27
- cribl_control_plane/models/inputjournalfiles.py +51 -7
- cribl_control_plane/models/inputkafka.py +257 -19
- cribl_control_plane/models/inputkinesis.py +133 -17
- cribl_control_plane/models/inputkubeevents.py +52 -9
- cribl_control_plane/models/inputkubelogs.py +66 -13
- cribl_control_plane/models/inputkubemetrics.py +66 -13
- cribl_control_plane/models/inputloki.py +116 -30
- cribl_control_plane/models/inputmetrics.py +97 -24
- cribl_control_plane/models/inputmodeldriventelemetry.py +110 -29
- cribl_control_plane/models/inputmsk.py +148 -21
- cribl_control_plane/models/inputnetflow.py +50 -7
- cribl_control_plane/models/inputoffice365mgmt.py +115 -17
- cribl_control_plane/models/inputoffice365msgtrace.py +117 -19
- cribl_control_plane/models/inputoffice365service.py +117 -19
- cribl_control_plane/models/inputopentelemetry.py +146 -35
- cribl_control_plane/models/inputprometheus.py +196 -47
- cribl_control_plane/models/inputprometheusrw.py +117 -30
- cribl_control_plane/models/inputrawudp.py +50 -7
- cribl_control_plane/models/inputs3.py +85 -8
- cribl_control_plane/models/inputs3inventory.py +99 -10
- cribl_control_plane/models/inputsecuritylake.py +100 -10
- cribl_control_plane/models/inputsnmp.py +115 -24
- cribl_control_plane/models/inputsplunk.py +133 -31
- cribl_control_plane/models/inputsplunkhec.py +122 -32
- cribl_control_plane/models/inputsplunksearch.py +115 -18
- cribl_control_plane/models/inputsqs.py +102 -19
- cribl_control_plane/models/{inputsyslog_union.py → inputsyslog.py} +193 -51
- cribl_control_plane/models/inputsystemmetrics.py +207 -37
- cribl_control_plane/models/inputsystemstate.py +66 -13
- cribl_control_plane/models/inputtcp.py +125 -29
- cribl_control_plane/models/inputtcpjson.py +115 -29
- cribl_control_plane/models/inputwef.py +151 -22
- cribl_control_plane/models/inputwindowsmetrics.py +191 -38
- cribl_control_plane/models/inputwineventlogs.py +93 -11
- cribl_control_plane/models/inputwiz.py +176 -11
- cribl_control_plane/models/inputwizwebhook.py +466 -0
- cribl_control_plane/models/inputzscalerhec.py +122 -32
- 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 +46 -0
- cribl_control_plane/models/listmasterworkerentryop.py +64 -0
- 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 +103 -89
- cribl_control_plane/models/outputazureblob.py +174 -21
- cribl_control_plane/models/outputazuredataexplorer.py +517 -93
- cribl_control_plane/models/outputazureeventhub.py +318 -34
- cribl_control_plane/models/outputazurelogs.py +145 -26
- cribl_control_plane/models/outputchronicle.py +532 -0
- cribl_control_plane/models/outputclickhouse.py +208 -37
- cribl_control_plane/models/outputcloudflarer2.py +632 -0
- cribl_control_plane/models/outputcloudwatch.py +132 -26
- cribl_control_plane/models/outputconfluentcloud.py +387 -46
- cribl_control_plane/models/outputcriblhttp.py +203 -36
- cribl_control_plane/models/outputcribllake.py +161 -21
- cribl_control_plane/models/outputcribltcp.py +199 -34
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +176 -32
- cribl_control_plane/models/outputdatabricks.py +501 -0
- cribl_control_plane/models/outputdatadog.py +204 -36
- cribl_control_plane/models/outputdataset.py +186 -34
- cribl_control_plane/models/outputdevnull.py +5 -5
- cribl_control_plane/models/outputdiskspool.py +22 -7
- cribl_control_plane/models/outputdls3.py +238 -29
- cribl_control_plane/models/outputdynatracehttp.py +211 -37
- cribl_control_plane/models/outputdynatraceotlp.py +213 -39
- cribl_control_plane/models/outputelastic.py +199 -30
- cribl_control_plane/models/outputelasticcloud.py +174 -29
- cribl_control_plane/models/outputexabeam.py +99 -13
- cribl_control_plane/models/outputfilesystem.py +139 -14
- cribl_control_plane/models/outputgooglechronicle.py +216 -35
- cribl_control_plane/models/outputgooglecloudlogging.py +177 -34
- cribl_control_plane/models/outputgooglecloudstorage.py +220 -29
- cribl_control_plane/models/outputgooglepubsub.py +138 -51
- cribl_control_plane/models/outputgrafanacloud.py +386 -70
- cribl_control_plane/models/outputgraphite.py +131 -28
- cribl_control_plane/models/outputhoneycomb.py +145 -26
- cribl_control_plane/models/outputhumiohec.py +165 -31
- cribl_control_plane/models/outputinfluxdb.py +165 -28
- cribl_control_plane/models/outputkafka.py +378 -41
- cribl_control_plane/models/outputkinesis.py +168 -30
- cribl_control_plane/models/outputloki.py +171 -27
- cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
- cribl_control_plane/models/outputminio.py +228 -28
- cribl_control_plane/models/outputmsk.py +270 -43
- cribl_control_plane/models/outputnewrelic.py +176 -34
- cribl_control_plane/models/outputnewrelicevents.py +166 -31
- cribl_control_plane/models/outputopentelemetry.py +240 -40
- cribl_control_plane/models/outputprometheus.py +145 -26
- cribl_control_plane/models/outputring.py +54 -13
- cribl_control_plane/models/outputs3.py +238 -31
- cribl_control_plane/models/outputsecuritylake.py +182 -21
- cribl_control_plane/models/outputsentinel.py +175 -32
- cribl_control_plane/models/outputsentineloneaisiem.py +184 -38
- cribl_control_plane/models/outputservicenow.py +226 -41
- cribl_control_plane/models/outputsignalfx.py +145 -26
- cribl_control_plane/models/outputsns.py +146 -28
- cribl_control_plane/models/outputsplunk.py +209 -39
- cribl_control_plane/models/outputsplunkhec.py +243 -31
- cribl_control_plane/models/outputsplunklb.py +266 -46
- cribl_control_plane/models/outputsqs.py +166 -36
- cribl_control_plane/models/outputstatsd.py +130 -28
- cribl_control_plane/models/outputstatsdext.py +131 -28
- cribl_control_plane/models/outputsumologic.py +146 -25
- cribl_control_plane/models/outputsyslog.py +323 -51
- cribl_control_plane/models/outputtcpjson.py +191 -37
- cribl_control_plane/models/outputwavefront.py +145 -26
- cribl_control_plane/models/outputwebhook.py +216 -38
- cribl_control_plane/models/outputxsiam.py +148 -31
- cribl_control_plane/models/packinfo.py +11 -8
- cribl_control_plane/models/packinstallinfo.py +14 -11
- cribl_control_plane/models/packrequestbody_union.py +140 -0
- cribl_control_plane/models/packupgraderequest.py +26 -0
- cribl_control_plane/models/piisettings_union.py +31 -0
- cribl_control_plane/models/productscore.py +10 -0
- 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/routes.py +0 -24
- 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/schemeclientoauth.py +5 -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 +56 -0
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +53 -0
- cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +14 -29
- cribl_control_plane/models/updatehectokenrequest.py +7 -1
- cribl_control_plane/models/updateinputbyidop.py +5 -23
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +5 -23
- cribl_control_plane/models/updateoutputbyidop.py +5 -23
- cribl_control_plane/models/updatepacksbyidop.py +12 -50
- cribl_control_plane/models/updatepacksop.py +12 -24
- cribl_control_plane/models/updatepipelinebyidop.py +5 -23
- cribl_control_plane/models/updateroutesbyidop.py +8 -27
- 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/{appmode.py → workertypes.py} +2 -5
- cribl_control_plane/{workers_sdk.py → nodes.py} +102 -234
- cribl_control_plane/packs.py +385 -184
- cribl_control_plane/pipelines.py +116 -66
- cribl_control_plane/routes_sdk.py +102 -70
- cribl_control_plane/samples.py +407 -0
- cribl_control_plane/sdk.py +35 -25
- cribl_control_plane/settings.py +20 -0
- cribl_control_plane/sources.py +143 -545
- cribl_control_plane/statuses.py +195 -0
- cribl_control_plane/summaries.py +195 -0
- cribl_control_plane/system_sdk.py +20 -0
- cribl_control_plane/teams.py +36 -28
- cribl_control_plane/tokens.py +210 -0
- cribl_control_plane/utils/__init__.py +18 -5
- 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/security.py +5 -0
- cribl_control_plane/utils/unmarshal_json_response.py +15 -1
- cribl_control_plane/versions.py +31 -0
- cribl_control_plane/{distributed.py → versions_configs.py} +29 -35
- cribl_control_plane-0.4.0b23.dist-info/METADATA +855 -0
- cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
- {cribl_control_plane-0.0.21.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/createinputop.py +0 -18238
- cribl_control_plane/models/createoutputop.py +0 -18437
- cribl_control_plane/models/createpipelineop.py +0 -24
- cribl_control_plane/models/createproductsgroupsbyproductop.py +0 -54
- cribl_control_plane/models/createversionpushop.py +0 -23
- cribl_control_plane/models/createversionsyncop.py +0 -23
- cribl_control_plane/models/deletegroupsbyidop.py +0 -37
- cribl_control_plane/models/getgroupsaclbyidop.py +0 -63
- cribl_control_plane/models/getgroupsbyidop.py +0 -49
- cribl_control_plane/models/getgroupsconfigversionbyidop.py +0 -36
- cribl_control_plane/models/getproductsgroupsaclteamsbyproductandidop.py +0 -78
- cribl_control_plane/models/getproductsgroupsbyproductop.py +0 -58
- cribl_control_plane/models/getsummaryworkersop.py +0 -39
- cribl_control_plane/models/getversioncurrentbranchop.py +0 -23
- cribl_control_plane/models/getworkersop.py +0 -82
- cribl_control_plane/models/healthstatus.py +0 -33
- cribl_control_plane/models/packrequestbody.py +0 -75
- cribl_control_plane/models/restartresponse.py +0 -26
- cribl_control_plane/models/routesroute_input.py +0 -67
- cribl_control_plane/models/updategroupsbyidop.py +0 -48
- cribl_control_plane/models/updategroupsdeploybyidop.py +0 -46
- cribl_control_plane/models/updateworkersrestartop.py +0 -24
- cribl_control_plane/versioning.py +0 -2309
- cribl_control_plane-0.0.21.dist-info/METADATA +0 -561
- cribl_control_plane-0.0.21.dist-info/RECORD +0 -301
|
@@ -1,10 +1,14 @@
|
|
|
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
|
|
7
|
-
from
|
|
9
|
+
from pydantic import field_serializer
|
|
10
|
+
from pydantic.functional_validators import PlainValidator
|
|
11
|
+
from typing import List, Optional
|
|
8
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
13
|
|
|
10
14
|
|
|
@@ -23,20 +27,32 @@ class InputCriblHTTPConnection(BaseModel):
|
|
|
23
27
|
pipeline: Optional[str] = None
|
|
24
28
|
|
|
25
29
|
|
|
26
|
-
class InputCriblHTTPMode(str, Enum):
|
|
30
|
+
class InputCriblHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
31
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
32
|
|
|
33
|
+
# Smart
|
|
29
34
|
SMART = "smart"
|
|
35
|
+
# Always On
|
|
30
36
|
ALWAYS = "always"
|
|
31
37
|
|
|
32
38
|
|
|
33
|
-
class InputCriblHTTPCompression(str, Enum):
|
|
39
|
+
class InputCriblHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
40
|
r"""Codec to use to compress the persisted data"""
|
|
35
41
|
|
|
42
|
+
# None
|
|
36
43
|
NONE = "none"
|
|
44
|
+
# Gzip
|
|
37
45
|
GZIP = "gzip"
|
|
38
46
|
|
|
39
47
|
|
|
48
|
+
class InputCriblHTTPPqControlsTypedDict(TypedDict):
|
|
49
|
+
pass
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class InputCriblHTTPPqControls(BaseModel):
|
|
53
|
+
pass
|
|
54
|
+
|
|
55
|
+
|
|
40
56
|
class InputCriblHTTPPqTypedDict(TypedDict):
|
|
41
57
|
mode: NotRequired[InputCriblHTTPMode]
|
|
42
58
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
@@ -52,10 +68,13 @@ class InputCriblHTTPPqTypedDict(TypedDict):
|
|
|
52
68
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
53
69
|
compress: NotRequired[InputCriblHTTPCompression]
|
|
54
70
|
r"""Codec to use to compress the persisted data"""
|
|
71
|
+
pq_controls: NotRequired[InputCriblHTTPPqControlsTypedDict]
|
|
55
72
|
|
|
56
73
|
|
|
57
74
|
class InputCriblHTTPPq(BaseModel):
|
|
58
|
-
mode:
|
|
75
|
+
mode: Annotated[
|
|
76
|
+
Optional[InputCriblHTTPMode], PlainValidator(validate_open_enum(False))
|
|
77
|
+
] = InputCriblHTTPMode.ALWAYS
|
|
59
78
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
60
79
|
|
|
61
80
|
max_buffer_size: Annotated[
|
|
@@ -79,18 +98,60 @@ class InputCriblHTTPPq(BaseModel):
|
|
|
79
98
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
80
99
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
81
100
|
|
|
82
|
-
compress:
|
|
101
|
+
compress: Annotated[
|
|
102
|
+
Optional[InputCriblHTTPCompression], PlainValidator(validate_open_enum(False))
|
|
103
|
+
] = InputCriblHTTPCompression.NONE
|
|
83
104
|
r"""Codec to use to compress the persisted data"""
|
|
84
105
|
|
|
106
|
+
pq_controls: Annotated[
|
|
107
|
+
Optional[InputCriblHTTPPqControls], pydantic.Field(alias="pqControls")
|
|
108
|
+
] = None
|
|
109
|
+
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputCriblHTTPMode(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
@field_serializer("compress")
|
|
120
|
+
def serialize_compress(self, value):
|
|
121
|
+
if isinstance(value, str):
|
|
122
|
+
try:
|
|
123
|
+
return models.InputCriblHTTPCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
class InputCriblHTTPAuthTokenTypedDict(TypedDict):
|
|
130
|
+
token_secret: str
|
|
131
|
+
r"""Select or create a stored text secret"""
|
|
132
|
+
enabled: NotRequired[bool]
|
|
133
|
+
description: NotRequired[str]
|
|
134
|
+
r"""Optional token description"""
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
class InputCriblHTTPAuthToken(BaseModel):
|
|
138
|
+
token_secret: Annotated[str, pydantic.Field(alias="tokenSecret")]
|
|
139
|
+
r"""Select or create a stored text secret"""
|
|
140
|
+
|
|
141
|
+
enabled: Optional[bool] = True
|
|
85
142
|
|
|
86
|
-
|
|
143
|
+
description: Optional[str] = None
|
|
144
|
+
r"""Optional token description"""
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
class InputCriblHTTPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
87
148
|
TL_SV1 = "TLSv1"
|
|
88
149
|
TL_SV1_1 = "TLSv1.1"
|
|
89
150
|
TL_SV1_2 = "TLSv1.2"
|
|
90
151
|
TL_SV1_3 = "TLSv1.3"
|
|
91
152
|
|
|
92
153
|
|
|
93
|
-
class InputCriblHTTPMaximumTLSVersion(str, Enum):
|
|
154
|
+
class InputCriblHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
94
155
|
TL_SV1 = "TLSv1"
|
|
95
156
|
TL_SV1_1 = "TLSv1.1"
|
|
96
157
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -99,6 +160,12 @@ class InputCriblHTTPMaximumTLSVersion(str, Enum):
|
|
|
99
160
|
|
|
100
161
|
class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
101
162
|
disabled: NotRequired[bool]
|
|
163
|
+
request_cert: NotRequired[bool]
|
|
164
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
165
|
+
reject_unauthorized: NotRequired[bool]
|
|
166
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
167
|
+
common_name_regex: NotRequired[str]
|
|
168
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
102
169
|
certificate_name: NotRequired[str]
|
|
103
170
|
r"""The name of the predefined certificate"""
|
|
104
171
|
priv_key_path: NotRequired[str]
|
|
@@ -109,10 +176,6 @@ class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
109
176
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
110
177
|
ca_path: NotRequired[str]
|
|
111
178
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
112
|
-
request_cert: NotRequired[bool]
|
|
113
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
114
|
-
reject_unauthorized: NotRequired[Any]
|
|
115
|
-
common_name_regex: NotRequired[Any]
|
|
116
179
|
min_version: NotRequired[InputCriblHTTPMinimumTLSVersion]
|
|
117
180
|
max_version: NotRequired[InputCriblHTTPMaximumTLSVersion]
|
|
118
181
|
|
|
@@ -120,6 +183,19 @@ class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
120
183
|
class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
121
184
|
disabled: Optional[bool] = True
|
|
122
185
|
|
|
186
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
187
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
188
|
+
|
|
189
|
+
reject_unauthorized: Annotated[
|
|
190
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
191
|
+
] = True
|
|
192
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
193
|
+
|
|
194
|
+
common_name_regex: Annotated[
|
|
195
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
196
|
+
] = "/.*/"
|
|
197
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
198
|
+
|
|
123
199
|
certificate_name: Annotated[
|
|
124
200
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
125
201
|
] = None
|
|
@@ -137,25 +213,40 @@ class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
|
137
213
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
138
214
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
139
215
|
|
|
140
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
141
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
142
|
-
|
|
143
|
-
reject_unauthorized: Annotated[
|
|
144
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
145
|
-
] = None
|
|
146
|
-
|
|
147
|
-
common_name_regex: Annotated[
|
|
148
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
149
|
-
] = None
|
|
150
|
-
|
|
151
216
|
min_version: Annotated[
|
|
152
|
-
|
|
217
|
+
Annotated[
|
|
218
|
+
Optional[InputCriblHTTPMinimumTLSVersion],
|
|
219
|
+
PlainValidator(validate_open_enum(False)),
|
|
220
|
+
],
|
|
221
|
+
pydantic.Field(alias="minVersion"),
|
|
153
222
|
] = None
|
|
154
223
|
|
|
155
224
|
max_version: Annotated[
|
|
156
|
-
|
|
225
|
+
Annotated[
|
|
226
|
+
Optional[InputCriblHTTPMaximumTLSVersion],
|
|
227
|
+
PlainValidator(validate_open_enum(False)),
|
|
228
|
+
],
|
|
229
|
+
pydantic.Field(alias="maxVersion"),
|
|
157
230
|
] = None
|
|
158
231
|
|
|
232
|
+
@field_serializer("min_version")
|
|
233
|
+
def serialize_min_version(self, value):
|
|
234
|
+
if isinstance(value, str):
|
|
235
|
+
try:
|
|
236
|
+
return models.InputCriblHTTPMinimumTLSVersion(value)
|
|
237
|
+
except ValueError:
|
|
238
|
+
return value
|
|
239
|
+
return value
|
|
240
|
+
|
|
241
|
+
@field_serializer("max_version")
|
|
242
|
+
def serialize_max_version(self, value):
|
|
243
|
+
if isinstance(value, str):
|
|
244
|
+
try:
|
|
245
|
+
return models.InputCriblHTTPMaximumTLSVersion(value)
|
|
246
|
+
except ValueError:
|
|
247
|
+
return value
|
|
248
|
+
return value
|
|
249
|
+
|
|
159
250
|
|
|
160
251
|
class InputCriblHTTPMetadatumTypedDict(TypedDict):
|
|
161
252
|
name: str
|
|
@@ -171,11 +262,11 @@ class InputCriblHTTPMetadatum(BaseModel):
|
|
|
171
262
|
|
|
172
263
|
|
|
173
264
|
class InputCriblHTTPTypedDict(TypedDict):
|
|
265
|
+
type: InputCriblHTTPType
|
|
174
266
|
port: float
|
|
175
267
|
r"""Port to listen on"""
|
|
176
268
|
id: NotRequired[str]
|
|
177
269
|
r"""Unique ID for this input"""
|
|
178
|
-
type: NotRequired[InputCriblHTTPType]
|
|
179
270
|
disabled: NotRequired[bool]
|
|
180
271
|
pipeline: NotRequired[str]
|
|
181
272
|
r"""Pipeline to process data from this Source before sending it through the Routes"""
|
|
@@ -192,8 +283,8 @@ class InputCriblHTTPTypedDict(TypedDict):
|
|
|
192
283
|
pq: NotRequired[InputCriblHTTPPqTypedDict]
|
|
193
284
|
host: NotRequired[str]
|
|
194
285
|
r"""Address to bind on. Defaults to 0.0.0.0 (all addresses)."""
|
|
195
|
-
auth_tokens: NotRequired[List[
|
|
196
|
-
r"""Shared secrets to be
|
|
286
|
+
auth_tokens: NotRequired[List[InputCriblHTTPAuthTokenTypedDict]]
|
|
287
|
+
r"""Shared secrets to be used by connected environments to authorize connections. These tokens should be installed in Cribl HTTP destinations in connected environments."""
|
|
197
288
|
tls: NotRequired[InputCriblHTTPTLSSettingsServerSideTypedDict]
|
|
198
289
|
max_active_req: NotRequired[float]
|
|
199
290
|
r"""Maximum number of active requests allowed per Worker Process. Set to 0 for unlimited. Caution: Increasing the limit above the default value, or setting it to unlimited, may degrade performance and reduce throughput."""
|
|
@@ -223,14 +314,14 @@ class InputCriblHTTPTypedDict(TypedDict):
|
|
|
223
314
|
|
|
224
315
|
|
|
225
316
|
class InputCriblHTTP(BaseModel):
|
|
317
|
+
type: InputCriblHTTPType
|
|
318
|
+
|
|
226
319
|
port: float
|
|
227
320
|
r"""Port to listen on"""
|
|
228
321
|
|
|
229
322
|
id: Optional[str] = None
|
|
230
323
|
r"""Unique ID for this input"""
|
|
231
324
|
|
|
232
|
-
type: Optional[InputCriblHTTPType] = None
|
|
233
|
-
|
|
234
325
|
disabled: Optional[bool] = False
|
|
235
326
|
|
|
236
327
|
pipeline: Optional[str] = None
|
|
@@ -258,10 +349,10 @@ class InputCriblHTTP(BaseModel):
|
|
|
258
349
|
host: Optional[str] = "0.0.0.0"
|
|
259
350
|
r"""Address to bind on. Defaults to 0.0.0.0 (all addresses)."""
|
|
260
351
|
|
|
261
|
-
auth_tokens: Annotated[
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
r"""Shared secrets to be
|
|
352
|
+
auth_tokens: Annotated[
|
|
353
|
+
Optional[List[InputCriblHTTPAuthToken]], pydantic.Field(alias="authTokens")
|
|
354
|
+
] = None
|
|
355
|
+
r"""Shared secrets to be used by connected environments to authorize connections. These tokens should be installed in Cribl HTTP destinations in connected environments."""
|
|
265
356
|
|
|
266
357
|
tls: Optional[InputCriblHTTPTLSSettingsServerSide] = None
|
|
267
358
|
|
|
@@ -1,10 +1,14 @@
|
|
|
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
|
|
7
|
-
from
|
|
9
|
+
from pydantic import field_serializer
|
|
10
|
+
from pydantic.functional_validators import PlainValidator
|
|
11
|
+
from typing import List, Optional
|
|
8
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
13
|
|
|
10
14
|
|
|
@@ -23,20 +27,32 @@ class InputCriblLakeHTTPConnection(BaseModel):
|
|
|
23
27
|
pipeline: Optional[str] = None
|
|
24
28
|
|
|
25
29
|
|
|
26
|
-
class InputCriblLakeHTTPMode(str, Enum):
|
|
30
|
+
class InputCriblLakeHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
31
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
28
32
|
|
|
33
|
+
# Smart
|
|
29
34
|
SMART = "smart"
|
|
35
|
+
# Always On
|
|
30
36
|
ALWAYS = "always"
|
|
31
37
|
|
|
32
38
|
|
|
33
|
-
class InputCriblLakeHTTPCompression(str, Enum):
|
|
39
|
+
class InputCriblLakeHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
40
|
r"""Codec to use to compress the persisted data"""
|
|
35
41
|
|
|
42
|
+
# None
|
|
36
43
|
NONE = "none"
|
|
44
|
+
# Gzip
|
|
37
45
|
GZIP = "gzip"
|
|
38
46
|
|
|
39
47
|
|
|
48
|
+
class InputCriblLakeHTTPPqControlsTypedDict(TypedDict):
|
|
49
|
+
pass
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class InputCriblLakeHTTPPqControls(BaseModel):
|
|
53
|
+
pass
|
|
54
|
+
|
|
55
|
+
|
|
40
56
|
class InputCriblLakeHTTPPqTypedDict(TypedDict):
|
|
41
57
|
mode: NotRequired[InputCriblLakeHTTPMode]
|
|
42
58
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
@@ -52,10 +68,13 @@ class InputCriblLakeHTTPPqTypedDict(TypedDict):
|
|
|
52
68
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
53
69
|
compress: NotRequired[InputCriblLakeHTTPCompression]
|
|
54
70
|
r"""Codec to use to compress the persisted data"""
|
|
71
|
+
pq_controls: NotRequired[InputCriblLakeHTTPPqControlsTypedDict]
|
|
55
72
|
|
|
56
73
|
|
|
57
74
|
class InputCriblLakeHTTPPq(BaseModel):
|
|
58
|
-
mode:
|
|
75
|
+
mode: Annotated[
|
|
76
|
+
Optional[InputCriblLakeHTTPMode], PlainValidator(validate_open_enum(False))
|
|
77
|
+
] = InputCriblLakeHTTPMode.ALWAYS
|
|
59
78
|
r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
|
|
60
79
|
|
|
61
80
|
max_buffer_size: Annotated[
|
|
@@ -79,20 +98,43 @@ class InputCriblLakeHTTPPq(BaseModel):
|
|
|
79
98
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
80
99
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
81
100
|
|
|
82
|
-
compress:
|
|
83
|
-
InputCriblLakeHTTPCompression
|
|
84
|
-
|
|
101
|
+
compress: Annotated[
|
|
102
|
+
Optional[InputCriblLakeHTTPCompression],
|
|
103
|
+
PlainValidator(validate_open_enum(False)),
|
|
104
|
+
] = InputCriblLakeHTTPCompression.NONE
|
|
85
105
|
r"""Codec to use to compress the persisted data"""
|
|
86
106
|
|
|
107
|
+
pq_controls: Annotated[
|
|
108
|
+
Optional[InputCriblLakeHTTPPqControls], pydantic.Field(alias="pqControls")
|
|
109
|
+
] = None
|
|
87
110
|
|
|
88
|
-
|
|
111
|
+
@field_serializer("mode")
|
|
112
|
+
def serialize_mode(self, value):
|
|
113
|
+
if isinstance(value, str):
|
|
114
|
+
try:
|
|
115
|
+
return models.InputCriblLakeHTTPMode(value)
|
|
116
|
+
except ValueError:
|
|
117
|
+
return value
|
|
118
|
+
return value
|
|
119
|
+
|
|
120
|
+
@field_serializer("compress")
|
|
121
|
+
def serialize_compress(self, value):
|
|
122
|
+
if isinstance(value, str):
|
|
123
|
+
try:
|
|
124
|
+
return models.InputCriblLakeHTTPCompression(value)
|
|
125
|
+
except ValueError:
|
|
126
|
+
return value
|
|
127
|
+
return value
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
class InputCriblLakeHTTPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
89
131
|
TL_SV1 = "TLSv1"
|
|
90
132
|
TL_SV1_1 = "TLSv1.1"
|
|
91
133
|
TL_SV1_2 = "TLSv1.2"
|
|
92
134
|
TL_SV1_3 = "TLSv1.3"
|
|
93
135
|
|
|
94
136
|
|
|
95
|
-
class InputCriblLakeHTTPMaximumTLSVersion(str, Enum):
|
|
137
|
+
class InputCriblLakeHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
96
138
|
TL_SV1 = "TLSv1"
|
|
97
139
|
TL_SV1_1 = "TLSv1.1"
|
|
98
140
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -101,6 +143,12 @@ class InputCriblLakeHTTPMaximumTLSVersion(str, Enum):
|
|
|
101
143
|
|
|
102
144
|
class InputCriblLakeHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
103
145
|
disabled: NotRequired[bool]
|
|
146
|
+
request_cert: NotRequired[bool]
|
|
147
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
148
|
+
reject_unauthorized: NotRequired[bool]
|
|
149
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
150
|
+
common_name_regex: NotRequired[str]
|
|
151
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
104
152
|
certificate_name: NotRequired[str]
|
|
105
153
|
r"""The name of the predefined certificate"""
|
|
106
154
|
priv_key_path: NotRequired[str]
|
|
@@ -111,10 +159,6 @@ class InputCriblLakeHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
111
159
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
112
160
|
ca_path: NotRequired[str]
|
|
113
161
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
114
|
-
request_cert: NotRequired[bool]
|
|
115
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
116
|
-
reject_unauthorized: NotRequired[Any]
|
|
117
|
-
common_name_regex: NotRequired[Any]
|
|
118
162
|
min_version: NotRequired[InputCriblLakeHTTPMinimumTLSVersion]
|
|
119
163
|
max_version: NotRequired[InputCriblLakeHTTPMaximumTLSVersion]
|
|
120
164
|
|
|
@@ -122,6 +166,19 @@ class InputCriblLakeHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
122
166
|
class InputCriblLakeHTTPTLSSettingsServerSide(BaseModel):
|
|
123
167
|
disabled: Optional[bool] = True
|
|
124
168
|
|
|
169
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
170
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
171
|
+
|
|
172
|
+
reject_unauthorized: Annotated[
|
|
173
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
174
|
+
] = True
|
|
175
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
176
|
+
|
|
177
|
+
common_name_regex: Annotated[
|
|
178
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
179
|
+
] = "/.*/"
|
|
180
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
181
|
+
|
|
125
182
|
certificate_name: Annotated[
|
|
126
183
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
127
184
|
] = None
|
|
@@ -139,27 +196,40 @@ class InputCriblLakeHTTPTLSSettingsServerSide(BaseModel):
|
|
|
139
196
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
140
197
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
141
198
|
|
|
142
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
143
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
144
|
-
|
|
145
|
-
reject_unauthorized: Annotated[
|
|
146
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
147
|
-
] = None
|
|
148
|
-
|
|
149
|
-
common_name_regex: Annotated[
|
|
150
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
151
|
-
] = None
|
|
152
|
-
|
|
153
199
|
min_version: Annotated[
|
|
154
|
-
|
|
200
|
+
Annotated[
|
|
201
|
+
Optional[InputCriblLakeHTTPMinimumTLSVersion],
|
|
202
|
+
PlainValidator(validate_open_enum(False)),
|
|
203
|
+
],
|
|
155
204
|
pydantic.Field(alias="minVersion"),
|
|
156
205
|
] = None
|
|
157
206
|
|
|
158
207
|
max_version: Annotated[
|
|
159
|
-
|
|
208
|
+
Annotated[
|
|
209
|
+
Optional[InputCriblLakeHTTPMaximumTLSVersion],
|
|
210
|
+
PlainValidator(validate_open_enum(False)),
|
|
211
|
+
],
|
|
160
212
|
pydantic.Field(alias="maxVersion"),
|
|
161
213
|
] = None
|
|
162
214
|
|
|
215
|
+
@field_serializer("min_version")
|
|
216
|
+
def serialize_min_version(self, value):
|
|
217
|
+
if isinstance(value, str):
|
|
218
|
+
try:
|
|
219
|
+
return models.InputCriblLakeHTTPMinimumTLSVersion(value)
|
|
220
|
+
except ValueError:
|
|
221
|
+
return value
|
|
222
|
+
return value
|
|
223
|
+
|
|
224
|
+
@field_serializer("max_version")
|
|
225
|
+
def serialize_max_version(self, value):
|
|
226
|
+
if isinstance(value, str):
|
|
227
|
+
try:
|
|
228
|
+
return models.InputCriblLakeHTTPMaximumTLSVersion(value)
|
|
229
|
+
except ValueError:
|
|
230
|
+
return value
|
|
231
|
+
return value
|
|
232
|
+
|
|
163
233
|
|
|
164
234
|
class InputCriblLakeHTTPMetadatumTypedDict(TypedDict):
|
|
165
235
|
name: str
|
|
@@ -174,12 +244,82 @@ class InputCriblLakeHTTPMetadatum(BaseModel):
|
|
|
174
244
|
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
175
245
|
|
|
176
246
|
|
|
247
|
+
class InputCriblLakeHTTPAuthTokensExtMetadatumTypedDict(TypedDict):
|
|
248
|
+
name: str
|
|
249
|
+
value: str
|
|
250
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
class InputCriblLakeHTTPAuthTokensExtMetadatum(BaseModel):
|
|
254
|
+
name: str
|
|
255
|
+
|
|
256
|
+
value: str
|
|
257
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
class SplunkHecMetadataTypedDict(TypedDict):
|
|
261
|
+
enabled: NotRequired[bool]
|
|
262
|
+
default_dataset: NotRequired[str]
|
|
263
|
+
allowed_indexes_at_token: NotRequired[List[str]]
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
class SplunkHecMetadata(BaseModel):
|
|
267
|
+
enabled: Optional[bool] = None
|
|
268
|
+
|
|
269
|
+
default_dataset: Annotated[
|
|
270
|
+
Optional[str], pydantic.Field(alias="defaultDataset")
|
|
271
|
+
] = None
|
|
272
|
+
|
|
273
|
+
allowed_indexes_at_token: Annotated[
|
|
274
|
+
Optional[List[str]], pydantic.Field(alias="allowedIndexesAtToken")
|
|
275
|
+
] = None
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
class ElasticsearchMetadataTypedDict(TypedDict):
|
|
279
|
+
enabled: NotRequired[bool]
|
|
280
|
+
default_dataset: NotRequired[str]
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
class ElasticsearchMetadata(BaseModel):
|
|
284
|
+
enabled: Optional[bool] = None
|
|
285
|
+
|
|
286
|
+
default_dataset: Annotated[
|
|
287
|
+
Optional[str], pydantic.Field(alias="defaultDataset")
|
|
288
|
+
] = None
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
class InputCriblLakeHTTPAuthTokensExtTypedDict(TypedDict):
|
|
292
|
+
token: str
|
|
293
|
+
description: NotRequired[str]
|
|
294
|
+
metadata: NotRequired[List[InputCriblLakeHTTPAuthTokensExtMetadatumTypedDict]]
|
|
295
|
+
r"""Fields to add to events referencing this token"""
|
|
296
|
+
splunk_hec_metadata: NotRequired[SplunkHecMetadataTypedDict]
|
|
297
|
+
elasticsearch_metadata: NotRequired[ElasticsearchMetadataTypedDict]
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
class InputCriblLakeHTTPAuthTokensExt(BaseModel):
|
|
301
|
+
token: str
|
|
302
|
+
|
|
303
|
+
description: Optional[str] = None
|
|
304
|
+
|
|
305
|
+
metadata: Optional[List[InputCriblLakeHTTPAuthTokensExtMetadatum]] = None
|
|
306
|
+
r"""Fields to add to events referencing this token"""
|
|
307
|
+
|
|
308
|
+
splunk_hec_metadata: Annotated[
|
|
309
|
+
Optional[SplunkHecMetadata], pydantic.Field(alias="splunkHecMetadata")
|
|
310
|
+
] = None
|
|
311
|
+
|
|
312
|
+
elasticsearch_metadata: Annotated[
|
|
313
|
+
Optional[ElasticsearchMetadata], pydantic.Field(alias="elasticsearchMetadata")
|
|
314
|
+
] = None
|
|
315
|
+
|
|
316
|
+
|
|
177
317
|
class InputCriblLakeHTTPTypedDict(TypedDict):
|
|
318
|
+
type: InputCriblLakeHTTPType
|
|
178
319
|
port: float
|
|
179
320
|
r"""Port to listen on"""
|
|
180
321
|
id: NotRequired[str]
|
|
181
322
|
r"""Unique ID for this input"""
|
|
182
|
-
type: NotRequired[InputCriblLakeHTTPType]
|
|
183
323
|
disabled: NotRequired[bool]
|
|
184
324
|
pipeline: NotRequired[str]
|
|
185
325
|
r"""Pipeline to process data from this Source before sending it through the Routes"""
|
|
@@ -221,20 +361,28 @@ class InputCriblLakeHTTPTypedDict(TypedDict):
|
|
|
221
361
|
r"""Messages from matched IP addresses will be processed, unless also matched by the denylist"""
|
|
222
362
|
ip_denylist_regex: NotRequired[str]
|
|
223
363
|
r"""Messages from matched IP addresses will be ignored. This takes precedence over the allowlist."""
|
|
364
|
+
cribl_api: NotRequired[str]
|
|
365
|
+
r"""Absolute path on which to listen for the Cribl HTTP API requests. Only _bulk (default /cribl/_bulk) is available. Use empty string to disable."""
|
|
366
|
+
elastic_api: NotRequired[str]
|
|
367
|
+
r"""Absolute path on which to listen for the Elasticsearch API requests. Only _bulk (default /elastic/_bulk) is available. Use empty string to disable."""
|
|
368
|
+
splunk_hec_api: NotRequired[str]
|
|
369
|
+
r"""Absolute path on which listen for the Splunk HTTP Event Collector API requests. Use empty string to disable."""
|
|
370
|
+
splunk_hec_acks: NotRequired[bool]
|
|
224
371
|
metadata: NotRequired[List[InputCriblLakeHTTPMetadatumTypedDict]]
|
|
225
372
|
r"""Fields to add to events from this input"""
|
|
373
|
+
auth_tokens_ext: NotRequired[List[InputCriblLakeHTTPAuthTokensExtTypedDict]]
|
|
226
374
|
description: NotRequired[str]
|
|
227
375
|
|
|
228
376
|
|
|
229
377
|
class InputCriblLakeHTTP(BaseModel):
|
|
378
|
+
type: InputCriblLakeHTTPType
|
|
379
|
+
|
|
230
380
|
port: float
|
|
231
381
|
r"""Port to listen on"""
|
|
232
382
|
|
|
233
383
|
id: Optional[str] = None
|
|
234
384
|
r"""Unique ID for this input"""
|
|
235
385
|
|
|
236
|
-
type: Optional[InputCriblLakeHTTPType] = None
|
|
237
|
-
|
|
238
386
|
disabled: Optional[bool] = False
|
|
239
387
|
|
|
240
388
|
pipeline: Optional[str] = None
|
|
@@ -324,7 +472,29 @@ class InputCriblLakeHTTP(BaseModel):
|
|
|
324
472
|
] = "/^$/"
|
|
325
473
|
r"""Messages from matched IP addresses will be ignored. This takes precedence over the allowlist."""
|
|
326
474
|
|
|
475
|
+
cribl_api: Annotated[Optional[str], pydantic.Field(alias="criblAPI")] = "/cribl"
|
|
476
|
+
r"""Absolute path on which to listen for the Cribl HTTP API requests. Only _bulk (default /cribl/_bulk) is available. Use empty string to disable."""
|
|
477
|
+
|
|
478
|
+
elastic_api: Annotated[Optional[str], pydantic.Field(alias="elasticAPI")] = (
|
|
479
|
+
"/elastic"
|
|
480
|
+
)
|
|
481
|
+
r"""Absolute path on which to listen for the Elasticsearch API requests. Only _bulk (default /elastic/_bulk) is available. Use empty string to disable."""
|
|
482
|
+
|
|
483
|
+
splunk_hec_api: Annotated[Optional[str], pydantic.Field(alias="splunkHecAPI")] = (
|
|
484
|
+
"/services/collector"
|
|
485
|
+
)
|
|
486
|
+
r"""Absolute path on which listen for the Splunk HTTP Event Collector API requests. Use empty string to disable."""
|
|
487
|
+
|
|
488
|
+
splunk_hec_acks: Annotated[
|
|
489
|
+
Optional[bool], pydantic.Field(alias="splunkHecAcks")
|
|
490
|
+
] = False
|
|
491
|
+
|
|
327
492
|
metadata: Optional[List[InputCriblLakeHTTPMetadatum]] = None
|
|
328
493
|
r"""Fields to add to events from this input"""
|
|
329
494
|
|
|
495
|
+
auth_tokens_ext: Annotated[
|
|
496
|
+
Optional[List[InputCriblLakeHTTPAuthTokensExt]],
|
|
497
|
+
pydantic.Field(alias="authTokensExt"),
|
|
498
|
+
] = None
|
|
499
|
+
|
|
330
500
|
description: Optional[str] = None
|