cribl-control-plane 0.0.16__py3-none-any.whl → 0.0.17__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.

Files changed (133) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/errors/healthstatus_error.py +2 -8
  3. cribl_control_plane/models/__init__.py +4124 -4124
  4. cribl_control_plane/models/createinputop.py +1734 -2771
  5. cribl_control_plane/models/createoutputop.py +2153 -4314
  6. cribl_control_plane/models/healthstatus.py +4 -7
  7. cribl_control_plane/models/inputappscope.py +16 -36
  8. cribl_control_plane/models/inputazureblob.py +8 -19
  9. cribl_control_plane/models/inputcollection.py +6 -15
  10. cribl_control_plane/models/inputconfluentcloud.py +20 -45
  11. cribl_control_plane/models/inputcribl.py +6 -13
  12. cribl_control_plane/models/inputcriblhttp.py +10 -27
  13. cribl_control_plane/models/inputcribllakehttp.py +12 -26
  14. cribl_control_plane/models/inputcriblmetrics.py +6 -14
  15. cribl_control_plane/models/inputcribltcp.py +10 -27
  16. cribl_control_plane/models/inputcrowdstrike.py +12 -28
  17. cribl_control_plane/models/inputdatadogagent.py +10 -28
  18. cribl_control_plane/models/inputdatagen.py +6 -13
  19. cribl_control_plane/models/inputedgeprometheus.py +31 -64
  20. cribl_control_plane/models/inputelastic.py +16 -44
  21. cribl_control_plane/models/inputeventhub.py +8 -19
  22. cribl_control_plane/models/inputexec.py +8 -16
  23. cribl_control_plane/models/inputfile.py +8 -17
  24. cribl_control_plane/models/inputfirehose.py +10 -27
  25. cribl_control_plane/models/inputgooglepubsub.py +8 -23
  26. cribl_control_plane/models/inputgrafana_union.py +35 -81
  27. cribl_control_plane/models/inputhttp.py +10 -27
  28. cribl_control_plane/models/inputhttpraw.py +10 -27
  29. cribl_control_plane/models/inputjournalfiles.py +6 -16
  30. cribl_control_plane/models/inputkafka.py +16 -45
  31. cribl_control_plane/models/inputkinesis.py +16 -42
  32. cribl_control_plane/models/inputkubeevents.py +6 -13
  33. cribl_control_plane/models/inputkubelogs.py +10 -18
  34. cribl_control_plane/models/inputkubemetrics.py +10 -18
  35. cribl_control_plane/models/inputloki.py +12 -33
  36. cribl_control_plane/models/inputmetrics.py +10 -25
  37. cribl_control_plane/models/inputmodeldriventelemetry.py +12 -32
  38. cribl_control_plane/models/inputmsk.py +18 -52
  39. cribl_control_plane/models/inputnetflow.py +6 -15
  40. cribl_control_plane/models/inputoffice365mgmt.py +16 -37
  41. cribl_control_plane/models/inputoffice365msgtrace.py +18 -39
  42. cribl_control_plane/models/inputoffice365service.py +18 -39
  43. cribl_control_plane/models/inputopentelemetry.py +18 -42
  44. cribl_control_plane/models/inputprometheus.py +20 -54
  45. cribl_control_plane/models/inputprometheusrw.py +12 -34
  46. cribl_control_plane/models/inputrawudp.py +6 -15
  47. cribl_control_plane/models/inputs3.py +10 -23
  48. cribl_control_plane/models/inputs3inventory.py +12 -28
  49. cribl_control_plane/models/inputsecuritylake.py +12 -29
  50. cribl_control_plane/models/inputsnmp.py +8 -20
  51. cribl_control_plane/models/inputsplunk.py +14 -37
  52. cribl_control_plane/models/inputsplunkhec.py +12 -33
  53. cribl_control_plane/models/inputsplunksearch.py +16 -37
  54. cribl_control_plane/models/inputsqs.py +12 -31
  55. cribl_control_plane/models/inputsyslog_union.py +29 -53
  56. cribl_control_plane/models/inputsystemmetrics.py +26 -50
  57. cribl_control_plane/models/inputsystemstate.py +10 -18
  58. cribl_control_plane/models/inputtcp.py +12 -33
  59. cribl_control_plane/models/inputtcpjson.py +12 -33
  60. cribl_control_plane/models/inputwef.py +20 -45
  61. cribl_control_plane/models/inputwindowsmetrics.py +26 -46
  62. cribl_control_plane/models/inputwineventlogs.py +12 -22
  63. cribl_control_plane/models/inputwiz.py +10 -25
  64. cribl_control_plane/models/inputzscalerhec.py +12 -33
  65. cribl_control_plane/models/output.py +3 -6
  66. cribl_control_plane/models/outputazureblob.py +20 -52
  67. cribl_control_plane/models/outputazuredataexplorer.py +30 -77
  68. cribl_control_plane/models/outputazureeventhub.py +20 -44
  69. cribl_control_plane/models/outputazurelogs.py +14 -37
  70. cribl_control_plane/models/outputclickhouse.py +22 -59
  71. cribl_control_plane/models/outputcloudwatch.py +12 -33
  72. cribl_control_plane/models/outputconfluentcloud.py +32 -75
  73. cribl_control_plane/models/outputcriblhttp.py +18 -46
  74. cribl_control_plane/models/outputcribllake.py +18 -48
  75. cribl_control_plane/models/outputcribltcp.py +20 -47
  76. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
  77. cribl_control_plane/models/outputdatadog.py +22 -50
  78. cribl_control_plane/models/outputdataset.py +20 -48
  79. cribl_control_plane/models/outputdefault.py +2 -5
  80. cribl_control_plane/models/outputdevnull.py +2 -5
  81. cribl_control_plane/models/outputdiskspool.py +4 -9
  82. cribl_control_plane/models/outputdls3.py +26 -72
  83. cribl_control_plane/models/outputdynatracehttp.py +22 -57
  84. cribl_control_plane/models/outputdynatraceotlp.py +24 -59
  85. cribl_control_plane/models/outputelastic.py +20 -45
  86. cribl_control_plane/models/outputelasticcloud.py +14 -40
  87. cribl_control_plane/models/outputexabeam.py +12 -33
  88. cribl_control_plane/models/outputfilesystem.py +16 -41
  89. cribl_control_plane/models/outputgooglechronicle.py +18 -54
  90. cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
  91. cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
  92. cribl_control_plane/models/outputgooglepubsub.py +16 -39
  93. cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
  94. cribl_control_plane/models/outputgraphite.py +16 -35
  95. cribl_control_plane/models/outputhoneycomb.py +14 -37
  96. cribl_control_plane/models/outputhumiohec.py +18 -47
  97. cribl_control_plane/models/outputinfluxdb.py +18 -44
  98. cribl_control_plane/models/outputkafka.py +28 -73
  99. cribl_control_plane/models/outputkinesis.py +18 -44
  100. cribl_control_plane/models/outputloki.py +18 -43
  101. cribl_control_plane/models/outputminio.py +26 -69
  102. cribl_control_plane/models/outputmsk.py +30 -81
  103. cribl_control_plane/models/outputnetflow.py +2 -5
  104. cribl_control_plane/models/outputnewrelic.py +20 -45
  105. cribl_control_plane/models/outputnewrelicevents.py +16 -45
  106. cribl_control_plane/models/outputopentelemetry.py +28 -69
  107. cribl_control_plane/models/outputprometheus.py +14 -37
  108. cribl_control_plane/models/outputring.py +10 -21
  109. cribl_control_plane/models/outputrouter.py +2 -5
  110. cribl_control_plane/models/outputs3.py +28 -72
  111. cribl_control_plane/models/outputsecuritylake.py +20 -56
  112. cribl_control_plane/models/outputsentinel.py +20 -49
  113. cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
  114. cribl_control_plane/models/outputservicenow.py +26 -64
  115. cribl_control_plane/models/outputsignalfx.py +16 -39
  116. cribl_control_plane/models/outputsnmp.py +2 -5
  117. cribl_control_plane/models/outputsns.py +16 -40
  118. cribl_control_plane/models/outputsplunk.py +26 -64
  119. cribl_control_plane/models/outputsplunkhec.py +14 -37
  120. cribl_control_plane/models/outputsplunklb.py +36 -83
  121. cribl_control_plane/models/outputsqs.py +18 -45
  122. cribl_control_plane/models/outputstatsd.py +16 -34
  123. cribl_control_plane/models/outputstatsdext.py +14 -33
  124. cribl_control_plane/models/outputsumologic.py +14 -37
  125. cribl_control_plane/models/outputsyslog.py +26 -60
  126. cribl_control_plane/models/outputtcpjson.py +22 -54
  127. cribl_control_plane/models/outputwavefront.py +14 -37
  128. cribl_control_plane/models/outputwebhook.py +24 -60
  129. cribl_control_plane/models/outputxsiam.py +16 -37
  130. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.17.dist-info}/METADATA +1 -1
  131. cribl_control_plane-0.0.17.dist-info/RECORD +215 -0
  132. cribl_control_plane-0.0.16.dist-info/RECORD +0 -215
  133. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.17.dist-info}/WHEEL +0 -0
