cribl-control-plane 0.1.0b2__py3-none-any.whl → 0.2.0b1__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/_hooks/clientcredentials.py +91 -41
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/errors/apierror.py +1 -1
- cribl_control_plane/errors/criblcontrolplaneerror.py +1 -1
- cribl_control_plane/errors/error.py +1 -1
- cribl_control_plane/errors/healthstatus_error.py +1 -1
- cribl_control_plane/errors/no_response_error.py +1 -1
- cribl_control_plane/errors/responsevalidationerror.py +1 -1
- cribl_control_plane/httpclient.py +0 -1
- cribl_control_plane/models/__init__.py +68 -7
- cribl_control_plane/models/createversionundoop.py +3 -3
- cribl_control_plane/models/distributedsummary.py +6 -0
- cribl_control_plane/models/gitinfo.py +14 -3
- cribl_control_plane/models/input.py +65 -63
- cribl_control_plane/models/inputappscope.py +4 -0
- cribl_control_plane/models/inputazureblob.py +4 -0
- cribl_control_plane/models/inputcollection.py +4 -0
- cribl_control_plane/models/inputconfluentcloud.py +8 -0
- cribl_control_plane/models/inputcribl.py +4 -0
- cribl_control_plane/models/inputcriblhttp.py +4 -0
- cribl_control_plane/models/inputcribllakehttp.py +4 -0
- cribl_control_plane/models/inputcriblmetrics.py +4 -0
- cribl_control_plane/models/inputcribltcp.py +4 -0
- cribl_control_plane/models/inputcrowdstrike.py +7 -0
- cribl_control_plane/models/inputdatadogagent.py +4 -0
- cribl_control_plane/models/inputdatagen.py +4 -0
- cribl_control_plane/models/inputedgeprometheus.py +12 -0
- cribl_control_plane/models/inputelastic.py +11 -0
- cribl_control_plane/models/inputeventhub.py +6 -0
- cribl_control_plane/models/inputexec.py +4 -0
- cribl_control_plane/models/inputfile.py +6 -0
- cribl_control_plane/models/inputfirehose.py +4 -0
- cribl_control_plane/models/inputgooglepubsub.py +7 -0
- cribl_control_plane/models/inputgrafana.py +8 -0
- cribl_control_plane/models/inputhttp.py +4 -0
- cribl_control_plane/models/inputhttpraw.py +4 -0
- cribl_control_plane/models/inputjournalfiles.py +4 -0
- cribl_control_plane/models/inputkafka.py +8 -0
- cribl_control_plane/models/inputkinesis.py +15 -0
- cribl_control_plane/models/inputkubeevents.py +4 -0
- cribl_control_plane/models/inputkubelogs.py +4 -0
- cribl_control_plane/models/inputkubemetrics.py +4 -0
- cribl_control_plane/models/inputloki.py +4 -0
- cribl_control_plane/models/inputmetrics.py +4 -0
- cribl_control_plane/models/inputmodeldriventelemetry.py +4 -0
- cribl_control_plane/models/inputmsk.py +7 -0
- cribl_control_plane/models/inputnetflow.py +4 -0
- cribl_control_plane/models/inputoffice365mgmt.py +11 -0
- cribl_control_plane/models/inputoffice365msgtrace.py +11 -0
- cribl_control_plane/models/inputoffice365service.py +11 -0
- cribl_control_plane/models/inputopentelemetry.py +8 -0
- cribl_control_plane/models/inputprometheus.py +10 -0
- cribl_control_plane/models/inputprometheusrw.py +4 -0
- cribl_control_plane/models/inputrawudp.py +4 -0
- cribl_control_plane/models/inputs3.py +7 -0
- cribl_control_plane/models/inputs3inventory.py +7 -0
- cribl_control_plane/models/inputsecuritylake.py +7 -0
- cribl_control_plane/models/inputsnmp.py +11 -0
- cribl_control_plane/models/inputsplunk.py +9 -0
- cribl_control_plane/models/inputsplunkhec.py +4 -0
- cribl_control_plane/models/inputsplunksearch.py +7 -0
- cribl_control_plane/models/inputsqs.py +17 -10
- cribl_control_plane/models/inputsyslog.py +8 -0
- cribl_control_plane/models/inputsystemmetrics.py +32 -0
- cribl_control_plane/models/inputsystemstate.py +4 -0
- cribl_control_plane/models/inputtcp.py +4 -0
- cribl_control_plane/models/inputtcpjson.py +4 -0
- cribl_control_plane/models/inputwef.py +6 -0
- cribl_control_plane/models/inputwindowsmetrics.py +28 -0
- cribl_control_plane/models/inputwineventlogs.py +8 -0
- cribl_control_plane/models/inputwiz.py +7 -0
- cribl_control_plane/models/inputwizwebhook.py +4 -0
- cribl_control_plane/models/inputzscalerhec.py +4 -0
- cribl_control_plane/models/jobinfo.py +4 -1
- cribl_control_plane/models/nodeprovidedinfo.py +4 -1
- cribl_control_plane/models/output.py +74 -69
- cribl_control_plane/models/outputazureblob.py +20 -0
- cribl_control_plane/models/outputazuredataexplorer.py +28 -0
- cribl_control_plane/models/outputazureeventhub.py +17 -0
- cribl_control_plane/models/outputazurelogs.py +13 -0
- cribl_control_plane/models/outputchronicle.py +444 -0
- cribl_control_plane/models/outputclickhouse.py +17 -0
- cribl_control_plane/models/outputcloudwatch.py +13 -0
- cribl_control_plane/models/outputconfluentcloud.py +24 -0
- cribl_control_plane/models/outputcriblhttp.py +15 -0
- cribl_control_plane/models/outputcribllake.py +21 -0
- cribl_control_plane/models/outputcribltcp.py +12 -0
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +15 -0
- cribl_control_plane/models/outputdatabricks.py +9 -0
- cribl_control_plane/models/outputdatadog.py +30 -0
- cribl_control_plane/models/outputdataset.py +23 -0
- cribl_control_plane/models/outputdls3.py +35 -0
- cribl_control_plane/models/outputdynatracehttp.py +22 -0
- cribl_control_plane/models/outputdynatraceotlp.py +22 -0
- cribl_control_plane/models/outputelastic.py +18 -0
- cribl_control_plane/models/outputelasticcloud.py +13 -0
- cribl_control_plane/models/outputexabeam.py +14 -0
- cribl_control_plane/models/outputfilesystem.py +15 -0
- cribl_control_plane/models/outputgooglechronicle.py +26 -4
- cribl_control_plane/models/outputgooglecloudlogging.py +28 -4
- cribl_control_plane/models/outputgooglecloudstorage.py +28 -0
- cribl_control_plane/models/outputgooglepubsub.py +13 -0
- cribl_control_plane/models/outputgrafanacloud.py +50 -0
- cribl_control_plane/models/outputgraphite.py +12 -0
- cribl_control_plane/models/outputhoneycomb.py +13 -0
- cribl_control_plane/models/outputhumiohec.py +15 -0
- cribl_control_plane/models/outputinfluxdb.py +19 -0
- cribl_control_plane/models/outputkafka.py +24 -0
- cribl_control_plane/models/outputkinesis.py +15 -0
- cribl_control_plane/models/outputloki.py +20 -0
- cribl_control_plane/models/outputminio.py +28 -0
- cribl_control_plane/models/outputmsk.py +23 -0
- cribl_control_plane/models/outputnewrelic.py +16 -0
- cribl_control_plane/models/outputnewrelicevents.py +16 -0
- cribl_control_plane/models/outputopentelemetry.py +22 -0
- cribl_control_plane/models/outputprometheus.py +13 -0
- cribl_control_plane/models/outputring.py +2 -0
- cribl_control_plane/models/outputs3.py +35 -0
- cribl_control_plane/models/outputsecuritylake.py +29 -0
- cribl_control_plane/models/outputsentinel.py +15 -0
- cribl_control_plane/models/outputsentineloneaisiem.py +13 -0
- cribl_control_plane/models/outputservicenow.py +21 -0
- cribl_control_plane/models/outputsignalfx.py +13 -0
- cribl_control_plane/models/outputsns.py +13 -0
- cribl_control_plane/models/outputsplunk.py +15 -0
- cribl_control_plane/models/outputsplunkhec.py +13 -0
- cribl_control_plane/models/outputsplunklb.py +15 -0
- cribl_control_plane/models/outputsqs.py +23 -10
- cribl_control_plane/models/outputstatsd.py +12 -0
- cribl_control_plane/models/outputstatsdext.py +12 -0
- cribl_control_plane/models/outputsumologic.py +15 -0
- cribl_control_plane/models/outputsyslog.py +24 -0
- cribl_control_plane/models/outputtcpjson.py +12 -0
- cribl_control_plane/models/outputwavefront.py +13 -0
- cribl_control_plane/models/outputwebhook.py +23 -0
- cribl_control_plane/models/outputxsiam.py +13 -0
- cribl_control_plane/models/packinfo.py +3 -0
- cribl_control_plane/models/packinstallinfo.py +3 -0
- cribl_control_plane/models/runnablejobcollection.py +4 -0
- {cribl_control_plane-0.1.0b2.dist-info → cribl_control_plane-0.2.0b1.dist-info}/METADATA +1 -8
- {cribl_control_plane-0.1.0b2.dist-info → cribl_control_plane-0.2.0b1.dist-info}/RECORD +142 -141
- {cribl_control_plane-0.1.0b2.dist-info → cribl_control_plane-0.2.0b1.dist-info}/WHEEL +0 -0
|
@@ -18,20 +18,25 @@ class OutputDynatraceOtlpType(str, Enum):
|
|
|
18
18
|
class OutputDynatraceOtlpProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
19
19
|
r"""Select a transport option for Dynatrace"""
|
|
20
20
|
|
|
21
|
+
# HTTP
|
|
21
22
|
HTTP = "http"
|
|
22
23
|
|
|
23
24
|
|
|
24
25
|
class OutputDynatraceOTLPOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
25
26
|
r"""The version of OTLP Protobuf definitions to use when structuring data to send"""
|
|
26
27
|
|
|
28
|
+
# 1.3.1
|
|
27
29
|
ONE_DOT_3_DOT_1 = "1.3.1"
|
|
28
30
|
|
|
29
31
|
|
|
30
32
|
class OutputDynatraceOtlpCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
31
33
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
32
34
|
|
|
35
|
+
# None
|
|
33
36
|
NONE = "none"
|
|
37
|
+
# Deflate
|
|
34
38
|
DEFLATE = "deflate"
|
|
39
|
+
# Gzip
|
|
35
40
|
GZIP = "gzip"
|
|
36
41
|
|
|
37
42
|
|
|
@@ -40,7 +45,9 @@ class OutputDynatraceOtlpHTTPCompressCompression(
|
|
|
40
45
|
):
|
|
41
46
|
r"""Type of compression to apply to messages sent to the OpenTelemetry endpoint"""
|
|
42
47
|
|
|
48
|
+
# None
|
|
43
49
|
NONE = "none"
|
|
50
|
+
# Gzip
|
|
44
51
|
GZIP = "gzip"
|
|
45
52
|
|
|
46
53
|
|
|
@@ -60,23 +67,31 @@ class OutputDynatraceOtlpFailedRequestLoggingMode(
|
|
|
60
67
|
):
|
|
61
68
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
62
69
|
|
|
70
|
+
# Payload
|
|
63
71
|
PAYLOAD = "payload"
|
|
72
|
+
# Payload + Headers
|
|
64
73
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
74
|
+
# None
|
|
65
75
|
NONE = "none"
|
|
66
76
|
|
|
67
77
|
|
|
68
78
|
class EndpointType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
69
79
|
r"""Select the type of Dynatrace endpoint configured"""
|
|
70
80
|
|
|
81
|
+
# SaaS
|
|
71
82
|
SAAS = "saas"
|
|
83
|
+
# ActiveGate
|
|
72
84
|
AG = "ag"
|
|
73
85
|
|
|
74
86
|
|
|
75
87
|
class OutputDynatraceOtlpBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
76
88
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
77
89
|
|
|
90
|
+
# Block
|
|
78
91
|
BLOCK = "block"
|
|
92
|
+
# Drop
|
|
79
93
|
DROP = "drop"
|
|
94
|
+
# Persistent Queue
|
|
80
95
|
QUEUE = "queue"
|
|
81
96
|
|
|
82
97
|
|
|
@@ -148,22 +163,29 @@ class OutputDynatraceOtlpTimeoutRetrySettings(BaseModel):
|
|
|
148
163
|
class OutputDynatraceOtlpPqCompressCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
149
164
|
r"""Codec to use to compress the persisted data"""
|
|
150
165
|
|
|
166
|
+
# None
|
|
151
167
|
NONE = "none"
|
|
168
|
+
# Gzip
|
|
152
169
|
GZIP = "gzip"
|
|
153
170
|
|
|
154
171
|
|
|
155
172
|
class OutputDynatraceOtlpQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
156
173
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
157
174
|
|
|
175
|
+
# Block
|
|
158
176
|
BLOCK = "block"
|
|
177
|
+
# Drop new data
|
|
159
178
|
DROP = "drop"
|
|
160
179
|
|
|
161
180
|
|
|
162
181
|
class OutputDynatraceOtlpMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
163
182
|
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
164
183
|
|
|
184
|
+
# Error
|
|
165
185
|
ERROR = "error"
|
|
186
|
+
# Backpressure
|
|
166
187
|
BACKPRESSURE = "backpressure"
|
|
188
|
+
# Always On
|
|
167
189
|
ALWAYS = "always"
|
|
168
190
|
|
|
169
191
|
|
|
@@ -29,8 +29,11 @@ class OutputElasticExtraHTTPHeader(BaseModel):
|
|
|
29
29
|
class OutputElasticFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
30
30
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
31
31
|
|
|
32
|
+
# Payload
|
|
32
33
|
PAYLOAD = "payload"
|
|
34
|
+
# Payload + Headers
|
|
33
35
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
36
|
+
# None
|
|
34
37
|
NONE = "none"
|
|
35
38
|
|
|
36
39
|
|
|
@@ -130,23 +133,31 @@ class OutputElasticAuth(BaseModel):
|
|
|
130
133
|
class ElasticVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
131
134
|
r"""Optional Elasticsearch version, used to format events. If not specified, will auto-discover version."""
|
|
132
135
|
|
|
136
|
+
# Auto
|
|
133
137
|
AUTO = "auto"
|
|
138
|
+
# 6.x
|
|
134
139
|
SIX = "6"
|
|
140
|
+
# 7.x
|
|
135
141
|
SEVEN = "7"
|
|
136
142
|
|
|
137
143
|
|
|
138
144
|
class WriteAction(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
139
145
|
r"""Action to use when writing events. Must be set to `Create` when writing to a data stream."""
|
|
140
146
|
|
|
147
|
+
# Index
|
|
141
148
|
INDEX = "index"
|
|
149
|
+
# Create
|
|
142
150
|
CREATE = "create"
|
|
143
151
|
|
|
144
152
|
|
|
145
153
|
class OutputElasticBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
146
154
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
147
155
|
|
|
156
|
+
# Block
|
|
148
157
|
BLOCK = "block"
|
|
158
|
+
# Drop
|
|
149
159
|
DROP = "drop"
|
|
160
|
+
# Persistent Queue
|
|
150
161
|
QUEUE = "queue"
|
|
151
162
|
|
|
152
163
|
|
|
@@ -168,22 +179,29 @@ class OutputElasticURL(BaseModel):
|
|
|
168
179
|
class OutputElasticCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
169
180
|
r"""Codec to use to compress the persisted data"""
|
|
170
181
|
|
|
182
|
+
# None
|
|
171
183
|
NONE = "none"
|
|
184
|
+
# Gzip
|
|
172
185
|
GZIP = "gzip"
|
|
173
186
|
|
|
174
187
|
|
|
175
188
|
class OutputElasticQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
176
189
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
177
190
|
|
|
191
|
+
# Block
|
|
178
192
|
BLOCK = "block"
|
|
193
|
+
# Drop new data
|
|
179
194
|
DROP = "drop"
|
|
180
195
|
|
|
181
196
|
|
|
182
197
|
class OutputElasticMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
183
198
|
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
184
199
|
|
|
200
|
+
# Error
|
|
185
201
|
ERROR = "error"
|
|
202
|
+
# Backpressure
|
|
186
203
|
BACKPRESSURE = "backpressure"
|
|
204
|
+
# Always On
|
|
187
205
|
ALWAYS = "always"
|
|
188
206
|
|
|
189
207
|
|
|
@@ -31,8 +31,11 @@ class OutputElasticCloudFailedRequestLoggingMode(
|
|
|
31
31
|
):
|
|
32
32
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
33
33
|
|
|
34
|
+
# Payload
|
|
34
35
|
PAYLOAD = "payload"
|
|
36
|
+
# Payload + Headers
|
|
35
37
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
38
|
+
# None
|
|
36
39
|
NONE = "none"
|
|
37
40
|
|
|
38
41
|
|
|
@@ -132,30 +135,40 @@ class OutputElasticCloudTimeoutRetrySettings(BaseModel):
|
|
|
132
135
|
class OutputElasticCloudBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
133
136
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
134
137
|
|
|
138
|
+
# Block
|
|
135
139
|
BLOCK = "block"
|
|
140
|
+
# Drop
|
|
136
141
|
DROP = "drop"
|
|
142
|
+
# Persistent Queue
|
|
137
143
|
QUEUE = "queue"
|
|
138
144
|
|
|
139
145
|
|
|
140
146
|
class OutputElasticCloudCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
141
147
|
r"""Codec to use to compress the persisted data"""
|
|
142
148
|
|
|
149
|
+
# None
|
|
143
150
|
NONE = "none"
|
|
151
|
+
# Gzip
|
|
144
152
|
GZIP = "gzip"
|
|
145
153
|
|
|
146
154
|
|
|
147
155
|
class OutputElasticCloudQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
148
156
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
149
157
|
|
|
158
|
+
# Block
|
|
150
159
|
BLOCK = "block"
|
|
160
|
+
# Drop new data
|
|
151
161
|
DROP = "drop"
|
|
152
162
|
|
|
153
163
|
|
|
154
164
|
class OutputElasticCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
155
165
|
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
156
166
|
|
|
167
|
+
# Error
|
|
157
168
|
ERROR = "error"
|
|
169
|
+
# Backpressure
|
|
158
170
|
BACKPRESSURE = "backpressure"
|
|
171
|
+
# Always On
|
|
159
172
|
ALWAYS = "always"
|
|
160
173
|
|
|
161
174
|
|
|
@@ -25,34 +25,48 @@ class OutputExabeamSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
25
25
|
class OutputExabeamObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
26
26
|
r"""Object ACL to assign to uploaded objects"""
|
|
27
27
|
|
|
28
|
+
# private
|
|
28
29
|
PRIVATE = "private"
|
|
30
|
+
# bucket-owner-read
|
|
29
31
|
BUCKET_OWNER_READ = "bucket-owner-read"
|
|
32
|
+
# bucket-owner-full-control
|
|
30
33
|
BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
|
|
34
|
+
# project-private
|
|
31
35
|
PROJECT_PRIVATE = "project-private"
|
|
36
|
+
# authenticated-read
|
|
32
37
|
AUTHENTICATED_READ = "authenticated-read"
|
|
38
|
+
# public-read
|
|
33
39
|
PUBLIC_READ = "public-read"
|
|
34
40
|
|
|
35
41
|
|
|
36
42
|
class OutputExabeamStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
37
43
|
r"""Storage class to select for uploaded objects"""
|
|
38
44
|
|
|
45
|
+
# Standard Storage
|
|
39
46
|
STANDARD = "STANDARD"
|
|
47
|
+
# Nearline Storage
|
|
40
48
|
NEARLINE = "NEARLINE"
|
|
49
|
+
# Coldline Storage
|
|
41
50
|
COLDLINE = "COLDLINE"
|
|
51
|
+
# Archive Storage
|
|
42
52
|
ARCHIVE = "ARCHIVE"
|
|
43
53
|
|
|
44
54
|
|
|
45
55
|
class OutputExabeamBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
46
56
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
47
57
|
|
|
58
|
+
# Block
|
|
48
59
|
BLOCK = "block"
|
|
60
|
+
# Drop
|
|
49
61
|
DROP = "drop"
|
|
50
62
|
|
|
51
63
|
|
|
52
64
|
class OutputExabeamDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
53
65
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
54
66
|
|
|
67
|
+
# Block
|
|
55
68
|
BLOCK = "block"
|
|
69
|
+
# Drop
|
|
56
70
|
DROP = "drop"
|
|
57
71
|
|
|
58
72
|
|
|
@@ -18,22 +18,29 @@ class OutputFilesystemType(str, Enum):
|
|
|
18
18
|
class OutputFilesystemDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
19
19
|
r"""Format of the output data"""
|
|
20
20
|
|
|
21
|
+
# JSON
|
|
21
22
|
JSON = "json"
|
|
23
|
+
# Raw
|
|
22
24
|
RAW = "raw"
|
|
25
|
+
# Parquet
|
|
23
26
|
PARQUET = "parquet"
|
|
24
27
|
|
|
25
28
|
|
|
26
29
|
class OutputFilesystemBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
30
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
28
31
|
|
|
32
|
+
# Block
|
|
29
33
|
BLOCK = "block"
|
|
34
|
+
# Drop
|
|
30
35
|
DROP = "drop"
|
|
31
36
|
|
|
32
37
|
|
|
33
38
|
class OutputFilesystemDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
39
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
35
40
|
|
|
41
|
+
# Block
|
|
36
42
|
BLOCK = "block"
|
|
43
|
+
# Drop
|
|
37
44
|
DROP = "drop"
|
|
38
45
|
|
|
39
46
|
|
|
@@ -47,23 +54,31 @@ class OutputFilesystemCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
47
54
|
class OutputFilesystemCompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
48
55
|
r"""Compression level to apply before moving files to final destination"""
|
|
49
56
|
|
|
57
|
+
# Best Speed
|
|
50
58
|
BEST_SPEED = "best_speed"
|
|
59
|
+
# Normal
|
|
51
60
|
NORMAL = "normal"
|
|
61
|
+
# Best Compression
|
|
52
62
|
BEST_COMPRESSION = "best_compression"
|
|
53
63
|
|
|
54
64
|
|
|
55
65
|
class OutputFilesystemParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
56
66
|
r"""Determines which data types are supported and how they are represented"""
|
|
57
67
|
|
|
68
|
+
# 1.0
|
|
58
69
|
PARQUET_1_0 = "PARQUET_1_0"
|
|
70
|
+
# 2.4
|
|
59
71
|
PARQUET_2_4 = "PARQUET_2_4"
|
|
72
|
+
# 2.6
|
|
60
73
|
PARQUET_2_6 = "PARQUET_2_6"
|
|
61
74
|
|
|
62
75
|
|
|
63
76
|
class OutputFilesystemDataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
64
77
|
r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
|
|
65
78
|
|
|
79
|
+
# V1
|
|
66
80
|
DATA_PAGE_V1 = "DATA_PAGE_V1"
|
|
81
|
+
# V2
|
|
67
82
|
DATA_PAGE_V2 = "DATA_PAGE_V2"
|
|
68
83
|
|
|
69
84
|
|
|
@@ -16,16 +16,22 @@ class OutputGoogleChronicleType(str, Enum):
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
class OutputGoogleChronicleAPIVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
19
|
+
# V1
|
|
19
20
|
V1 = "v1"
|
|
21
|
+
# V2
|
|
20
22
|
V2 = "v2"
|
|
21
23
|
|
|
22
24
|
|
|
23
25
|
class OutputGoogleChronicleAuthenticationMethod(
|
|
24
26
|
str, Enum, metaclass=utils.OpenEnumMeta
|
|
25
27
|
):
|
|
28
|
+
# API key
|
|
26
29
|
MANUAL = "manual"
|
|
30
|
+
# API key secret
|
|
27
31
|
SECRET = "secret"
|
|
32
|
+
# Service account credentials
|
|
28
33
|
SERVICE_ACCOUNT = "serviceAccount"
|
|
34
|
+
# Service account credentials secret
|
|
29
35
|
SERVICE_ACCOUNT_SECRET = "serviceAccountSecret"
|
|
30
36
|
|
|
31
37
|
|
|
@@ -84,7 +90,9 @@ class OutputGoogleChronicleTimeoutRetrySettings(BaseModel):
|
|
|
84
90
|
|
|
85
91
|
|
|
86
92
|
class SendEventsAs(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
93
|
+
# Unstructured
|
|
87
94
|
UNSTRUCTURED = "unstructured"
|
|
95
|
+
# UDM
|
|
88
96
|
UDM = "udm"
|
|
89
97
|
|
|
90
98
|
|
|
@@ -104,8 +112,11 @@ class OutputGoogleChronicleFailedRequestLoggingMode(
|
|
|
104
112
|
):
|
|
105
113
|
r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
|
|
106
114
|
|
|
115
|
+
# Payload
|
|
107
116
|
PAYLOAD = "payload"
|
|
117
|
+
# Payload + Headers
|
|
108
118
|
PAYLOAD_AND_HEADERS = "payloadAndHeaders"
|
|
119
|
+
# None
|
|
109
120
|
NONE = "none"
|
|
110
121
|
|
|
111
122
|
|
|
@@ -114,8 +125,11 @@ class OutputGoogleChronicleBackpressureBehavior(
|
|
|
114
125
|
):
|
|
115
126
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
116
127
|
|
|
128
|
+
# Block
|
|
117
129
|
BLOCK = "block"
|
|
130
|
+
# Drop
|
|
118
131
|
DROP = "drop"
|
|
132
|
+
# Persistent Queue
|
|
119
133
|
QUEUE = "queue"
|
|
120
134
|
|
|
121
135
|
|
|
@@ -130,12 +144,12 @@ class ExtraLogType(BaseModel):
|
|
|
130
144
|
description: Optional[str] = None
|
|
131
145
|
|
|
132
146
|
|
|
133
|
-
class
|
|
147
|
+
class OutputGoogleChronicleCustomLabelTypedDict(TypedDict):
|
|
134
148
|
key: str
|
|
135
149
|
value: str
|
|
136
150
|
|
|
137
151
|
|
|
138
|
-
class
|
|
152
|
+
class OutputGoogleChronicleCustomLabel(BaseModel):
|
|
139
153
|
key: str
|
|
140
154
|
|
|
141
155
|
value: str
|
|
@@ -144,22 +158,29 @@ class CustomLabel(BaseModel):
|
|
|
144
158
|
class OutputGoogleChronicleCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
145
159
|
r"""Codec to use to compress the persisted data"""
|
|
146
160
|
|
|
161
|
+
# None
|
|
147
162
|
NONE = "none"
|
|
163
|
+
# Gzip
|
|
148
164
|
GZIP = "gzip"
|
|
149
165
|
|
|
150
166
|
|
|
151
167
|
class OutputGoogleChronicleQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
152
168
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
153
169
|
|
|
170
|
+
# Block
|
|
154
171
|
BLOCK = "block"
|
|
172
|
+
# Drop new data
|
|
155
173
|
DROP = "drop"
|
|
156
174
|
|
|
157
175
|
|
|
158
176
|
class OutputGoogleChronicleMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
159
177
|
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
160
178
|
|
|
179
|
+
# Error
|
|
161
180
|
ERROR = "error"
|
|
181
|
+
# Backpressure
|
|
162
182
|
BACKPRESSURE = "backpressure"
|
|
183
|
+
# Always On
|
|
163
184
|
ALWAYS = "always"
|
|
164
185
|
|
|
165
186
|
|
|
@@ -239,7 +260,7 @@ class OutputGoogleChronicleTypedDict(TypedDict):
|
|
|
239
260
|
r"""A unique identifier (UUID) for your Google SecOps instance. This is provided by your Google representative and is required for API V2 authentication."""
|
|
240
261
|
namespace: NotRequired[str]
|
|
241
262
|
r"""User-configured environment namespace to identify the data domain the logs originated from. Use namespace as a tag to identify the appropriate data domain for indexing and enrichment functionality. Can be overwritten by event field __namespace."""
|
|
242
|
-
custom_labels: NotRequired[List[
|
|
263
|
+
custom_labels: NotRequired[List[OutputGoogleChronicleCustomLabelTypedDict]]
|
|
243
264
|
r"""Custom labels to be added to every batch"""
|
|
244
265
|
api_key: NotRequired[str]
|
|
245
266
|
r"""Organization's API key in Google SecOps"""
|
|
@@ -417,7 +438,8 @@ class OutputGoogleChronicle(BaseModel):
|
|
|
417
438
|
r"""User-configured environment namespace to identify the data domain the logs originated from. Use namespace as a tag to identify the appropriate data domain for indexing and enrichment functionality. Can be overwritten by event field __namespace."""
|
|
418
439
|
|
|
419
440
|
custom_labels: Annotated[
|
|
420
|
-
Optional[List[
|
|
441
|
+
Optional[List[OutputGoogleChronicleCustomLabel]],
|
|
442
|
+
pydantic.Field(alias="customLabels"),
|
|
421
443
|
] = None
|
|
422
444
|
r"""Custom labels to be added to every batch"""
|
|
423
445
|
|
|
@@ -16,16 +16,22 @@ class OutputGoogleCloudLoggingType(str, Enum):
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
class LogLocationType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
19
|
+
# Project
|
|
19
20
|
PROJECT = "project"
|
|
21
|
+
# Organization
|
|
20
22
|
ORGANIZATION = "organization"
|
|
23
|
+
# Billing Account
|
|
21
24
|
BILLING_ACCOUNT = "billingAccount"
|
|
25
|
+
# Folder
|
|
22
26
|
FOLDER = "folder"
|
|
23
27
|
|
|
24
28
|
|
|
25
29
|
class PayloadFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
26
30
|
r"""Format to use when sending payload. Defaults to Text."""
|
|
27
31
|
|
|
32
|
+
# Text
|
|
28
33
|
TEXT = "text"
|
|
34
|
+
# JSON
|
|
29
35
|
JSON = "json"
|
|
30
36
|
|
|
31
37
|
|
|
@@ -64,8 +70,11 @@ class OutputGoogleCloudLoggingGoogleAuthenticationMethod(
|
|
|
64
70
|
):
|
|
65
71
|
r"""Choose Auto to use Google Application Default Credentials (ADC), Manual to enter Google service account credentials directly, or Secret to select or create a stored secret that references Google service account credentials."""
|
|
66
72
|
|
|
73
|
+
# Auto
|
|
67
74
|
AUTO = "auto"
|
|
75
|
+
# Manual
|
|
68
76
|
MANUAL = "manual"
|
|
77
|
+
# Secret
|
|
69
78
|
SECRET = "secret"
|
|
70
79
|
|
|
71
80
|
|
|
@@ -74,15 +83,20 @@ class OutputGoogleCloudLoggingBackpressureBehavior(
|
|
|
74
83
|
):
|
|
75
84
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
76
85
|
|
|
86
|
+
# Block
|
|
77
87
|
BLOCK = "block"
|
|
88
|
+
# Drop
|
|
78
89
|
DROP = "drop"
|
|
90
|
+
# Persistent Queue
|
|
79
91
|
QUEUE = "queue"
|
|
80
92
|
|
|
81
93
|
|
|
82
94
|
class OutputGoogleCloudLoggingCompression(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
83
95
|
r"""Codec to use to compress the persisted data"""
|
|
84
96
|
|
|
97
|
+
# None
|
|
85
98
|
NONE = "none"
|
|
99
|
+
# Gzip
|
|
86
100
|
GZIP = "gzip"
|
|
87
101
|
|
|
88
102
|
|
|
@@ -91,15 +105,20 @@ class OutputGoogleCloudLoggingQueueFullBehavior(
|
|
|
91
105
|
):
|
|
92
106
|
r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
|
|
93
107
|
|
|
108
|
+
# Block
|
|
94
109
|
BLOCK = "block"
|
|
110
|
+
# Drop new data
|
|
95
111
|
DROP = "drop"
|
|
96
112
|
|
|
97
113
|
|
|
98
114
|
class OutputGoogleCloudLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
99
115
|
r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
|
|
100
116
|
|
|
117
|
+
# Error
|
|
101
118
|
ERROR = "error"
|
|
119
|
+
# Backpressure
|
|
102
120
|
BACKPRESSURE = "backpressure"
|
|
121
|
+
# Always On
|
|
103
122
|
ALWAYS = "always"
|
|
104
123
|
|
|
105
124
|
|
|
@@ -115,9 +134,9 @@ class OutputGoogleCloudLoggingTypedDict(TypedDict):
|
|
|
115
134
|
type: OutputGoogleCloudLoggingType
|
|
116
135
|
log_location_type: LogLocationType
|
|
117
136
|
log_name_expression: str
|
|
118
|
-
r"""JavaScript expression to compute the value of the log name."""
|
|
137
|
+
r"""JavaScript expression to compute the value of the log name. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
119
138
|
log_location_expression: str
|
|
120
|
-
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated."""
|
|
139
|
+
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
121
140
|
id: NotRequired[str]
|
|
122
141
|
r"""Unique ID for this output"""
|
|
123
142
|
pipeline: NotRequired[str]
|
|
@@ -128,6 +147,7 @@ class OutputGoogleCloudLoggingTypedDict(TypedDict):
|
|
|
128
147
|
r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
|
|
129
148
|
streamtags: NotRequired[List[str]]
|
|
130
149
|
r"""Tags for filtering and grouping in @{product}"""
|
|
150
|
+
sanitize_log_names: NotRequired[bool]
|
|
131
151
|
payload_format: NotRequired[PayloadFormat]
|
|
132
152
|
r"""Format to use when sending payload. Defaults to Text."""
|
|
133
153
|
log_labels: NotRequired[List[LogLabelTypedDict]]
|
|
@@ -247,12 +267,12 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
247
267
|
]
|
|
248
268
|
|
|
249
269
|
log_name_expression: Annotated[str, pydantic.Field(alias="logNameExpression")]
|
|
250
|
-
r"""JavaScript expression to compute the value of the log name."""
|
|
270
|
+
r"""JavaScript expression to compute the value of the log name. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
251
271
|
|
|
252
272
|
log_location_expression: Annotated[
|
|
253
273
|
str, pydantic.Field(alias="logLocationExpression")
|
|
254
274
|
]
|
|
255
|
-
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated."""
|
|
275
|
+
r"""JavaScript expression to compute the value of the folder ID with which log entries should be associated. If Validate and correct log name is enabled, invalid characters (characters other than alphanumerics, forward-slashes, underscores, hyphens, and periods) will be replaced with an underscore."""
|
|
256
276
|
|
|
257
277
|
id: Optional[str] = None
|
|
258
278
|
r"""Unique ID for this output"""
|
|
@@ -271,6 +291,10 @@ class OutputGoogleCloudLogging(BaseModel):
|
|
|
271
291
|
streamtags: Optional[List[str]] = None
|
|
272
292
|
r"""Tags for filtering and grouping in @{product}"""
|
|
273
293
|
|
|
294
|
+
sanitize_log_names: Annotated[
|
|
295
|
+
Optional[bool], pydantic.Field(alias="sanitizeLogNames")
|
|
296
|
+
] = False
|
|
297
|
+
|
|
274
298
|
payload_format: Annotated[
|
|
275
299
|
Annotated[Optional[PayloadFormat], PlainValidator(validate_open_enum(False))],
|
|
276
300
|
pydantic.Field(alias="payloadFormat"),
|
|
@@ -25,36 +25,52 @@ class OutputGoogleCloudStorageSignatureVersion(str, Enum, metaclass=utils.OpenEn
|
|
|
25
25
|
class OutputGoogleCloudStorageAuthenticationMethod(
|
|
26
26
|
str, Enum, metaclass=utils.OpenEnumMeta
|
|
27
27
|
):
|
|
28
|
+
# auto
|
|
28
29
|
AUTO = "auto"
|
|
30
|
+
# manual
|
|
29
31
|
MANUAL = "manual"
|
|
32
|
+
# Secret Key pair
|
|
30
33
|
SECRET = "secret"
|
|
31
34
|
|
|
32
35
|
|
|
33
36
|
class OutputGoogleCloudStorageObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
34
37
|
r"""Object ACL to assign to uploaded objects"""
|
|
35
38
|
|
|
39
|
+
# private
|
|
36
40
|
PRIVATE = "private"
|
|
41
|
+
# bucket-owner-read
|
|
37
42
|
BUCKET_OWNER_READ = "bucket-owner-read"
|
|
43
|
+
# bucket-owner-full-control
|
|
38
44
|
BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
|
|
45
|
+
# project-private
|
|
39
46
|
PROJECT_PRIVATE = "project-private"
|
|
47
|
+
# authenticated-read
|
|
40
48
|
AUTHENTICATED_READ = "authenticated-read"
|
|
49
|
+
# public-read
|
|
41
50
|
PUBLIC_READ = "public-read"
|
|
42
51
|
|
|
43
52
|
|
|
44
53
|
class OutputGoogleCloudStorageStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
45
54
|
r"""Storage class to select for uploaded objects"""
|
|
46
55
|
|
|
56
|
+
# Standard Storage
|
|
47
57
|
STANDARD = "STANDARD"
|
|
58
|
+
# Nearline Storage
|
|
48
59
|
NEARLINE = "NEARLINE"
|
|
60
|
+
# Coldline Storage
|
|
49
61
|
COLDLINE = "COLDLINE"
|
|
62
|
+
# Archive Storage
|
|
50
63
|
ARCHIVE = "ARCHIVE"
|
|
51
64
|
|
|
52
65
|
|
|
53
66
|
class OutputGoogleCloudStorageDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
54
67
|
r"""Format of the output data"""
|
|
55
68
|
|
|
69
|
+
# JSON
|
|
56
70
|
JSON = "json"
|
|
71
|
+
# Raw
|
|
57
72
|
RAW = "raw"
|
|
73
|
+
# Parquet
|
|
58
74
|
PARQUET = "parquet"
|
|
59
75
|
|
|
60
76
|
|
|
@@ -63,7 +79,9 @@ class OutputGoogleCloudStorageBackpressureBehavior(
|
|
|
63
79
|
):
|
|
64
80
|
r"""How to handle events when all receivers are exerting backpressure"""
|
|
65
81
|
|
|
82
|
+
# Block
|
|
66
83
|
BLOCK = "block"
|
|
84
|
+
# Drop
|
|
67
85
|
DROP = "drop"
|
|
68
86
|
|
|
69
87
|
|
|
@@ -72,7 +90,9 @@ class OutputGoogleCloudStorageDiskSpaceProtection(
|
|
|
72
90
|
):
|
|
73
91
|
r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
|
|
74
92
|
|
|
93
|
+
# Block
|
|
75
94
|
BLOCK = "block"
|
|
95
|
+
# Drop
|
|
76
96
|
DROP = "drop"
|
|
77
97
|
|
|
78
98
|
|
|
@@ -86,23 +106,31 @@ class OutputGoogleCloudStorageCompression(str, Enum, metaclass=utils.OpenEnumMet
|
|
|
86
106
|
class OutputGoogleCloudStorageCompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
87
107
|
r"""Compression level to apply before moving files to final destination"""
|
|
88
108
|
|
|
109
|
+
# Best Speed
|
|
89
110
|
BEST_SPEED = "best_speed"
|
|
111
|
+
# Normal
|
|
90
112
|
NORMAL = "normal"
|
|
113
|
+
# Best Compression
|
|
91
114
|
BEST_COMPRESSION = "best_compression"
|
|
92
115
|
|
|
93
116
|
|
|
94
117
|
class OutputGoogleCloudStorageParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
95
118
|
r"""Determines which data types are supported and how they are represented"""
|
|
96
119
|
|
|
120
|
+
# 1.0
|
|
97
121
|
PARQUET_1_0 = "PARQUET_1_0"
|
|
122
|
+
# 2.4
|
|
98
123
|
PARQUET_2_4 = "PARQUET_2_4"
|
|
124
|
+
# 2.6
|
|
99
125
|
PARQUET_2_6 = "PARQUET_2_6"
|
|
100
126
|
|
|
101
127
|
|
|
102
128
|
class OutputGoogleCloudStorageDataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
103
129
|
r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
|
|
104
130
|
|
|
131
|
+
# V1
|
|
105
132
|
DATA_PAGE_V1 = "DATA_PAGE_V1"
|
|
133
|
+
# V2
|
|
106
134
|
DATA_PAGE_V2 = "DATA_PAGE_V2"
|
|
107
135
|
|
|
108
136
|
|