cribl-control-plane 0.0.13__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.
Potentially problematic release.
This version of cribl-control-plane might be problematic. Click here for more details.
- cribl_control_plane/__init__.py +17 -0
- cribl_control_plane/_hooks/__init__.py +5 -0
- cribl_control_plane/_hooks/clientcredentials.py +211 -0
- cribl_control_plane/_hooks/registration.py +13 -0
- cribl_control_plane/_hooks/sdkhooks.py +81 -0
- cribl_control_plane/_hooks/types.py +112 -0
- cribl_control_plane/_version.py +15 -0
- cribl_control_plane/auth_sdk.py +184 -0
- cribl_control_plane/basesdk.py +358 -0
- cribl_control_plane/errors/__init__.py +60 -0
- cribl_control_plane/errors/apierror.py +38 -0
- cribl_control_plane/errors/criblcontrolplaneerror.py +26 -0
- cribl_control_plane/errors/error.py +24 -0
- cribl_control_plane/errors/healthstatus_error.py +38 -0
- cribl_control_plane/errors/no_response_error.py +13 -0
- cribl_control_plane/errors/responsevalidationerror.py +25 -0
- cribl_control_plane/health.py +166 -0
- cribl_control_plane/httpclient.py +126 -0
- cribl_control_plane/models/__init__.py +7305 -0
- cribl_control_plane/models/addhectokenrequest.py +34 -0
- cribl_control_plane/models/authtoken.py +13 -0
- cribl_control_plane/models/createinputhectokenbyidop.py +45 -0
- cribl_control_plane/models/createinputop.py +24 -0
- cribl_control_plane/models/createoutputop.py +24 -0
- cribl_control_plane/models/createoutputtestbyidop.py +46 -0
- cribl_control_plane/models/criblevent.py +14 -0
- cribl_control_plane/models/deleteinputbyidop.py +37 -0
- cribl_control_plane/models/deleteoutputbyidop.py +37 -0
- cribl_control_plane/models/deleteoutputpqbyidop.py +36 -0
- cribl_control_plane/models/getinputbyidop.py +37 -0
- cribl_control_plane/models/getoutputbyidop.py +37 -0
- cribl_control_plane/models/getoutputpqbyidop.py +36 -0
- cribl_control_plane/models/getoutputsamplesbyidop.py +37 -0
- cribl_control_plane/models/healthstatus.py +36 -0
- cribl_control_plane/models/input.py +199 -0
- cribl_control_plane/models/inputappscope.py +448 -0
- cribl_control_plane/models/inputazureblob.py +308 -0
- cribl_control_plane/models/inputcollection.py +208 -0
- cribl_control_plane/models/inputconfluentcloud.py +585 -0
- cribl_control_plane/models/inputcribl.py +165 -0
- cribl_control_plane/models/inputcriblhttp.py +341 -0
- cribl_control_plane/models/inputcribllakehttp.py +342 -0
- cribl_control_plane/models/inputcriblmetrics.py +175 -0
- cribl_control_plane/models/inputcribltcp.py +299 -0
- cribl_control_plane/models/inputcrowdstrike.py +410 -0
- cribl_control_plane/models/inputdatadogagent.py +364 -0
- cribl_control_plane/models/inputdatagen.py +180 -0
- cribl_control_plane/models/inputedgeprometheus.py +551 -0
- cribl_control_plane/models/inputelastic.py +494 -0
- cribl_control_plane/models/inputeventhub.py +360 -0
- cribl_control_plane/models/inputexec.py +213 -0
- cribl_control_plane/models/inputfile.py +259 -0
- cribl_control_plane/models/inputfirehose.py +341 -0
- cribl_control_plane/models/inputgooglepubsub.py +247 -0
- cribl_control_plane/models/inputgrafana_union.py +1247 -0
- cribl_control_plane/models/inputhttp.py +403 -0
- cribl_control_plane/models/inputhttpraw.py +407 -0
- cribl_control_plane/models/inputjournalfiles.py +208 -0
- cribl_control_plane/models/inputkafka.py +581 -0
- cribl_control_plane/models/inputkinesis.py +363 -0
- cribl_control_plane/models/inputkubeevents.py +182 -0
- cribl_control_plane/models/inputkubelogs.py +256 -0
- cribl_control_plane/models/inputkubemetrics.py +233 -0
- cribl_control_plane/models/inputloki.py +468 -0
- cribl_control_plane/models/inputmetrics.py +290 -0
- cribl_control_plane/models/inputmodeldriventelemetry.py +274 -0
- cribl_control_plane/models/inputmsk.py +654 -0
- cribl_control_plane/models/inputnetflow.py +224 -0
- cribl_control_plane/models/inputoffice365mgmt.py +384 -0
- cribl_control_plane/models/inputoffice365msgtrace.py +449 -0
- cribl_control_plane/models/inputoffice365service.py +377 -0
- cribl_control_plane/models/inputopentelemetry.py +516 -0
- cribl_control_plane/models/inputprometheus.py +464 -0
- cribl_control_plane/models/inputprometheusrw.py +470 -0
- cribl_control_plane/models/inputrawudp.py +207 -0
- cribl_control_plane/models/inputs3.py +416 -0
- cribl_control_plane/models/inputs3inventory.py +440 -0
- cribl_control_plane/models/inputsecuritylake.py +425 -0
- cribl_control_plane/models/inputsnmp.py +274 -0
- cribl_control_plane/models/inputsplunk.py +387 -0
- cribl_control_plane/models/inputsplunkhec.py +478 -0
- cribl_control_plane/models/inputsplunksearch.py +537 -0
- cribl_control_plane/models/inputsqs.py +320 -0
- cribl_control_plane/models/inputsyslog_union.py +759 -0
- cribl_control_plane/models/inputsystemmetrics.py +533 -0
- cribl_control_plane/models/inputsystemstate.py +417 -0
- cribl_control_plane/models/inputtcp.py +359 -0
- cribl_control_plane/models/inputtcpjson.py +334 -0
- cribl_control_plane/models/inputwef.py +498 -0
- cribl_control_plane/models/inputwindowsmetrics.py +457 -0
- cribl_control_plane/models/inputwineventlogs.py +222 -0
- cribl_control_plane/models/inputwiz.py +334 -0
- cribl_control_plane/models/inputzscalerhec.py +439 -0
- cribl_control_plane/models/listinputop.py +24 -0
- cribl_control_plane/models/listoutputop.py +24 -0
- cribl_control_plane/models/logininfo.py +16 -0
- cribl_control_plane/models/output.py +229 -0
- cribl_control_plane/models/outputazureblob.py +471 -0
- cribl_control_plane/models/outputazuredataexplorer.py +660 -0
- cribl_control_plane/models/outputazureeventhub.py +321 -0
- cribl_control_plane/models/outputazurelogs.py +386 -0
- cribl_control_plane/models/outputclickhouse.py +650 -0
- cribl_control_plane/models/outputcloudwatch.py +273 -0
- cribl_control_plane/models/outputconfluentcloud.py +591 -0
- cribl_control_plane/models/outputcriblhttp.py +494 -0
- cribl_control_plane/models/outputcribllake.py +396 -0
- cribl_control_plane/models/outputcribltcp.py +387 -0
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +410 -0
- cribl_control_plane/models/outputdatadog.py +472 -0
- cribl_control_plane/models/outputdataset.py +437 -0
- cribl_control_plane/models/outputdefault.py +55 -0
- cribl_control_plane/models/outputdevnull.py +50 -0
- cribl_control_plane/models/outputdiskspool.py +89 -0
- cribl_control_plane/models/outputdls3.py +560 -0
- cribl_control_plane/models/outputdynatracehttp.py +454 -0
- cribl_control_plane/models/outputdynatraceotlp.py +486 -0
- cribl_control_plane/models/outputelastic.py +494 -0
- cribl_control_plane/models/outputelasticcloud.py +407 -0
- cribl_control_plane/models/outputexabeam.py +297 -0
- cribl_control_plane/models/outputfilesystem.py +357 -0
- cribl_control_plane/models/outputgooglechronicle.py +486 -0
- cribl_control_plane/models/outputgooglecloudlogging.py +557 -0
- cribl_control_plane/models/outputgooglecloudstorage.py +499 -0
- cribl_control_plane/models/outputgooglepubsub.py +274 -0
- cribl_control_plane/models/outputgrafanacloud_union.py +1024 -0
- cribl_control_plane/models/outputgraphite.py +225 -0
- cribl_control_plane/models/outputhoneycomb.py +369 -0
- cribl_control_plane/models/outputhumiohec.py +389 -0
- cribl_control_plane/models/outputinfluxdb.py +523 -0
- cribl_control_plane/models/outputkafka.py +581 -0
- cribl_control_plane/models/outputkinesis.py +312 -0
- cribl_control_plane/models/outputloki.py +425 -0
- cribl_control_plane/models/outputminio.py +512 -0
- cribl_control_plane/models/outputmsk.py +654 -0
- cribl_control_plane/models/outputnetflow.py +80 -0
- cribl_control_plane/models/outputnewrelic.py +424 -0
- cribl_control_plane/models/outputnewrelicevents.py +401 -0
- cribl_control_plane/models/outputopentelemetry.py +669 -0
- cribl_control_plane/models/outputprometheus.py +485 -0
- cribl_control_plane/models/outputring.py +121 -0
- cribl_control_plane/models/outputrouter.py +83 -0
- cribl_control_plane/models/outputs3.py +556 -0
- cribl_control_plane/models/outputsamplesresponse.py +14 -0
- cribl_control_plane/models/outputsecuritylake.py +505 -0
- cribl_control_plane/models/outputsentinel.py +488 -0
- cribl_control_plane/models/outputsentineloneaisiem.py +505 -0
- cribl_control_plane/models/outputservicenow.py +543 -0
- cribl_control_plane/models/outputsignalfx.py +369 -0
- cribl_control_plane/models/outputsnmp.py +80 -0
- cribl_control_plane/models/outputsns.py +274 -0
- cribl_control_plane/models/outputsplunk.py +383 -0
- cribl_control_plane/models/outputsplunkhec.py +434 -0
- cribl_control_plane/models/outputsplunklb.py +558 -0
- cribl_control_plane/models/outputsqs.py +328 -0
- cribl_control_plane/models/outputstatsd.py +224 -0
- cribl_control_plane/models/outputstatsdext.py +225 -0
- cribl_control_plane/models/outputsumologic.py +378 -0
- cribl_control_plane/models/outputsyslog.py +415 -0
- cribl_control_plane/models/outputtcpjson.py +413 -0
- cribl_control_plane/models/outputtestrequest.py +15 -0
- cribl_control_plane/models/outputtestresponse.py +29 -0
- cribl_control_plane/models/outputwavefront.py +369 -0
- cribl_control_plane/models/outputwebhook.py +689 -0
- cribl_control_plane/models/outputxsiam.py +415 -0
- cribl_control_plane/models/schemeclientoauth.py +24 -0
- cribl_control_plane/models/security.py +36 -0
- cribl_control_plane/models/updatehectokenrequest.py +31 -0
- cribl_control_plane/models/updateinputbyidop.py +44 -0
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +52 -0
- cribl_control_plane/models/updateoutputbyidop.py +44 -0
- cribl_control_plane/outputs.py +1615 -0
- cribl_control_plane/py.typed +1 -0
- cribl_control_plane/sdk.py +164 -0
- cribl_control_plane/sdkconfiguration.py +36 -0
- cribl_control_plane/sources.py +1355 -0
- cribl_control_plane/types/__init__.py +21 -0
- cribl_control_plane/types/basemodel.py +39 -0
- cribl_control_plane/utils/__init__.py +187 -0
- cribl_control_plane/utils/annotations.py +55 -0
- cribl_control_plane/utils/datetimes.py +23 -0
- cribl_control_plane/utils/enums.py +74 -0
- cribl_control_plane/utils/eventstreaming.py +238 -0
- cribl_control_plane/utils/forms.py +223 -0
- cribl_control_plane/utils/headers.py +136 -0
- cribl_control_plane/utils/logger.py +27 -0
- cribl_control_plane/utils/metadata.py +118 -0
- cribl_control_plane/utils/queryparams.py +205 -0
- cribl_control_plane/utils/requestbodies.py +66 -0
- cribl_control_plane/utils/retries.py +217 -0
- cribl_control_plane/utils/security.py +207 -0
- cribl_control_plane/utils/serializers.py +249 -0
- cribl_control_plane/utils/unmarshal_json_response.py +24 -0
- cribl_control_plane/utils/url.py +155 -0
- cribl_control_plane/utils/values.py +137 -0
- cribl_control_plane-0.0.13.dist-info/METADATA +489 -0
- cribl_control_plane-0.0.13.dist-info/RECORD +197 -0
- cribl_control_plane-0.0.13.dist-info/WHEEL +4 -0
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .inputappscope import InputAppscope, InputAppscopeTypedDict
|
|
5
|
+
from .inputazureblob import InputAzureBlob, InputAzureBlobTypedDict
|
|
6
|
+
from .inputcollection import InputCollection, InputCollectionTypedDict
|
|
7
|
+
from .inputconfluentcloud import InputConfluentCloud, InputConfluentCloudTypedDict
|
|
8
|
+
from .inputcribl import InputCribl, InputCriblTypedDict
|
|
9
|
+
from .inputcriblhttp import InputCriblHTTP, InputCriblHTTPTypedDict
|
|
10
|
+
from .inputcribllakehttp import InputCriblLakeHTTP, InputCriblLakeHTTPTypedDict
|
|
11
|
+
from .inputcriblmetrics import InputCriblmetrics, InputCriblmetricsTypedDict
|
|
12
|
+
from .inputcribltcp import InputCriblTCP, InputCriblTCPTypedDict
|
|
13
|
+
from .inputcrowdstrike import InputCrowdstrike, InputCrowdstrikeTypedDict
|
|
14
|
+
from .inputdatadogagent import InputDatadogAgent, InputDatadogAgentTypedDict
|
|
15
|
+
from .inputdatagen import InputDatagen, InputDatagenTypedDict
|
|
16
|
+
from .inputedgeprometheus import InputEdgePrometheus, InputEdgePrometheusTypedDict
|
|
17
|
+
from .inputelastic import InputElastic, InputElasticTypedDict
|
|
18
|
+
from .inputeventhub import InputEventhub, InputEventhubTypedDict
|
|
19
|
+
from .inputexec import InputExec, InputExecTypedDict
|
|
20
|
+
from .inputfile import InputFile, InputFileTypedDict
|
|
21
|
+
from .inputfirehose import InputFirehose, InputFirehoseTypedDict
|
|
22
|
+
from .inputgooglepubsub import InputGooglePubsub, InputGooglePubsubTypedDict
|
|
23
|
+
from .inputgrafana_union import InputGrafanaUnion, InputGrafanaUnionTypedDict
|
|
24
|
+
from .inputhttp import InputHTTP, InputHTTPTypedDict
|
|
25
|
+
from .inputhttpraw import InputHTTPRaw, InputHTTPRawTypedDict
|
|
26
|
+
from .inputjournalfiles import InputJournalFiles, InputJournalFilesTypedDict
|
|
27
|
+
from .inputkafka import InputKafka, InputKafkaTypedDict
|
|
28
|
+
from .inputkinesis import InputKinesis, InputKinesisTypedDict
|
|
29
|
+
from .inputkubeevents import InputKubeEvents, InputKubeEventsTypedDict
|
|
30
|
+
from .inputkubelogs import InputKubeLogs, InputKubeLogsTypedDict
|
|
31
|
+
from .inputkubemetrics import InputKubeMetrics, InputKubeMetricsTypedDict
|
|
32
|
+
from .inputloki import InputLoki, InputLokiTypedDict
|
|
33
|
+
from .inputmetrics import InputMetrics, InputMetricsTypedDict
|
|
34
|
+
from .inputmodeldriventelemetry import (
|
|
35
|
+
InputModelDrivenTelemetry,
|
|
36
|
+
InputModelDrivenTelemetryTypedDict,
|
|
37
|
+
)
|
|
38
|
+
from .inputmsk import InputMsk, InputMskTypedDict
|
|
39
|
+
from .inputnetflow import InputNetflow, InputNetflowTypedDict
|
|
40
|
+
from .inputoffice365mgmt import InputOffice365Mgmt, InputOffice365MgmtTypedDict
|
|
41
|
+
from .inputoffice365msgtrace import (
|
|
42
|
+
InputOffice365MsgTrace,
|
|
43
|
+
InputOffice365MsgTraceTypedDict,
|
|
44
|
+
)
|
|
45
|
+
from .inputoffice365service import InputOffice365Service, InputOffice365ServiceTypedDict
|
|
46
|
+
from .inputopentelemetry import InputOpenTelemetry, InputOpenTelemetryTypedDict
|
|
47
|
+
from .inputprometheus import InputPrometheus, InputPrometheusTypedDict
|
|
48
|
+
from .inputprometheusrw import InputPrometheusRw, InputPrometheusRwTypedDict
|
|
49
|
+
from .inputrawudp import InputRawUDP, InputRawUDPTypedDict
|
|
50
|
+
from .inputs3 import InputS3, InputS3TypedDict
|
|
51
|
+
from .inputs3inventory import InputS3Inventory, InputS3InventoryTypedDict
|
|
52
|
+
from .inputsecuritylake import InputSecurityLake, InputSecurityLakeTypedDict
|
|
53
|
+
from .inputsnmp import InputSnmp, InputSnmpTypedDict
|
|
54
|
+
from .inputsplunk import InputSplunk, InputSplunkTypedDict
|
|
55
|
+
from .inputsplunkhec import InputSplunkHec, InputSplunkHecTypedDict
|
|
56
|
+
from .inputsplunksearch import InputSplunkSearch, InputSplunkSearchTypedDict
|
|
57
|
+
from .inputsqs import InputSqs, InputSqsTypedDict
|
|
58
|
+
from .inputsyslog_union import InputSyslogUnion, InputSyslogUnionTypedDict
|
|
59
|
+
from .inputsystemmetrics import InputSystemMetrics, InputSystemMetricsTypedDict
|
|
60
|
+
from .inputsystemstate import InputSystemState, InputSystemStateTypedDict
|
|
61
|
+
from .inputtcp import InputTCP, InputTCPTypedDict
|
|
62
|
+
from .inputtcpjson import InputTcpjson, InputTcpjsonTypedDict
|
|
63
|
+
from .inputwef import InputWef, InputWefTypedDict
|
|
64
|
+
from .inputwindowsmetrics import InputWindowsMetrics, InputWindowsMetricsTypedDict
|
|
65
|
+
from .inputwineventlogs import InputWinEventLogs, InputWinEventLogsTypedDict
|
|
66
|
+
from .inputwiz import InputWiz, InputWizTypedDict
|
|
67
|
+
from .inputzscalerhec import InputZscalerHec, InputZscalerHecTypedDict
|
|
68
|
+
from typing import Union
|
|
69
|
+
from typing_extensions import TypeAliasType
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
InputTypedDict = TypeAliasType(
|
|
73
|
+
"InputTypedDict",
|
|
74
|
+
Union[
|
|
75
|
+
InputCriblTypedDict,
|
|
76
|
+
InputKubeEventsTypedDict,
|
|
77
|
+
InputDatagenTypedDict,
|
|
78
|
+
InputCriblmetricsTypedDict,
|
|
79
|
+
InputKubeMetricsTypedDict,
|
|
80
|
+
InputSystemStateTypedDict,
|
|
81
|
+
InputCollectionTypedDict,
|
|
82
|
+
InputSystemMetricsTypedDict,
|
|
83
|
+
InputModelDrivenTelemetryTypedDict,
|
|
84
|
+
InputWindowsMetricsTypedDict,
|
|
85
|
+
InputJournalFilesTypedDict,
|
|
86
|
+
InputRawUDPTypedDict,
|
|
87
|
+
InputWinEventLogsTypedDict,
|
|
88
|
+
InputExecTypedDict,
|
|
89
|
+
InputKubeLogsTypedDict,
|
|
90
|
+
InputMetricsTypedDict,
|
|
91
|
+
InputSnmpTypedDict,
|
|
92
|
+
InputCriblTCPTypedDict,
|
|
93
|
+
InputNetflowTypedDict,
|
|
94
|
+
InputGooglePubsubTypedDict,
|
|
95
|
+
InputTcpjsonTypedDict,
|
|
96
|
+
InputOffice365ServiceTypedDict,
|
|
97
|
+
InputTCPTypedDict,
|
|
98
|
+
InputWizTypedDict,
|
|
99
|
+
InputFirehoseTypedDict,
|
|
100
|
+
InputCriblHTTPTypedDict,
|
|
101
|
+
InputCriblLakeHTTPTypedDict,
|
|
102
|
+
InputDatadogAgentTypedDict,
|
|
103
|
+
InputOffice365MgmtTypedDict,
|
|
104
|
+
InputFileTypedDict,
|
|
105
|
+
InputSplunkTypedDict,
|
|
106
|
+
InputWefTypedDict,
|
|
107
|
+
InputAppscopeTypedDict,
|
|
108
|
+
InputHTTPRawTypedDict,
|
|
109
|
+
InputHTTPTypedDict,
|
|
110
|
+
InputAzureBlobTypedDict,
|
|
111
|
+
InputZscalerHecTypedDict,
|
|
112
|
+
InputSqsTypedDict,
|
|
113
|
+
InputConfluentCloudTypedDict,
|
|
114
|
+
InputKinesisTypedDict,
|
|
115
|
+
InputEventhubTypedDict,
|
|
116
|
+
InputKafkaTypedDict,
|
|
117
|
+
InputElasticTypedDict,
|
|
118
|
+
InputSplunkHecTypedDict,
|
|
119
|
+
InputOffice365MsgTraceTypedDict,
|
|
120
|
+
InputLokiTypedDict,
|
|
121
|
+
InputPrometheusRwTypedDict,
|
|
122
|
+
InputCrowdstrikeTypedDict,
|
|
123
|
+
InputPrometheusTypedDict,
|
|
124
|
+
InputEdgePrometheusTypedDict,
|
|
125
|
+
InputS3TypedDict,
|
|
126
|
+
InputSecurityLakeTypedDict,
|
|
127
|
+
InputOpenTelemetryTypedDict,
|
|
128
|
+
InputS3InventoryTypedDict,
|
|
129
|
+
InputMskTypedDict,
|
|
130
|
+
InputSplunkSearchTypedDict,
|
|
131
|
+
InputSyslogUnionTypedDict,
|
|
132
|
+
InputGrafanaUnionTypedDict,
|
|
133
|
+
],
|
|
134
|
+
)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
Input = TypeAliasType(
|
|
138
|
+
"Input",
|
|
139
|
+
Union[
|
|
140
|
+
InputCribl,
|
|
141
|
+
InputKubeEvents,
|
|
142
|
+
InputDatagen,
|
|
143
|
+
InputCriblmetrics,
|
|
144
|
+
InputKubeMetrics,
|
|
145
|
+
InputSystemState,
|
|
146
|
+
InputCollection,
|
|
147
|
+
InputSystemMetrics,
|
|
148
|
+
InputModelDrivenTelemetry,
|
|
149
|
+
InputWindowsMetrics,
|
|
150
|
+
InputJournalFiles,
|
|
151
|
+
InputRawUDP,
|
|
152
|
+
InputWinEventLogs,
|
|
153
|
+
InputExec,
|
|
154
|
+
InputKubeLogs,
|
|
155
|
+
InputMetrics,
|
|
156
|
+
InputSnmp,
|
|
157
|
+
InputCriblTCP,
|
|
158
|
+
InputNetflow,
|
|
159
|
+
InputGooglePubsub,
|
|
160
|
+
InputTcpjson,
|
|
161
|
+
InputOffice365Service,
|
|
162
|
+
InputTCP,
|
|
163
|
+
InputWiz,
|
|
164
|
+
InputFirehose,
|
|
165
|
+
InputCriblHTTP,
|
|
166
|
+
InputCriblLakeHTTP,
|
|
167
|
+
InputDatadogAgent,
|
|
168
|
+
InputOffice365Mgmt,
|
|
169
|
+
InputFile,
|
|
170
|
+
InputSplunk,
|
|
171
|
+
InputWef,
|
|
172
|
+
InputAppscope,
|
|
173
|
+
InputHTTPRaw,
|
|
174
|
+
InputHTTP,
|
|
175
|
+
InputAzureBlob,
|
|
176
|
+
InputZscalerHec,
|
|
177
|
+
InputSqs,
|
|
178
|
+
InputConfluentCloud,
|
|
179
|
+
InputKinesis,
|
|
180
|
+
InputEventhub,
|
|
181
|
+
InputKafka,
|
|
182
|
+
InputElastic,
|
|
183
|
+
InputSplunkHec,
|
|
184
|
+
InputOffice365MsgTrace,
|
|
185
|
+
InputLoki,
|
|
186
|
+
InputPrometheusRw,
|
|
187
|
+
InputCrowdstrike,
|
|
188
|
+
InputPrometheus,
|
|
189
|
+
InputEdgePrometheus,
|
|
190
|
+
InputS3,
|
|
191
|
+
InputSecurityLake,
|
|
192
|
+
InputOpenTelemetry,
|
|
193
|
+
InputS3Inventory,
|
|
194
|
+
InputMsk,
|
|
195
|
+
InputSplunkSearch,
|
|
196
|
+
InputSyslogUnion,
|
|
197
|
+
InputGrafanaUnion,
|
|
198
|
+
],
|
|
199
|
+
)
|
|
@@ -0,0 +1,448 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import utils
|
|
5
|
+
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
7
|
+
from enum import Enum
|
|
8
|
+
import pydantic
|
|
9
|
+
from pydantic.functional_validators import PlainValidator
|
|
10
|
+
from typing import Any, List, Optional
|
|
11
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class InputAppscopeType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
15
|
+
APPSCOPE = "appscope"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class InputAppscopeConnectionTypedDict(TypedDict):
|
|
19
|
+
output: str
|
|
20
|
+
pipeline: NotRequired[str]
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class InputAppscopeConnection(BaseModel):
|
|
24
|
+
output: str
|
|
25
|
+
|
|
26
|
+
pipeline: Optional[str] = None
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class InputAppscopeMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
30
|
+
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."""
|
|
31
|
+
|
|
32
|
+
SMART = "smart"
|
|
33
|
+
ALWAYS = "always"
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class InputAppscopeCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
37
|
+
r"""Codec to use to compress the persisted data"""
|
|
38
|
+
|
|
39
|
+
NONE = "none"
|
|
40
|
+
GZIP = "gzip"
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
class InputAppscopePqTypedDict(TypedDict):
|
|
44
|
+
mode: NotRequired[InputAppscopeMode]
|
|
45
|
+
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."""
|
|
46
|
+
max_buffer_size: NotRequired[float]
|
|
47
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
48
|
+
commit_frequency: NotRequired[float]
|
|
49
|
+
r"""The number of events to send downstream before committing that Stream has read them"""
|
|
50
|
+
max_file_size: NotRequired[str]
|
|
51
|
+
r"""The maximum size to store in each queue file before closing and optionally compressing. Enter a numeral with units of KB, MB, etc."""
|
|
52
|
+
max_size: NotRequired[str]
|
|
53
|
+
r"""The maximum disk space that the queue can consume (as an average per Worker Process) before queueing stops. Enter a numeral with units of KB, MB, etc."""
|
|
54
|
+
path: NotRequired[str]
|
|
55
|
+
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
56
|
+
compress: NotRequired[InputAppscopeCompression]
|
|
57
|
+
r"""Codec to use to compress the persisted data"""
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
class InputAppscopePq(BaseModel):
|
|
61
|
+
mode: Annotated[
|
|
62
|
+
Optional[InputAppscopeMode], PlainValidator(validate_open_enum(False))
|
|
63
|
+
] = InputAppscopeMode.ALWAYS
|
|
64
|
+
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."""
|
|
65
|
+
|
|
66
|
+
max_buffer_size: Annotated[
|
|
67
|
+
Optional[float], pydantic.Field(alias="maxBufferSize")
|
|
68
|
+
] = 1000
|
|
69
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
70
|
+
|
|
71
|
+
commit_frequency: Annotated[
|
|
72
|
+
Optional[float], pydantic.Field(alias="commitFrequency")
|
|
73
|
+
] = 42
|
|
74
|
+
r"""The number of events to send downstream before committing that Stream has read them"""
|
|
75
|
+
|
|
76
|
+
max_file_size: Annotated[Optional[str], pydantic.Field(alias="maxFileSize")] = (
|
|
77
|
+
"1 MB"
|
|
78
|
+
)
|
|
79
|
+
r"""The maximum size to store in each queue file before closing and optionally compressing. Enter a numeral with units of KB, MB, etc."""
|
|
80
|
+
|
|
81
|
+
max_size: Annotated[Optional[str], pydantic.Field(alias="maxSize")] = "5GB"
|
|
82
|
+
r"""The maximum disk space that the queue can consume (as an average per Worker Process) before queueing stops. Enter a numeral with units of KB, MB, etc."""
|
|
83
|
+
|
|
84
|
+
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
85
|
+
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
86
|
+
|
|
87
|
+
compress: Annotated[
|
|
88
|
+
Optional[InputAppscopeCompression], PlainValidator(validate_open_enum(False))
|
|
89
|
+
] = InputAppscopeCompression.NONE
|
|
90
|
+
r"""Codec to use to compress the persisted data"""
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
class InputAppscopeMetadatumTypedDict(TypedDict):
|
|
94
|
+
name: str
|
|
95
|
+
value: str
|
|
96
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
class InputAppscopeMetadatum(BaseModel):
|
|
100
|
+
name: str
|
|
101
|
+
|
|
102
|
+
value: str
|
|
103
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
class AllowTypedDict(TypedDict):
|
|
107
|
+
procname: str
|
|
108
|
+
r"""Specify the name of a process or family of processes."""
|
|
109
|
+
config: str
|
|
110
|
+
r"""Choose a config to apply to processes that match the process name and/or argument."""
|
|
111
|
+
arg: NotRequired[str]
|
|
112
|
+
r"""Specify a string to substring-match against process command-line."""
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
class Allow(BaseModel):
|
|
116
|
+
procname: str
|
|
117
|
+
r"""Specify the name of a process or family of processes."""
|
|
118
|
+
|
|
119
|
+
config: str
|
|
120
|
+
r"""Choose a config to apply to processes that match the process name and/or argument."""
|
|
121
|
+
|
|
122
|
+
arg: Optional[str] = None
|
|
123
|
+
r"""Specify a string to substring-match against process command-line."""
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
class InputAppscopeFilterTypedDict(TypedDict):
|
|
127
|
+
allow: NotRequired[List[AllowTypedDict]]
|
|
128
|
+
r"""Specify processes that AppScope should be loaded into, and the config to use."""
|
|
129
|
+
transport_url: NotRequired[str]
|
|
130
|
+
r"""To override the UNIX domain socket or address/port specified in General Settings (while leaving Authentication settings as is), enter a URL."""
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
class InputAppscopeFilter(BaseModel):
|
|
134
|
+
allow: Optional[List[Allow]] = None
|
|
135
|
+
r"""Specify processes that AppScope should be loaded into, and the config to use."""
|
|
136
|
+
|
|
137
|
+
transport_url: Annotated[Optional[str], pydantic.Field(alias="transportURL")] = None
|
|
138
|
+
r"""To override the UNIX domain socket or address/port specified in General Settings (while leaving Authentication settings as is), enter a URL."""
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
class InputAppscopeDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
142
|
+
NONE = "none"
|
|
143
|
+
GZIP = "gzip"
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
class InputAppscopePersistenceTypedDict(TypedDict):
|
|
147
|
+
enable: NotRequired[bool]
|
|
148
|
+
r"""Spool events and metrics on disk for Cribl Edge and Search"""
|
|
149
|
+
time_window: NotRequired[str]
|
|
150
|
+
r"""Time span for each file bucket"""
|
|
151
|
+
max_data_size: NotRequired[str]
|
|
152
|
+
r"""Maximum disk space allowed to be consumed (examples: 420MB, 4GB). When limit is reached, older data will be deleted."""
|
|
153
|
+
max_data_time: NotRequired[str]
|
|
154
|
+
r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
|
|
155
|
+
compress: NotRequired[InputAppscopeDataCompressionFormat]
|
|
156
|
+
dest_path: NotRequired[str]
|
|
157
|
+
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/appscope"""
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
class InputAppscopePersistence(BaseModel):
|
|
161
|
+
enable: Optional[bool] = False
|
|
162
|
+
r"""Spool events and metrics on disk for Cribl Edge and Search"""
|
|
163
|
+
|
|
164
|
+
time_window: Annotated[Optional[str], pydantic.Field(alias="timeWindow")] = "10m"
|
|
165
|
+
r"""Time span for each file bucket"""
|
|
166
|
+
|
|
167
|
+
max_data_size: Annotated[Optional[str], pydantic.Field(alias="maxDataSize")] = "1GB"
|
|
168
|
+
r"""Maximum disk space allowed to be consumed (examples: 420MB, 4GB). When limit is reached, older data will be deleted."""
|
|
169
|
+
|
|
170
|
+
max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
|
|
171
|
+
r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
|
|
172
|
+
|
|
173
|
+
compress: Annotated[
|
|
174
|
+
Optional[InputAppscopeDataCompressionFormat],
|
|
175
|
+
PlainValidator(validate_open_enum(False)),
|
|
176
|
+
] = InputAppscopeDataCompressionFormat.GZIP
|
|
177
|
+
|
|
178
|
+
dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = (
|
|
179
|
+
"$CRIBL_HOME/state/appscope"
|
|
180
|
+
)
|
|
181
|
+
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/appscope"""
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
class InputAppscopeAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
185
|
+
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
186
|
+
|
|
187
|
+
MANUAL = "manual"
|
|
188
|
+
SECRET = "secret"
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
class InputAppscopeMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
192
|
+
TL_SV1 = "TLSv1"
|
|
193
|
+
TL_SV1_1 = "TLSv1.1"
|
|
194
|
+
TL_SV1_2 = "TLSv1.2"
|
|
195
|
+
TL_SV1_3 = "TLSv1.3"
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
class InputAppscopeMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
199
|
+
TL_SV1 = "TLSv1"
|
|
200
|
+
TL_SV1_1 = "TLSv1.1"
|
|
201
|
+
TL_SV1_2 = "TLSv1.2"
|
|
202
|
+
TL_SV1_3 = "TLSv1.3"
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
206
|
+
disabled: NotRequired[bool]
|
|
207
|
+
certificate_name: NotRequired[str]
|
|
208
|
+
r"""The name of the predefined certificate"""
|
|
209
|
+
priv_key_path: NotRequired[str]
|
|
210
|
+
r"""Path on server containing the private key to use. PEM format. Can reference $ENV_VARS."""
|
|
211
|
+
passphrase: NotRequired[str]
|
|
212
|
+
r"""Passphrase to use to decrypt private key"""
|
|
213
|
+
cert_path: NotRequired[str]
|
|
214
|
+
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
215
|
+
ca_path: NotRequired[str]
|
|
216
|
+
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
217
|
+
request_cert: NotRequired[bool]
|
|
218
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
219
|
+
reject_unauthorized: NotRequired[Any]
|
|
220
|
+
common_name_regex: NotRequired[Any]
|
|
221
|
+
min_version: NotRequired[InputAppscopeMinimumTLSVersion]
|
|
222
|
+
max_version: NotRequired[InputAppscopeMaximumTLSVersion]
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
class InputAppscopeTLSSettingsServerSide(BaseModel):
|
|
226
|
+
disabled: Optional[bool] = True
|
|
227
|
+
|
|
228
|
+
certificate_name: Annotated[
|
|
229
|
+
Optional[str], pydantic.Field(alias="certificateName")
|
|
230
|
+
] = None
|
|
231
|
+
r"""The name of the predefined certificate"""
|
|
232
|
+
|
|
233
|
+
priv_key_path: Annotated[Optional[str], pydantic.Field(alias="privKeyPath")] = None
|
|
234
|
+
r"""Path on server containing the private key to use. PEM format. Can reference $ENV_VARS."""
|
|
235
|
+
|
|
236
|
+
passphrase: Optional[str] = None
|
|
237
|
+
r"""Passphrase to use to decrypt private key"""
|
|
238
|
+
|
|
239
|
+
cert_path: Annotated[Optional[str], pydantic.Field(alias="certPath")] = None
|
|
240
|
+
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
241
|
+
|
|
242
|
+
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
243
|
+
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
244
|
+
|
|
245
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
246
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
247
|
+
|
|
248
|
+
reject_unauthorized: Annotated[
|
|
249
|
+
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
250
|
+
] = None
|
|
251
|
+
|
|
252
|
+
common_name_regex: Annotated[
|
|
253
|
+
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
254
|
+
] = None
|
|
255
|
+
|
|
256
|
+
min_version: Annotated[
|
|
257
|
+
Annotated[
|
|
258
|
+
Optional[InputAppscopeMinimumTLSVersion],
|
|
259
|
+
PlainValidator(validate_open_enum(False)),
|
|
260
|
+
],
|
|
261
|
+
pydantic.Field(alias="minVersion"),
|
|
262
|
+
] = None
|
|
263
|
+
|
|
264
|
+
max_version: Annotated[
|
|
265
|
+
Annotated[
|
|
266
|
+
Optional[InputAppscopeMaximumTLSVersion],
|
|
267
|
+
PlainValidator(validate_open_enum(False)),
|
|
268
|
+
],
|
|
269
|
+
pydantic.Field(alias="maxVersion"),
|
|
270
|
+
] = None
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
class InputAppscopeTypedDict(TypedDict):
|
|
274
|
+
id: str
|
|
275
|
+
r"""Unique ID for this input"""
|
|
276
|
+
type: InputAppscopeType
|
|
277
|
+
disabled: NotRequired[bool]
|
|
278
|
+
pipeline: NotRequired[str]
|
|
279
|
+
r"""Pipeline to process data from this Source before sending it through the Routes"""
|
|
280
|
+
send_to_routes: NotRequired[bool]
|
|
281
|
+
r"""Select whether to send data to Routes, or directly to Destinations."""
|
|
282
|
+
environment: NotRequired[str]
|
|
283
|
+
r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
|
|
284
|
+
pq_enabled: NotRequired[bool]
|
|
285
|
+
r"""Use a disk queue to minimize data loss when connected services block. See [Cribl Docs](https://docs.cribl.io/stream/persistent-queues) for PQ defaults (Cribl-managed Cloud Workers) and configuration options (on-prem and hybrid Workers)."""
|
|
286
|
+
streamtags: NotRequired[List[str]]
|
|
287
|
+
r"""Tags for filtering and grouping in @{product}"""
|
|
288
|
+
connections: NotRequired[List[InputAppscopeConnectionTypedDict]]
|
|
289
|
+
r"""Direct connections to Destinations, and optionally via a Pipeline or a Pack"""
|
|
290
|
+
pq: NotRequired[InputAppscopePqTypedDict]
|
|
291
|
+
ip_whitelist_regex: NotRequired[str]
|
|
292
|
+
r"""Regex matching IP addresses that are allowed to establish a connection"""
|
|
293
|
+
max_active_cxn: NotRequired[float]
|
|
294
|
+
r"""Maximum number of active connections allowed per Worker Process. Use 0 for unlimited."""
|
|
295
|
+
socket_idle_timeout: NotRequired[float]
|
|
296
|
+
r"""How long @{product} should wait before assuming that an inactive socket has timed out. After this time, the connection will be closed. Leave at 0 for no inactive socket monitoring."""
|
|
297
|
+
socket_ending_max_wait: NotRequired[float]
|
|
298
|
+
r"""How long the server will wait after initiating a closure for a client to close its end of the connection. If the client doesn't close the connection within this time, the server will forcefully terminate the socket to prevent resource leaks and ensure efficient connection cleanup and system stability. Leave at 0 for no inactive socket monitoring."""
|
|
299
|
+
socket_max_lifespan: NotRequired[float]
|
|
300
|
+
r"""The maximum duration a socket can remain open, even if active. This helps manage resources and mitigate issues caused by TCP pinning. Set to 0 to disable."""
|
|
301
|
+
enable_proxy_header: NotRequired[bool]
|
|
302
|
+
r"""Enable if the connection is proxied by a device that supports proxy protocol v1 or v2"""
|
|
303
|
+
metadata: NotRequired[List[InputAppscopeMetadatumTypedDict]]
|
|
304
|
+
r"""Fields to add to events from this input"""
|
|
305
|
+
breaker_rulesets: NotRequired[List[str]]
|
|
306
|
+
r"""A list of event-breaking rulesets that will be applied, in order, to the input data stream"""
|
|
307
|
+
stale_channel_flush_ms: NotRequired[float]
|
|
308
|
+
r"""How long (in milliseconds) the Event Breaker will wait for new data to be sent to a specific channel before flushing the data stream out, as is, to the Pipelines"""
|
|
309
|
+
enable_unix_path: NotRequired[bool]
|
|
310
|
+
r"""Toggle to Yes to specify a file-backed UNIX domain socket connection, instead of a network host and port."""
|
|
311
|
+
filter_: NotRequired[InputAppscopeFilterTypedDict]
|
|
312
|
+
persistence: NotRequired[InputAppscopePersistenceTypedDict]
|
|
313
|
+
auth_type: NotRequired[InputAppscopeAuthenticationMethod]
|
|
314
|
+
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
315
|
+
description: NotRequired[str]
|
|
316
|
+
host: NotRequired[str]
|
|
317
|
+
r"""Address to bind on. Defaults to 0.0.0.0 (all addresses)."""
|
|
318
|
+
port: NotRequired[float]
|
|
319
|
+
r"""Port to listen on"""
|
|
320
|
+
tls: NotRequired[InputAppscopeTLSSettingsServerSideTypedDict]
|
|
321
|
+
unix_socket_path: NotRequired[str]
|
|
322
|
+
r"""Path to the UNIX domain socket to listen on."""
|
|
323
|
+
unix_socket_perms: NotRequired[str]
|
|
324
|
+
r"""Permissions to set for socket e.g., 777. If empty, falls back to the runtime user's default permissions."""
|
|
325
|
+
auth_token: NotRequired[str]
|
|
326
|
+
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
327
|
+
text_secret: NotRequired[str]
|
|
328
|
+
r"""Select or create a stored text secret"""
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
class InputAppscope(BaseModel):
|
|
332
|
+
id: str
|
|
333
|
+
r"""Unique ID for this input"""
|
|
334
|
+
|
|
335
|
+
type: Annotated[InputAppscopeType, PlainValidator(validate_open_enum(False))]
|
|
336
|
+
|
|
337
|
+
disabled: Optional[bool] = False
|
|
338
|
+
|
|
339
|
+
pipeline: Optional[str] = None
|
|
340
|
+
r"""Pipeline to process data from this Source before sending it through the Routes"""
|
|
341
|
+
|
|
342
|
+
send_to_routes: Annotated[Optional[bool], pydantic.Field(alias="sendToRoutes")] = (
|
|
343
|
+
True
|
|
344
|
+
)
|
|
345
|
+
r"""Select whether to send data to Routes, or directly to Destinations."""
|
|
346
|
+
|
|
347
|
+
environment: Optional[str] = None
|
|
348
|
+
r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
|
|
349
|
+
|
|
350
|
+
pq_enabled: Annotated[Optional[bool], pydantic.Field(alias="pqEnabled")] = False
|
|
351
|
+
r"""Use a disk queue to minimize data loss when connected services block. See [Cribl Docs](https://docs.cribl.io/stream/persistent-queues) for PQ defaults (Cribl-managed Cloud Workers) and configuration options (on-prem and hybrid Workers)."""
|
|
352
|
+
|
|
353
|
+
streamtags: Optional[List[str]] = None
|
|
354
|
+
r"""Tags for filtering and grouping in @{product}"""
|
|
355
|
+
|
|
356
|
+
connections: Optional[List[InputAppscopeConnection]] = None
|
|
357
|
+
r"""Direct connections to Destinations, and optionally via a Pipeline or a Pack"""
|
|
358
|
+
|
|
359
|
+
pq: Optional[InputAppscopePq] = None
|
|
360
|
+
|
|
361
|
+
ip_whitelist_regex: Annotated[
|
|
362
|
+
Optional[str], pydantic.Field(alias="ipWhitelistRegex")
|
|
363
|
+
] = "/.*/"
|
|
364
|
+
r"""Regex matching IP addresses that are allowed to establish a connection"""
|
|
365
|
+
|
|
366
|
+
max_active_cxn: Annotated[Optional[float], pydantic.Field(alias="maxActiveCxn")] = (
|
|
367
|
+
1000
|
|
368
|
+
)
|
|
369
|
+
r"""Maximum number of active connections allowed per Worker Process. Use 0 for unlimited."""
|
|
370
|
+
|
|
371
|
+
socket_idle_timeout: Annotated[
|
|
372
|
+
Optional[float], pydantic.Field(alias="socketIdleTimeout")
|
|
373
|
+
] = 0
|
|
374
|
+
r"""How long @{product} should wait before assuming that an inactive socket has timed out. After this time, the connection will be closed. Leave at 0 for no inactive socket monitoring."""
|
|
375
|
+
|
|
376
|
+
socket_ending_max_wait: Annotated[
|
|
377
|
+
Optional[float], pydantic.Field(alias="socketEndingMaxWait")
|
|
378
|
+
] = 30
|
|
379
|
+
r"""How long the server will wait after initiating a closure for a client to close its end of the connection. If the client doesn't close the connection within this time, the server will forcefully terminate the socket to prevent resource leaks and ensure efficient connection cleanup and system stability. Leave at 0 for no inactive socket monitoring."""
|
|
380
|
+
|
|
381
|
+
socket_max_lifespan: Annotated[
|
|
382
|
+
Optional[float], pydantic.Field(alias="socketMaxLifespan")
|
|
383
|
+
] = 0
|
|
384
|
+
r"""The maximum duration a socket can remain open, even if active. This helps manage resources and mitigate issues caused by TCP pinning. Set to 0 to disable."""
|
|
385
|
+
|
|
386
|
+
enable_proxy_header: Annotated[
|
|
387
|
+
Optional[bool], pydantic.Field(alias="enableProxyHeader")
|
|
388
|
+
] = False
|
|
389
|
+
r"""Enable if the connection is proxied by a device that supports proxy protocol v1 or v2"""
|
|
390
|
+
|
|
391
|
+
metadata: Optional[List[InputAppscopeMetadatum]] = None
|
|
392
|
+
r"""Fields to add to events from this input"""
|
|
393
|
+
|
|
394
|
+
breaker_rulesets: Annotated[
|
|
395
|
+
Optional[List[str]], pydantic.Field(alias="breakerRulesets")
|
|
396
|
+
] = None
|
|
397
|
+
r"""A list of event-breaking rulesets that will be applied, in order, to the input data stream"""
|
|
398
|
+
|
|
399
|
+
stale_channel_flush_ms: Annotated[
|
|
400
|
+
Optional[float], pydantic.Field(alias="staleChannelFlushMs")
|
|
401
|
+
] = 10000
|
|
402
|
+
r"""How long (in milliseconds) the Event Breaker will wait for new data to be sent to a specific channel before flushing the data stream out, as is, to the Pipelines"""
|
|
403
|
+
|
|
404
|
+
enable_unix_path: Annotated[
|
|
405
|
+
Optional[bool], pydantic.Field(alias="enableUnixPath")
|
|
406
|
+
] = False
|
|
407
|
+
r"""Toggle to Yes to specify a file-backed UNIX domain socket connection, instead of a network host and port."""
|
|
408
|
+
|
|
409
|
+
filter_: Annotated[
|
|
410
|
+
Optional[InputAppscopeFilter], pydantic.Field(alias="filter")
|
|
411
|
+
] = None
|
|
412
|
+
|
|
413
|
+
persistence: Optional[InputAppscopePersistence] = None
|
|
414
|
+
|
|
415
|
+
auth_type: Annotated[
|
|
416
|
+
Annotated[
|
|
417
|
+
Optional[InputAppscopeAuthenticationMethod],
|
|
418
|
+
PlainValidator(validate_open_enum(False)),
|
|
419
|
+
],
|
|
420
|
+
pydantic.Field(alias="authType"),
|
|
421
|
+
] = InputAppscopeAuthenticationMethod.MANUAL
|
|
422
|
+
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
423
|
+
|
|
424
|
+
description: Optional[str] = None
|
|
425
|
+
|
|
426
|
+
host: Optional[str] = None
|
|
427
|
+
r"""Address to bind on. Defaults to 0.0.0.0 (all addresses)."""
|
|
428
|
+
|
|
429
|
+
port: Optional[float] = None
|
|
430
|
+
r"""Port to listen on"""
|
|
431
|
+
|
|
432
|
+
tls: Optional[InputAppscopeTLSSettingsServerSide] = None
|
|
433
|
+
|
|
434
|
+
unix_socket_path: Annotated[
|
|
435
|
+
Optional[str], pydantic.Field(alias="unixSocketPath")
|
|
436
|
+
] = "$CRIBL_HOME/state/appscope.sock"
|
|
437
|
+
r"""Path to the UNIX domain socket to listen on."""
|
|
438
|
+
|
|
439
|
+
unix_socket_perms: Annotated[
|
|
440
|
+
Optional[str], pydantic.Field(alias="unixSocketPerms")
|
|
441
|
+
] = None
|
|
442
|
+
r"""Permissions to set for socket e.g., 777. If empty, falls back to the runtime user's default permissions."""
|
|
443
|
+
|
|
444
|
+
auth_token: Annotated[Optional[str], pydantic.Field(alias="authToken")] = ""
|
|
445
|
+
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
446
|
+
|
|
447
|
+
text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
|
|
448
|
+
r"""Select or create a stored text secret"""
|