@@ -1,21 +1,18 @@
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 utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDlS3Type(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDlS3Type(str, Enum):
15
12
  DL_S3 = "dl_s3"
16
13
 
17
14
 
18
- class OutputDlS3AuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputDlS3AuthenticationMethod(str, Enum):
19
16
  r"""AWS authentication method. Choose Auto to use IAM roles."""
20
17
 
21
18
  AUTO = "auto"
@@ -23,14 +20,14 @@ class OutputDlS3AuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
23
20
  SECRET = "secret"
24
21
 
25
22
 
26
- class OutputDlS3SignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
23
+ class OutputDlS3SignatureVersion(str, Enum):
27
24
  r"""Signature version to use for signing S3 requests"""
28
25
 
29
26
  V2 = "v2"
30
27
  V4 = "v4"
31
28
 
32
29
 
33
- class OutputDlS3ObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
30
+ class OutputDlS3ObjectACL(str, Enum):
34
31
  r"""Object ACL to assign to uploaded objects"""
35
32
 
36
33
  PRIVATE = "private"
@@ -42,7 +39,7 @@ class OutputDlS3ObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
42
39
  BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
43
40
 
44
41
 
45
- class OutputDlS3StorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
42
+ class OutputDlS3StorageClass(str, Enum):
46
43
  r"""Storage class to select for uploaded objects"""
47
44
 
48
45
  STANDARD = "STANDARD"
@@ -55,14 +52,12 @@ class OutputDlS3StorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
55
52
  DEEP_ARCHIVE = "DEEP_ARCHIVE"
56
53
 
57
54
 
58
- class OutputDlS3ServerSideEncryptionForUploadedObjects(
59
- str, Enum, metaclass=utils.OpenEnumMeta
60
- ):
55
+ class OutputDlS3ServerSideEncryptionForUploadedObjects(str, Enum):
61
56
  AES256 = "AES256"
62
57
  AWS_KMS = "aws:kms"
63
58
 
64
59
 
65
- class OutputDlS3DataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
60
+ class OutputDlS3DataFormat(str, Enum):
66
61
  r"""Format of the output data"""
67
62
 
68
63
  JSON = "json"
@@ -70,28 +65,28 @@ class OutputDlS3DataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
70
65
  PARQUET = "parquet"
71
66
 
72
67
 
73
- class OutputDlS3BackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
68
+ class OutputDlS3BackpressureBehavior(str, Enum):
74
69
  r"""How to handle events when all receivers are exerting backpressure"""
75
70
 
76
71
  BLOCK = "block"
77
72
  DROP = "drop"
78
73
 
79
74
 
80
- class OutputDlS3DiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
75
+ class OutputDlS3DiskSpaceProtection(str, Enum):
81
76
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
82
77
 
83
78
  BLOCK = "block"
84
79
  DROP = "drop"
85
80
 
86
81
 
87
- class OutputDlS3Compression(str, Enum, metaclass=utils.OpenEnumMeta):
82
+ class OutputDlS3Compression(str, Enum):
88
83
  r"""Data compression format to apply to HTTP content before it is delivered"""
89
84
 
90
85
  NONE = "none"
91
86
  GZIP = "gzip"
92
87
 
93
88
 
94
- class OutputDlS3CompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
89
+ class OutputDlS3CompressionLevel(str, Enum):
95
90
  r"""Compression level to apply before moving files to final destination"""
96
91
 
97
92
  BEST_SPEED = "best_speed"
@@ -99,7 +94,7 @@ class OutputDlS3CompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
99
94
  BEST_COMPRESSION = "best_compression"
100
95
 
101
96
 
102
- class OutputDlS3ParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
97
+ class OutputDlS3ParquetVersion(str, Enum):
103
98
  r"""Determines which data types are supported and how they are represented"""
104
99
 
105
100
  PARQUET_1_0 = "PARQUET_1_0"
@@ -107,7 +102,7 @@ class OutputDlS3ParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
107
102
  PARQUET_2_6 = "PARQUET_2_6"
108
103
 
109
104
 
110
- class OutputDlS3DataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
105
+ class OutputDlS3DataPageVersion(str, Enum):
111
106
  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."""
112
107
 
113
108
  DATA_PAGE_V1 = "DATA_PAGE_V1"
@@ -254,9 +249,7 @@ class OutputDlS3(BaseModel):
254
249
  id: Optional[str] = None
255
250
  r"""Unique ID for this output"""
256
251
 
257
- type: Annotated[
258
- Optional[OutputDlS3Type], PlainValidator(validate_open_enum(False))
259
- ] = None
252
+ type: Optional[OutputDlS3Type] = None
260
253
 
261
254
  pipeline: Optional[str] = None
262
255
  r"""Pipeline to process data before sending out to this output"""
@@ -281,10 +274,7 @@ class OutputDlS3(BaseModel):
281
274
  r"""Secret key. This value can be a constant or a JavaScript expression. Example: `${C.env.SOME_SECRET}`)"""
282
275
 
283
276
  aws_authentication_method: Annotated[
284
- Annotated[
285
- Optional[OutputDlS3AuthenticationMethod],
286
- PlainValidator(validate_open_enum(False)),
287
- ],
277
+ Optional[OutputDlS3AuthenticationMethod],
288
278
  pydantic.Field(alias="awsAuthenticationMethod"),
289
279
  ] = OutputDlS3AuthenticationMethod.AUTO
290
280
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -293,11 +283,7 @@ class OutputDlS3(BaseModel):
293
283
  r"""S3 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to S3-compatible endpoint."""
294
284
 
295
285
  signature_version: Annotated[
296
- Annotated[
297
- Optional[OutputDlS3SignatureVersion],
298
- PlainValidator(validate_open_enum(False)),
299
- ],
300
- pydantic.Field(alias="signatureVersion"),
286
+ Optional[OutputDlS3SignatureVersion], pydantic.Field(alias="signatureVersion")
301
287
  ] = OutputDlS3SignatureVersion.V4
302
288
  r"""Signature version to use for signing S3 requests"""
303
289
 
@@ -345,26 +331,17 @@ class OutputDlS3(BaseModel):
345
331
  r"""Prefix to append to files before uploading. Must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can be evaluated only at init time. Example referencing a Global Variable: `myKeyPrefix-${C.vars.myVar}`"""
346
332
 
347
333
  object_acl: Annotated[
348
- Annotated[
349
- Optional[OutputDlS3ObjectACL], PlainValidator(validate_open_enum(False))
350
- ],
351
- pydantic.Field(alias="objectACL"),
334
+ Optional[OutputDlS3ObjectACL], pydantic.Field(alias="objectACL")
352
335
  ] = OutputDlS3ObjectACL.PRIVATE
353
336
  r"""Object ACL to assign to uploaded objects"""
354
337
 
355
338
  storage_class: Annotated[
356
- Annotated[
357
- Optional[OutputDlS3StorageClass], PlainValidator(validate_open_enum(False))
358
- ],
359
- pydantic.Field(alias="storageClass"),
339
+ Optional[OutputDlS3StorageClass], pydantic.Field(alias="storageClass")
360
340
  ] = None
361
341
  r"""Storage class to select for uploaded objects"""
362
342
 
363
343
  server_side_encryption: Annotated[
364
- Annotated[
365
- Optional[OutputDlS3ServerSideEncryptionForUploadedObjects],
366
- PlainValidator(validate_open_enum(False)),
367
- ],
344
+ Optional[OutputDlS3ServerSideEncryptionForUploadedObjects],
368
345
  pydantic.Field(alias="serverSideEncryption"),
369
346
  ] = None
370
347
 
@@ -377,10 +354,7 @@ class OutputDlS3(BaseModel):
377
354
  r"""Remove empty staging directories after moving files"""
378
355
 
379
356
  format_: Annotated[
380
- Annotated[
381
- Optional[OutputDlS3DataFormat], PlainValidator(validate_open_enum(False))
382
- ],
383
- pydantic.Field(alias="format"),
357
+ Optional[OutputDlS3DataFormat], pydantic.Field(alias="format")
384
358
  ] = OutputDlS3DataFormat.JSON
385
359
  r"""Format of the output data"""
386
360
 
@@ -413,11 +387,7 @@ class OutputDlS3(BaseModel):
413
387
  r"""Buffer size used to write to a file"""
414
388
 
415
389
  on_backpressure: Annotated[
416
- Annotated[
417
- Optional[OutputDlS3BackpressureBehavior],
418
- PlainValidator(validate_open_enum(False)),
419
- ],
420
- pydantic.Field(alias="onBackpressure"),
390
+ Optional[OutputDlS3BackpressureBehavior], pydantic.Field(alias="onBackpressure")
421
391
  ] = OutputDlS3BackpressureBehavior.BLOCK
422
392
  r"""How to handle events when all receivers are exerting backpressure"""
423
393
 
@@ -427,10 +397,7 @@ class OutputDlS3(BaseModel):
427
397
  r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
428
398
 
429
399
  on_disk_full_backpressure: Annotated[
430
- Annotated[
431
- Optional[OutputDlS3DiskSpaceProtection],
432
- PlainValidator(validate_open_enum(False)),
433
- ],
400
+ Optional[OutputDlS3DiskSpaceProtection],
434
401
  pydantic.Field(alias="onDiskFullBackpressure"),
435
402
  ] = OutputDlS3DiskSpaceProtection.BLOCK
436
403
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
@@ -473,17 +440,11 @@ class OutputDlS3(BaseModel):
473
440
  aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
474
441
  r"""Select or create a stored secret that references your access key and secret key"""
475
442
 
476
- compress: Annotated[
477
- Optional[OutputDlS3Compression], PlainValidator(validate_open_enum(False))
478
- ] = OutputDlS3Compression.GZIP
443
+ compress: Optional[OutputDlS3Compression] = OutputDlS3Compression.GZIP
479
444
  r"""Data compression format to apply to HTTP content before it is delivered"""
480
445
 
481
446
  compression_level: Annotated[
482
- Annotated[
483
- Optional[OutputDlS3CompressionLevel],
484
- PlainValidator(validate_open_enum(False)),
485
- ],
486
- pydantic.Field(alias="compressionLevel"),
447
+ Optional[OutputDlS3CompressionLevel], pydantic.Field(alias="compressionLevel")
487
448
  ] = OutputDlS3CompressionLevel.BEST_SPEED
488
449
  r"""Compression level to apply before moving files to final destination"""
489
450
 
@@ -493,19 +454,12 @@ class OutputDlS3(BaseModel):
493
454
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
494
455
 
495
456
  parquet_version: Annotated[
496
- Annotated[
497
- Optional[OutputDlS3ParquetVersion],
498
- PlainValidator(validate_open_enum(False)),
499
- ],
500
- pydantic.Field(alias="parquetVersion"),
457
+ Optional[OutputDlS3ParquetVersion], pydantic.Field(alias="parquetVersion")
501
458
  ] = OutputDlS3ParquetVersion.PARQUET_2_6
502
459
  r"""Determines which data types are supported and how they are represented"""
503
460
 
504
461
  parquet_data_page_version: Annotated[
505
- Annotated[
506
- Optional[OutputDlS3DataPageVersion],
507
- PlainValidator(validate_open_enum(False)),
508
- ],
462
+ Optional[OutputDlS3DataPageVersion],
509
463
  pydantic.Field(alias="parquetDataPageVersion"),
510
464
  ] = OutputDlS3DataPageVersion.DATA_PAGE_V2
511
465
  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."""
@@ -1,21 +1,18 @@
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 utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDynatraceHTTPType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDynatraceHTTPType(str, Enum):
15
12
  DYNATRACE_HTTP = "dynatrace_http"
16
13
 
17
14
 
18
- class OutputDynatraceHTTPMethod(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputDynatraceHTTPMethod(str, Enum):
19
16
  r"""The method to use when sending events"""
20
17
 
21
18
  POST = "POST"
@@ -34,9 +31,7 @@ class OutputDynatraceHTTPExtraHTTPHeader(BaseModel):
34
31
  name: Optional[str] = None
35
32
 
36
33
 
37
- class OutputDynatraceHTTPFailedRequestLoggingMode(
38
- str, Enum, metaclass=utils.OpenEnumMeta
39
- ):
34
+ class OutputDynatraceHTTPFailedRequestLoggingMode(str, Enum):
40
35
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
41
36
 
42
37
  PAYLOAD = "payload"
@@ -98,7 +93,7 @@ class OutputDynatraceHTTPTimeoutRetrySettings(BaseModel):
98
93
  r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
99
94
 
100
95
 
101
- class OutputDynatraceHTTPBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
96
+ class OutputDynatraceHTTPBackpressureBehavior(str, Enum):
102
97
  r"""How to handle events when all receivers are exerting backpressure"""
103
98
 
104
99
  BLOCK = "block"
@@ -106,44 +101,44 @@ class OutputDynatraceHTTPBackpressureBehavior(str, Enum, metaclass=utils.OpenEnu
106
101
  QUEUE = "queue"
107
102
 
108
103
 
109
- class OutputDynatraceHTTPAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
104
+ class OutputDynatraceHTTPAuthenticationType(str, Enum):
110
105
  TOKEN = "token"
111
106
  TEXT_SECRET = "textSecret"
112
107
 
113
108
 
114
- class OutputDynatraceHTTPFormat(str, Enum, metaclass=utils.OpenEnumMeta):
109
+ class OutputDynatraceHTTPFormat(str, Enum):
115
110
  r"""How to format events before sending. Defaults to JSON. Plaintext is not currently supported."""
116
111
 
117
112
  JSON_ARRAY = "json_array"
118
113
  PLAINTEXT = "plaintext"
119
114
 
120
115
 
121
- class Endpoint(str, Enum, metaclass=utils.OpenEnumMeta):
116
+ class Endpoint(str, Enum):
122
117
  CLOUD = "cloud"
123
118
  ACTIVE_GATE = "activeGate"
124
119
  MANUAL = "manual"
125
120
 
126
121
 
127
- class TelemetryType(str, Enum, metaclass=utils.OpenEnumMeta):
122
+ class TelemetryType(str, Enum):
128
123
  LOGS = "logs"
129
124
  METRICS = "metrics"
130
125
 
131
126
 
132
- class OutputDynatraceHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
127
+ class OutputDynatraceHTTPCompression(str, Enum):
133
128
  r"""Codec to use to compress the persisted data"""
134
129
 
135
130
  NONE = "none"
136
131
  GZIP = "gzip"
137
132
 
138
133
 
139
- class OutputDynatraceHTTPQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
134
+ class OutputDynatraceHTTPQueueFullBehavior(str, Enum):
140
135
  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."""
141
136
 
142
137
  BLOCK = "block"
143
138
  DROP = "drop"
144
139
 
145
140
 
146
- class OutputDynatraceHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
141
+ class OutputDynatraceHTTPMode(str, Enum):
147
142
  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."""
148
143
 
149
144
  ERROR = "error"
@@ -250,9 +245,7 @@ class OutputDynatraceHTTP(BaseModel):
250
245
  id: Optional[str] = None
251
246
  r"""Unique ID for this output"""
252
247
 
253
- type: Annotated[
254
- Optional[OutputDynatraceHTTPType], PlainValidator(validate_open_enum(False))
255
- ] = None
248
+ type: Optional[OutputDynatraceHTTPType] = None
256
249
 
257
250
  pipeline: Optional[str] = None
258
251
  r"""Pipeline to process data before sending out to this output"""
@@ -268,9 +261,7 @@ class OutputDynatraceHTTP(BaseModel):
268
261
  streamtags: Optional[List[str]] = None
269
262
  r"""Tags for filtering and grouping in @{product}"""
270
263
 
271
- method: Annotated[
272
- Optional[OutputDynatraceHTTPMethod], PlainValidator(validate_open_enum(False))
273
- ] = OutputDynatraceHTTPMethod.POST
264
+ method: Optional[OutputDynatraceHTTPMethod] = OutputDynatraceHTTPMethod.POST
274
265
  r"""The method to use when sending events"""
275
266
 
276
267
  keep_alive: Annotated[Optional[bool], pydantic.Field(alias="keepAlive")] = True
@@ -320,10 +311,7 @@ class OutputDynatraceHTTP(BaseModel):
320
311
  r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
321
312
 
322
313
  failed_request_logging_mode: Annotated[
323
- Annotated[
324
- Optional[OutputDynatraceHTTPFailedRequestLoggingMode],
325
- PlainValidator(validate_open_enum(False)),
326
- ],
314
+ Optional[OutputDynatraceHTTPFailedRequestLoggingMode],
327
315
  pydantic.Field(alias="failedRequestLoggingMode"),
328
316
  ] = OutputDynatraceHTTPFailedRequestLoggingMode.NONE
329
317
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -350,38 +338,25 @@ class OutputDynatraceHTTP(BaseModel):
350
338
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
351
339
 
352
340
  on_backpressure: Annotated[
353
- Annotated[
354
- Optional[OutputDynatraceHTTPBackpressureBehavior],
355
- PlainValidator(validate_open_enum(False)),
356
- ],
341
+ Optional[OutputDynatraceHTTPBackpressureBehavior],
357
342
  pydantic.Field(alias="onBackpressure"),
358
343
  ] = OutputDynatraceHTTPBackpressureBehavior.BLOCK
359
344
  r"""How to handle events when all receivers are exerting backpressure"""
360
345
 
361
346
  auth_type: Annotated[
362
- Annotated[
363
- Optional[OutputDynatraceHTTPAuthenticationType],
364
- PlainValidator(validate_open_enum(False)),
365
- ],
347
+ Optional[OutputDynatraceHTTPAuthenticationType],
366
348
  pydantic.Field(alias="authType"),
367
349
  ] = OutputDynatraceHTTPAuthenticationType.TOKEN
368
350
 
369
351
  format_: Annotated[
370
- Annotated[
371
- Optional[OutputDynatraceHTTPFormat],
372
- PlainValidator(validate_open_enum(False)),
373
- ],
374
- pydantic.Field(alias="format"),
352
+ Optional[OutputDynatraceHTTPFormat], pydantic.Field(alias="format")
375
353
  ] = OutputDynatraceHTTPFormat.JSON_ARRAY
376
354
  r"""How to format events before sending. Defaults to JSON. Plaintext is not currently supported."""
377
355
 
378
- endpoint: Annotated[
379
- Optional[Endpoint], PlainValidator(validate_open_enum(False))
380
- ] = Endpoint.CLOUD
356
+ endpoint: Optional[Endpoint] = Endpoint.CLOUD
381
357
 
382
358
  telemetry_type: Annotated[
383
- Annotated[Optional[TelemetryType], PlainValidator(validate_open_enum(False))],
384
- pydantic.Field(alias="telemetryType"),
359
+ Optional[TelemetryType], pydantic.Field(alias="telemetryType")
385
360
  ] = TelemetryType.LOGS
386
361
 
387
362
  total_memory_limit_kb: Annotated[
@@ -405,28 +380,18 @@ class OutputDynatraceHTTP(BaseModel):
405
380
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
406
381
 
407
382
  pq_compress: Annotated[
408
- Annotated[
409
- Optional[OutputDynatraceHTTPCompression],
410
- PlainValidator(validate_open_enum(False)),
411
- ],
412
- pydantic.Field(alias="pqCompress"),
383
+ Optional[OutputDynatraceHTTPCompression], pydantic.Field(alias="pqCompress")
413
384
  ] = OutputDynatraceHTTPCompression.NONE
414
385
  r"""Codec to use to compress the persisted data"""
415
386
 
416
387
  pq_on_backpressure: Annotated[
417
- Annotated[
418
- Optional[OutputDynatraceHTTPQueueFullBehavior],
419
- PlainValidator(validate_open_enum(False)),
420
- ],
388
+ Optional[OutputDynatraceHTTPQueueFullBehavior],
421
389
  pydantic.Field(alias="pqOnBackpressure"),
422
390
  ] = OutputDynatraceHTTPQueueFullBehavior.BLOCK
423
391
  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."""
424
392
 
425
393
  pq_mode: Annotated[
426
- Annotated[
427
- Optional[OutputDynatraceHTTPMode], PlainValidator(validate_open_enum(False))
428
- ],
429
- pydantic.Field(alias="pqMode"),
394
+ Optional[OutputDynatraceHTTPMode], pydantic.Field(alias="pqMode")
430
395
  ] = OutputDynatraceHTTPMode.ERROR
431
396
  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."""
432
397