cribl-control-plane 0.2.0rc1__py3-none-any.whl → 0.2.1rc1__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 (155) hide show
  1. cribl_control_plane/_version.py +4 -6
  2. cribl_control_plane/groups_sdk.py +11 -8
  3. cribl_control_plane/mappings.py +1185 -0
  4. cribl_control_plane/models/__init__.py +195 -33
  5. cribl_control_plane/models/authtoken.py +8 -1
  6. cribl_control_plane/models/configgroup.py +30 -2
  7. cribl_control_plane/models/createadminproductsmappingsactivatebyproductop.py +52 -0
  8. cribl_control_plane/models/createadminproductsmappingsbyproductop.py +53 -0
  9. cribl_control_plane/models/createversionundoop.py +3 -3
  10. cribl_control_plane/models/deleteadminproductsmappingsbyproductandidop.py +51 -0
  11. cribl_control_plane/models/distributedsummary.py +6 -0
  12. cribl_control_plane/models/getadminproductsmappingsbyproductandidop.py +51 -0
  13. cribl_control_plane/models/getadminproductsmappingsbyproductop.py +44 -0
  14. cribl_control_plane/models/hbcriblinfo.py +14 -3
  15. cribl_control_plane/models/heartbeatmetadata.py +3 -0
  16. cribl_control_plane/models/input.py +65 -63
  17. cribl_control_plane/models/inputappscope.py +4 -0
  18. cribl_control_plane/models/inputazureblob.py +4 -0
  19. cribl_control_plane/models/inputcollection.py +4 -0
  20. cribl_control_plane/models/inputconfluentcloud.py +8 -18
  21. cribl_control_plane/models/inputcribl.py +4 -0
  22. cribl_control_plane/models/inputcriblhttp.py +4 -0
  23. cribl_control_plane/models/inputcribllakehttp.py +4 -0
  24. cribl_control_plane/models/inputcriblmetrics.py +4 -0
  25. cribl_control_plane/models/inputcribltcp.py +4 -0
  26. cribl_control_plane/models/inputcrowdstrike.py +7 -0
  27. cribl_control_plane/models/inputdatadogagent.py +4 -0
  28. cribl_control_plane/models/inputdatagen.py +4 -0
  29. cribl_control_plane/models/inputedgeprometheus.py +12 -0
  30. cribl_control_plane/models/inputelastic.py +11 -0
  31. cribl_control_plane/models/inputeventhub.py +6 -0
  32. cribl_control_plane/models/inputexec.py +4 -0
  33. cribl_control_plane/models/inputfile.py +6 -0
  34. cribl_control_plane/models/inputfirehose.py +4 -0
  35. cribl_control_plane/models/inputgooglepubsub.py +7 -0
  36. cribl_control_plane/models/inputgrafana.py +8 -0
  37. cribl_control_plane/models/inputhttp.py +4 -0
  38. cribl_control_plane/models/inputhttpraw.py +4 -0
  39. cribl_control_plane/models/inputjournalfiles.py +4 -0
  40. cribl_control_plane/models/inputkafka.py +8 -17
  41. cribl_control_plane/models/inputkinesis.py +15 -0
  42. cribl_control_plane/models/inputkubeevents.py +4 -0
  43. cribl_control_plane/models/inputkubelogs.py +4 -0
  44. cribl_control_plane/models/inputkubemetrics.py +4 -0
  45. cribl_control_plane/models/inputloki.py +4 -0
  46. cribl_control_plane/models/inputmetrics.py +4 -0
  47. cribl_control_plane/models/inputmodeldriventelemetry.py +4 -0
  48. cribl_control_plane/models/inputmsk.py +7 -17
  49. cribl_control_plane/models/inputnetflow.py +4 -0
  50. cribl_control_plane/models/inputoffice365mgmt.py +11 -0
  51. cribl_control_plane/models/inputoffice365msgtrace.py +11 -0
  52. cribl_control_plane/models/inputoffice365service.py +11 -0
  53. cribl_control_plane/models/inputopentelemetry.py +8 -0
  54. cribl_control_plane/models/inputprometheus.py +10 -0
  55. cribl_control_plane/models/inputprometheusrw.py +4 -0
  56. cribl_control_plane/models/inputrawudp.py +4 -0
  57. cribl_control_plane/models/inputs3.py +7 -0
  58. cribl_control_plane/models/inputs3inventory.py +7 -0
  59. cribl_control_plane/models/inputsecuritylake.py +7 -0
  60. cribl_control_plane/models/inputsnmp.py +11 -0
  61. cribl_control_plane/models/inputsplunk.py +9 -0
  62. cribl_control_plane/models/inputsplunkhec.py +4 -0
  63. cribl_control_plane/models/inputsplunksearch.py +7 -0
  64. cribl_control_plane/models/inputsqs.py +9 -0
  65. cribl_control_plane/models/inputsyslog.py +8 -0
  66. cribl_control_plane/models/inputsystemmetrics.py +32 -0
  67. cribl_control_plane/models/inputsystemstate.py +4 -0
  68. cribl_control_plane/models/inputtcp.py +4 -0
  69. cribl_control_plane/models/inputtcpjson.py +4 -0
  70. cribl_control_plane/models/inputwef.py +6 -0
  71. cribl_control_plane/models/inputwindowsmetrics.py +28 -0
  72. cribl_control_plane/models/inputwineventlogs.py +8 -0
  73. cribl_control_plane/models/inputwiz.py +7 -0
  74. cribl_control_plane/models/inputwizwebhook.py +4 -0
  75. cribl_control_plane/models/inputzscalerhec.py +4 -0
  76. cribl_control_plane/models/jobinfo.py +4 -1
  77. cribl_control_plane/models/mappingruleset.py +95 -0
  78. cribl_control_plane/models/nodeprovidedinfo.py +11 -1
  79. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  80. cribl_control_plane/models/output.py +77 -72
  81. cribl_control_plane/models/outputazureblob.py +20 -0
  82. cribl_control_plane/models/outputazuredataexplorer.py +28 -0
  83. cribl_control_plane/models/outputazureeventhub.py +17 -0
  84. cribl_control_plane/models/outputazurelogs.py +13 -0
  85. cribl_control_plane/models/outputchronicle.py +13 -0
  86. cribl_control_plane/models/outputclickhouse.py +17 -0
  87. cribl_control_plane/models/outputcloudwatch.py +13 -0
  88. cribl_control_plane/models/outputconfluentcloud.py +24 -18
  89. cribl_control_plane/models/outputcriblhttp.py +15 -0
  90. cribl_control_plane/models/outputcribllake.py +21 -0
  91. cribl_control_plane/models/outputcribltcp.py +12 -0
  92. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +15 -0
  93. cribl_control_plane/models/outputdatabricks.py +411 -0
  94. cribl_control_plane/models/outputdatadog.py +30 -0
  95. cribl_control_plane/models/outputdataset.py +23 -0
  96. cribl_control_plane/models/outputdls3.py +35 -0
  97. cribl_control_plane/models/outputdynatracehttp.py +22 -0
  98. cribl_control_plane/models/outputdynatraceotlp.py +22 -0
  99. cribl_control_plane/models/outputelastic.py +18 -0
  100. cribl_control_plane/models/outputelasticcloud.py +13 -0
  101. cribl_control_plane/models/outputexabeam.py +14 -0
  102. cribl_control_plane/models/outputfilesystem.py +15 -0
  103. cribl_control_plane/models/outputgooglechronicle.py +21 -0
  104. cribl_control_plane/models/outputgooglecloudlogging.py +19 -0
  105. cribl_control_plane/models/outputgooglecloudstorage.py +28 -0
  106. cribl_control_plane/models/outputgooglepubsub.py +13 -0
  107. cribl_control_plane/models/outputgrafanacloud.py +50 -0
  108. cribl_control_plane/models/outputgraphite.py +12 -0
  109. cribl_control_plane/models/outputhoneycomb.py +13 -0
  110. cribl_control_plane/models/outputhumiohec.py +15 -0
  111. cribl_control_plane/models/outputinfluxdb.py +19 -0
  112. cribl_control_plane/models/outputkafka.py +24 -17
  113. cribl_control_plane/models/outputkinesis.py +15 -0
  114. cribl_control_plane/models/outputloki.py +20 -0
  115. cribl_control_plane/models/outputminio.py +28 -0
  116. cribl_control_plane/models/outputmsk.py +23 -17
  117. cribl_control_plane/models/outputnewrelic.py +16 -0
  118. cribl_control_plane/models/outputnewrelicevents.py +16 -0
  119. cribl_control_plane/models/outputopentelemetry.py +22 -0
  120. cribl_control_plane/models/outputprometheus.py +13 -0
  121. cribl_control_plane/models/outputring.py +2 -0
  122. cribl_control_plane/models/outputs3.py +35 -0
  123. cribl_control_plane/models/outputsecuritylake.py +29 -0
  124. cribl_control_plane/models/outputsentinel.py +15 -0
  125. cribl_control_plane/models/outputsentineloneaisiem.py +13 -0
  126. cribl_control_plane/models/outputservicenow.py +21 -0
  127. cribl_control_plane/models/outputsignalfx.py +13 -0
  128. cribl_control_plane/models/outputsns.py +13 -0
  129. cribl_control_plane/models/outputsplunk.py +15 -0
  130. cribl_control_plane/models/outputsplunkhec.py +13 -0
  131. cribl_control_plane/models/outputsplunklb.py +15 -0
  132. cribl_control_plane/models/outputsqs.py +15 -0
  133. cribl_control_plane/models/outputstatsd.py +12 -0
  134. cribl_control_plane/models/outputstatsdext.py +12 -0
  135. cribl_control_plane/models/outputsumologic.py +15 -0
  136. cribl_control_plane/models/outputsyslog.py +24 -0
  137. cribl_control_plane/models/outputtcpjson.py +12 -0
  138. cribl_control_plane/models/outputwavefront.py +13 -0
  139. cribl_control_plane/models/outputwebhook.py +23 -0
  140. cribl_control_plane/models/outputxsiam.py +13 -0
  141. cribl_control_plane/models/packinfo.py +8 -5
  142. cribl_control_plane/models/packinstallinfo.py +8 -5
  143. cribl_control_plane/models/pipeline.py +4 -4
  144. cribl_control_plane/models/routeconf.py +3 -4
  145. cribl_control_plane/models/{routecloneconf.py → rulesetid.py} +4 -4
  146. cribl_control_plane/models/runnablejobcollection.py +4 -0
  147. cribl_control_plane/models/updateadminproductsmappingsbyproductandidop.py +63 -0
  148. cribl_control_plane/models/updatepacksop.py +25 -0
  149. cribl_control_plane/models/uploadpackresponse.py +13 -0
  150. cribl_control_plane/packs.py +202 -7
  151. cribl_control_plane/pipelines.py +8 -8
  152. {cribl_control_plane-0.2.0rc1.dist-info → cribl_control_plane-0.2.1rc1.dist-info}/METADATA +44 -3
  153. {cribl_control_plane-0.2.0rc1.dist-info → cribl_control_plane-0.2.1rc1.dist-info}/RECORD +154 -143
  154. cribl_control_plane/models/appmode.py +0 -14
  155. {cribl_control_plane-0.2.0rc1.dist-info → cribl_control_plane-0.2.1rc1.dist-info}/WHEEL +0 -0
@@ -2,12 +2,19 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from cribl_control_plane.types import BaseModel
5
- from typing_extensions import TypedDict
5
+ import pydantic
6
+ from typing import Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
6
8
 
7
9
 
8
10
  class AuthTokenTypedDict(TypedDict):
9
11
  token: str
12
+ force_password_change: NotRequired[bool]
10
13
 
11
14
 
12
15
  class AuthToken(BaseModel):
13
16
  token: str
17
+
18
+ force_password_change: Annotated[
19
+ Optional[bool], pydantic.Field(alias="forcePasswordChange")
20
+ ] = None
@@ -14,6 +14,29 @@ from typing import List, Optional
14
14
  from typing_extensions import Annotated, NotRequired, TypedDict
15
15
 
16
16
 
17
+ class EstimatedIngestRate(int, Enum, metaclass=utils.OpenEnumMeta):
18
+ r"""Maximum expected volume of data ingested by the @{group}. (This setting is available only on @{group}s consisting of Cribl-managed Cribl.Cloud @{node}s.)"""
19
+
20
+ # 12 MB/sec
21
+ RATE12_MB_PER_SEC = 1024
22
+ # 24 MB/sec
23
+ RATE24_MB_PER_SEC = 2048
24
+ # 36 MB/sec
25
+ RATE36_MB_PER_SEC = 3072
26
+ # 48 MB/sec
27
+ RATE48_MB_PER_SEC = 4096
28
+ # 60 MB/sec
29
+ RATE60_MB_PER_SEC = 5120
30
+ # 84 MB/sec
31
+ RATE84_MB_PER_SEC = 7168
32
+ # 120 MB/sec
33
+ RATE120_MB_PER_SEC = 10240
34
+ # 156 MB/sec
35
+ RATE156_MB_PER_SEC = 13312
36
+ # 180 MB/sec
37
+ RATE180_MB_PER_SEC = 15360
38
+
39
+
17
40
  class GitTypedDict(TypedDict):
18
41
  commit: NotRequired[str]
19
42
  local_changes: NotRequired[float]
@@ -40,7 +63,8 @@ class ConfigGroupTypedDict(TypedDict):
40
63
  config_version: NotRequired[str]
41
64
  deploying_worker_count: NotRequired[float]
42
65
  description: NotRequired[str]
43
- estimated_ingest_rate: NotRequired[float]
66
+ estimated_ingest_rate: NotRequired[EstimatedIngestRate]
67
+ r"""Maximum expected volume of data ingested by the @{group}. (This setting is available only on @{group}s consisting of Cribl-managed Cribl.Cloud @{node}s.)"""
44
68
  git: NotRequired[GitTypedDict]
45
69
  incompatible_worker_count: NotRequired[float]
46
70
  inherits: NotRequired[str]
@@ -75,8 +99,12 @@ class ConfigGroup(BaseModel):
75
99
  description: Optional[str] = None
76
100
 
77
101
  estimated_ingest_rate: Annotated[
78
- Optional[float], pydantic.Field(alias="estimatedIngestRate")
102
+ Annotated[
103
+ Optional[EstimatedIngestRate], PlainValidator(validate_open_enum(True))
104
+ ],
105
+ pydantic.Field(alias="estimatedIngestRate"),
79
106
  ] = None
107
+ r"""Maximum expected volume of data ingested by the @{group}. (This setting is available only on @{group}s consisting of Cribl-managed Cribl.Cloud @{node}s.)"""
80
108
 
81
109
  git: Optional[Git] = None
82
110
 
@@ -0,0 +1,52 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .productscore import ProductsCore
5
+ from .rulesetid import RulesetID, RulesetIDTypedDict
6
+ from cribl_control_plane.types import BaseModel
7
+ from cribl_control_plane.utils import (
8
+ FieldMetadata,
9
+ PathParamMetadata,
10
+ RequestMetadata,
11
+ validate_open_enum,
12
+ )
13
+ from pydantic.functional_validators import PlainValidator
14
+ from typing import List, Optional
15
+ from typing_extensions import Annotated, NotRequired, TypedDict
16
+
17
+
18
+ class CreateAdminProductsMappingsActivateByProductRequestTypedDict(TypedDict):
19
+ product: ProductsCore
20
+ r"""Name of the Cribl product to activate the Mapping Ruleset for"""
21
+ ruleset_id: RulesetIDTypedDict
22
+ r"""RulesetId object"""
23
+
24
+
25
+ class CreateAdminProductsMappingsActivateByProductRequest(BaseModel):
26
+ product: Annotated[
27
+ Annotated[ProductsCore, PlainValidator(validate_open_enum(False))],
28
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
29
+ ]
30
+ r"""Name of the Cribl product to activate the Mapping Ruleset for"""
31
+
32
+ ruleset_id: Annotated[
33
+ RulesetID, FieldMetadata(request=RequestMetadata(media_type="application/json"))
34
+ ]
35
+ r"""RulesetId object"""
36
+
37
+
38
+ class CreateAdminProductsMappingsActivateByProductResponseTypedDict(TypedDict):
39
+ r"""The <code>id</code> of the Mapping Ruleset that has been successfully activated"""
40
+
41
+ count: NotRequired[int]
42
+ r"""number of items present in the items array"""
43
+ items: NotRequired[List[RulesetIDTypedDict]]
44
+
45
+
46
+ class CreateAdminProductsMappingsActivateByProductResponse(BaseModel):
47
+ r"""The <code>id</code> of the Mapping Ruleset that has been successfully activated"""
48
+
49
+ count: Optional[int] = None
50
+ r"""number of items present in the items array"""
51
+
52
+ items: Optional[List[RulesetID]] = None
@@ -0,0 +1,53 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .mappingruleset import MappingRuleset, MappingRulesetTypedDict
5
+ from .productscore import ProductsCore
6
+ from cribl_control_plane.types import BaseModel
7
+ from cribl_control_plane.utils import (
8
+ FieldMetadata,
9
+ PathParamMetadata,
10
+ RequestMetadata,
11
+ validate_open_enum,
12
+ )
13
+ from pydantic.functional_validators import PlainValidator
14
+ from typing import List, Optional
15
+ from typing_extensions import Annotated, NotRequired, TypedDict
16
+
17
+
18
+ class CreateAdminProductsMappingsByProductRequestTypedDict(TypedDict):
19
+ product: ProductsCore
20
+ r"""Name of the Cribl product to create the Mapping Ruleset for"""
21
+ mapping_ruleset: MappingRulesetTypedDict
22
+ r"""MappingRuleset object"""
23
+
24
+
25
+ class CreateAdminProductsMappingsByProductRequest(BaseModel):
26
+ product: Annotated[
27
+ Annotated[ProductsCore, PlainValidator(validate_open_enum(False))],
28
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
29
+ ]
30
+ r"""Name of the Cribl product to create the Mapping Ruleset for"""
31
+
32
+ mapping_ruleset: Annotated[
33
+ MappingRuleset,
34
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
35
+ ]
36
+ r"""MappingRuleset object"""
37
+
38
+
39
+ class CreateAdminProductsMappingsByProductResponseTypedDict(TypedDict):
40
+ r"""A list containing the newly created Mapping Ruleset objects"""
41
+
42
+ count: NotRequired[int]
43
+ r"""number of items present in the items array"""
44
+ items: NotRequired[List[MappingRulesetTypedDict]]
45
+
46
+
47
+ class CreateAdminProductsMappingsByProductResponse(BaseModel):
48
+ r"""A list containing the newly created Mapping Ruleset objects"""
49
+
50
+ count: Optional[int] = None
51
+ r"""number of items present in the items array"""
52
+
53
+ items: Optional[List[MappingRuleset]] = None
@@ -4,7 +4,7 @@ from __future__ import annotations
4
4
  from cribl_control_plane.types import BaseModel
5
5
  from cribl_control_plane.utils import FieldMetadata, QueryParamMetadata
6
6
  import pydantic
7
- from typing import List, Optional
7
+ from typing import Any, Dict, List, Optional
8
8
  from typing_extensions import Annotated, NotRequired, TypedDict
9
9
 
10
10
 
@@ -27,7 +27,7 @@ class CreateVersionUndoResponseTypedDict(TypedDict):
27
27
 
28
28
  count: NotRequired[int]
29
29
  r"""number of items present in the items array"""
30
- items: NotRequired[List[str]]
30
+ items: NotRequired[List[Dict[str, Any]]]
31
31
 
32
32
 
33
33
  class CreateVersionUndoResponse(BaseModel):
@@ -36,4 +36,4 @@ class CreateVersionUndoResponse(BaseModel):
36
36
  count: Optional[int] = None
37
37
  r"""number of items present in the items array"""
38
38
 
39
- items: Optional[List[str]] = None
39
+ items: Optional[List[Dict[str, Any]]] = None
@@ -0,0 +1,51 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .mappingruleset import MappingRuleset, MappingRulesetTypedDict
5
+ from .productscore import ProductsCore
6
+ from cribl_control_plane.types import BaseModel
7
+ from cribl_control_plane.utils import (
8
+ FieldMetadata,
9
+ PathParamMetadata,
10
+ validate_open_enum,
11
+ )
12
+ from pydantic.functional_validators import PlainValidator
13
+ from typing import List, Optional
14
+ from typing_extensions import Annotated, NotRequired, TypedDict
15
+
16
+
17
+ class DeleteAdminProductsMappingsByProductAndIDRequestTypedDict(TypedDict):
18
+ product: ProductsCore
19
+ r"""Name of the Cribl product to delete the Mapping Ruleset for"""
20
+ id: str
21
+ r"""The <code>id</code> of the Mapping Ruleset to delete."""
22
+
23
+
24
+ class DeleteAdminProductsMappingsByProductAndIDRequest(BaseModel):
25
+ product: Annotated[
26
+ Annotated[ProductsCore, PlainValidator(validate_open_enum(False))],
27
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
28
+ ]
29
+ r"""Name of the Cribl product to delete the Mapping Ruleset for"""
30
+
31
+ id: Annotated[
32
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
33
+ ]
34
+ r"""The <code>id</code> of the Mapping Ruleset to delete."""
35
+
36
+
37
+ class DeleteAdminProductsMappingsByProductAndIDResponseTypedDict(TypedDict):
38
+ r"""A list containing the deleted Mapping Ruleset objects"""
39
+
40
+ count: NotRequired[int]
41
+ r"""number of items present in the items array"""
42
+ items: NotRequired[List[MappingRulesetTypedDict]]
43
+
44
+
45
+ class DeleteAdminProductsMappingsByProductAndIDResponse(BaseModel):
46
+ r"""A list containing the deleted Mapping Ruleset objects"""
47
+
48
+ count: Optional[int] = None
49
+ r"""number of items present in the items array"""
50
+
51
+ items: Optional[List[MappingRuleset]] = None
@@ -9,7 +9,9 @@ from typing_extensions import Annotated, TypedDict
9
9
  class DistributedSummaryGroupsTypedDict(TypedDict):
10
10
  count: float
11
11
  destinations: float
12
+ packs: float
12
13
  pipelines: float
14
+ quick_connects: float
13
15
  routes: float
14
16
  sources: float
15
17
 
@@ -19,8 +21,12 @@ class DistributedSummaryGroups(BaseModel):
19
21
 
20
22
  destinations: float
21
23
 
24
+ packs: float
25
+
22
26
  pipelines: float
23
27
 
28
+ quick_connects: Annotated[float, pydantic.Field(alias="quickConnects")]
29
+
24
30
  routes: float
25
31
 
26
32
  sources: float
@@ -0,0 +1,51 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .mappingruleset import MappingRuleset, MappingRulesetTypedDict
5
+ from .productscore import ProductsCore
6
+ from cribl_control_plane.types import BaseModel
7
+ from cribl_control_plane.utils import (
8
+ FieldMetadata,
9
+ PathParamMetadata,
10
+ validate_open_enum,
11
+ )
12
+ from pydantic.functional_validators import PlainValidator
13
+ from typing import List, Optional
14
+ from typing_extensions import Annotated, NotRequired, TypedDict
15
+
16
+
17
+ class GetAdminProductsMappingsByProductAndIDRequestTypedDict(TypedDict):
18
+ product: ProductsCore
19
+ r"""Name of the Cribl product to get the Mappings for"""
20
+ id: str
21
+ r"""The <code>id</code> of the Worker Group or Edge Fleet Mapping Ruleset to get"""
22
+
23
+
24
+ class GetAdminProductsMappingsByProductAndIDRequest(BaseModel):
25
+ product: Annotated[
26
+ Annotated[ProductsCore, PlainValidator(validate_open_enum(False))],
27
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
28
+ ]
29
+ r"""Name of the Cribl product to get the Mappings for"""
30
+
31
+ id: Annotated[
32
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
33
+ ]
34
+ r"""The <code>id</code> of the Worker Group or Edge Fleet Mapping Ruleset to get"""
35
+
36
+
37
+ class GetAdminProductsMappingsByProductAndIDResponseTypedDict(TypedDict):
38
+ r"""a list of MappingRuleset objects"""
39
+
40
+ count: NotRequired[int]
41
+ r"""number of items present in the items array"""
42
+ items: NotRequired[List[MappingRulesetTypedDict]]
43
+
44
+
45
+ class GetAdminProductsMappingsByProductAndIDResponse(BaseModel):
46
+ r"""a list of MappingRuleset objects"""
47
+
48
+ count: Optional[int] = None
49
+ r"""number of items present in the items array"""
50
+
51
+ items: Optional[List[MappingRuleset]] = None
@@ -0,0 +1,44 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .mappingruleset import MappingRuleset, MappingRulesetTypedDict
5
+ from .productscore import ProductsCore
6
+ from cribl_control_plane.types import BaseModel
7
+ from cribl_control_plane.utils import (
8
+ FieldMetadata,
9
+ PathParamMetadata,
10
+ validate_open_enum,
11
+ )
12
+ from pydantic.functional_validators import PlainValidator
13
+ from typing import List, Optional
14
+ from typing_extensions import Annotated, NotRequired, TypedDict
15
+
16
+
17
+ class GetAdminProductsMappingsByProductRequestTypedDict(TypedDict):
18
+ product: ProductsCore
19
+ r"""Name of the Cribl product to list the Mapping Rulesets for"""
20
+
21
+
22
+ class GetAdminProductsMappingsByProductRequest(BaseModel):
23
+ product: Annotated[
24
+ Annotated[ProductsCore, PlainValidator(validate_open_enum(False))],
25
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
26
+ ]
27
+ r"""Name of the Cribl product to list the Mapping Rulesets for"""
28
+
29
+
30
+ class GetAdminProductsMappingsByProductResponseTypedDict(TypedDict):
31
+ r"""a list of MappingRuleset objects"""
32
+
33
+ count: NotRequired[int]
34
+ r"""number of items present in the items array"""
35
+ items: NotRequired[List[MappingRulesetTypedDict]]
36
+
37
+
38
+ class GetAdminProductsMappingsByProductResponse(BaseModel):
39
+ r"""a list of MappingRuleset objects"""
40
+
41
+ count: Optional[int] = None
42
+ r"""number of items present in the items array"""
43
+
44
+ items: Optional[List[MappingRuleset]] = None
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .appmode import AppMode
5
4
  from .hbleaderinfo import HBLeaderInfo, HBLeaderInfoTypedDict
6
5
  from .lookupversions import LookupVersions, LookupVersionsTypedDict
6
+ from cribl_control_plane import utils
7
7
  from cribl_control_plane.types import BaseModel
8
8
  from cribl_control_plane.utils import validate_open_enum
9
+ from enum import Enum
9
10
  import pydantic
10
11
  from pydantic.functional_validators import PlainValidator
11
12
  from typing import List, Optional
@@ -36,9 +37,19 @@ class Config(BaseModel):
36
37
  version: Optional[str] = None
37
38
 
38
39
 
40
+ class DistMode(str, Enum, metaclass=utils.OpenEnumMeta):
41
+ EDGE = "edge"
42
+ WORKER = "worker"
43
+ SINGLE = "single"
44
+ MASTER = "master"
45
+ MANAGED_EDGE = "managed-edge"
46
+ OUTPOST = "outpost"
47
+ SEARCH_SUPERVISOR = "search-supervisor"
48
+
49
+
39
50
  class HBCriblInfoTypedDict(TypedDict):
40
51
  config: ConfigTypedDict
41
- dist_mode: AppMode
52
+ dist_mode: DistMode
42
53
  group: str
43
54
  guid: str
44
55
  start_time: float
@@ -58,7 +69,7 @@ class HBCriblInfo(BaseModel):
58
69
  config: Config
59
70
 
60
71
  dist_mode: Annotated[
61
- Annotated[AppMode, PlainValidator(validate_open_enum(False))],
72
+ Annotated[DistMode, PlainValidator(validate_open_enum(False))],
62
73
  pydantic.Field(alias="distMode"),
63
74
  ]
64
75
 
@@ -17,6 +17,7 @@ class HeartbeatMetadataTags(BaseModel):
17
17
 
18
18
  class HeartbeatMetadataAwsTypedDict(TypedDict):
19
19
  enabled: bool
20
+ instance_id: str
20
21
  region: str
21
22
  type: str
22
23
  zone: str
@@ -26,6 +27,8 @@ class HeartbeatMetadataAwsTypedDict(TypedDict):
26
27
  class HeartbeatMetadataAws(BaseModel):
27
28
  enabled: bool
28
29
 
30
+ instance_id: Annotated[str, pydantic.Field(alias="instanceId")]
31
+
29
32
  region: str
30
33
 
31
34
  type: str
@@ -66,8 +66,10 @@ from .inputwineventlogs import InputWinEventLogs, InputWinEventLogsTypedDict
66
66
  from .inputwiz import InputWiz, InputWizTypedDict
67
67
  from .inputwizwebhook import InputWizWebhook, InputWizWebhookTypedDict
68
68
  from .inputzscalerhec import InputZscalerHec, InputZscalerHecTypedDict
69
+ from cribl_control_plane.utils import get_discriminator
70
+ from pydantic import Discriminator, Tag
69
71
  from typing import Union
70
- from typing_extensions import TypeAliasType
72
+ from typing_extensions import Annotated, TypeAliasType
71
73
 
72
74
 
73
75
  InputTypedDict = TypeAliasType(
@@ -136,67 +138,67 @@ InputTypedDict = TypeAliasType(
136
138
  )
137
139
 
138
140
 
139
- Input = TypeAliasType(
140
- "Input",
141
+ Input = Annotated[
141
142
  Union[
142
- InputDatagen,
143
- InputKubeEvents,
144
- InputCribl,
145
- InputCriblmetrics,
146
- InputKubeMetrics,
147
- InputCollection,
148
- InputSystemState,
149
- InputModelDrivenTelemetry,
150
- InputSystemMetrics,
151
- InputWindowsMetrics,
152
- InputJournalFiles,
153
- InputWinEventLogs,
154
- InputRawUDP,
155
- InputExec,
156
- InputKubeLogs,
157
- InputMetrics,
158
- InputSnmp,
159
- InputCriblTCP,
160
- InputNetflow,
161
- InputTcpjson,
162
- InputGooglePubsub,
163
- InputOffice365Service,
164
- InputWiz,
165
- InputTCP,
166
- InputFirehose,
167
- InputCriblHTTP,
168
- InputDatadogAgent,
169
- InputOffice365Mgmt,
170
- InputFile,
171
- InputSplunk,
172
- InputWef,
173
- InputAppscope,
174
- InputHTTPRaw,
175
- InputWizWebhook,
176
- InputHTTP,
177
- InputCriblLakeHTTP,
178
- InputAzureBlob,
179
- InputSqs,
180
- InputZscalerHec,
181
- InputKinesis,
182
- InputConfluentCloud,
183
- InputEventhub,
184
- InputKafka,
185
- InputElastic,
186
- InputOffice365MsgTrace,
187
- InputSplunkHec,
188
- InputLoki,
189
- InputPrometheusRw,
190
- InputPrometheus,
191
- InputCrowdstrike,
192
- InputEdgePrometheus,
193
- InputOpenTelemetry,
194
- InputS3,
195
- InputSecurityLake,
196
- InputMsk,
197
- InputS3Inventory,
198
- InputSplunkSearch,
199
- InputSyslog,
200
- InputGrafana,
143
+ Annotated[InputCollection, Tag("collection")],
144
+ Annotated[InputKafka, Tag("kafka")],
145
+ Annotated[InputMsk, Tag("msk")],
146
+ Annotated[InputHTTP, Tag("http")],
147
+ Annotated[InputSplunk, Tag("splunk")],
148
+ Annotated[InputSplunkSearch, Tag("splunk_search")],
149
+ Annotated[InputSplunkHec, Tag("splunk_hec")],
150
+ Annotated[InputAzureBlob, Tag("azure_blob")],
151
+ Annotated[InputElastic, Tag("elastic")],
152
+ Annotated[InputConfluentCloud, Tag("confluent_cloud")],
153
+ Annotated[InputGrafana, Tag("grafana")],
154
+ Annotated[InputLoki, Tag("loki")],
155
+ Annotated[InputPrometheusRw, Tag("prometheus_rw")],
156
+ Annotated[InputPrometheus, Tag("prometheus")],
157
+ Annotated[InputEdgePrometheus, Tag("edge_prometheus")],
158
+ Annotated[InputOffice365Mgmt, Tag("office365_mgmt")],
159
+ Annotated[InputOffice365Service, Tag("office365_service")],
160
+ Annotated[InputOffice365MsgTrace, Tag("office365_msg_trace")],
161
+ Annotated[InputEventhub, Tag("eventhub")],
162
+ Annotated[InputExec, Tag("exec")],
163
+ Annotated[InputFirehose, Tag("firehose")],
164
+ Annotated[InputGooglePubsub, Tag("google_pubsub")],
165
+ Annotated[InputCribl, Tag("cribl")],
166
+ Annotated[InputCriblTCP, Tag("cribl_tcp")],
167
+ Annotated[InputCriblHTTP, Tag("cribl_http")],
168
+ Annotated[InputCriblLakeHTTP, Tag("cribl_lake_http")],
169
+ Annotated[InputTcpjson, Tag("tcpjson")],
170
+ Annotated[InputSystemMetrics, Tag("system_metrics")],
171
+ Annotated[InputSystemState, Tag("system_state")],
172
+ Annotated[InputKubeMetrics, Tag("kube_metrics")],
173
+ Annotated[InputKubeLogs, Tag("kube_logs")],
174
+ Annotated[InputKubeEvents, Tag("kube_events")],
175
+ Annotated[InputWindowsMetrics, Tag("windows_metrics")],
176
+ Annotated[InputCrowdstrike, Tag("crowdstrike")],
177
+ Annotated[InputDatadogAgent, Tag("datadog_agent")],
178
+ Annotated[InputDatagen, Tag("datagen")],
179
+ Annotated[InputHTTPRaw, Tag("http_raw")],
180
+ Annotated[InputKinesis, Tag("kinesis")],
181
+ Annotated[InputCriblmetrics, Tag("criblmetrics")],
182
+ Annotated[InputMetrics, Tag("metrics")],
183
+ Annotated[InputS3, Tag("s3")],
184
+ Annotated[InputS3Inventory, Tag("s3_inventory")],
185
+ Annotated[InputSnmp, Tag("snmp")],
186
+ Annotated[InputOpenTelemetry, Tag("open_telemetry")],
187
+ Annotated[InputModelDrivenTelemetry, Tag("model_driven_telemetry")],
188
+ Annotated[InputSqs, Tag("sqs")],
189
+ Annotated[InputSyslog, Tag("syslog")],
190
+ Annotated[InputFile, Tag("file")],
191
+ Annotated[InputTCP, Tag("tcp")],
192
+ Annotated[InputAppscope, Tag("appscope")],
193
+ Annotated[InputWef, Tag("wef")],
194
+ Annotated[InputWinEventLogs, Tag("win_event_logs")],
195
+ Annotated[InputRawUDP, Tag("raw_udp")],
196
+ Annotated[InputJournalFiles, Tag("journal_files")],
197
+ Annotated[InputWiz, Tag("wiz")],
198
+ Annotated[InputWizWebhook, Tag("wiz_webhook")],
199
+ Annotated[InputNetflow, Tag("netflow")],
200
+ Annotated[InputSecurityLake, Tag("security_lake")],
201
+ Annotated[InputZscalerHec, Tag("zscaler_hec")],
201
202
  ],
202
- )
203
+ Discriminator(lambda m: get_discriminator(m, "type", "type")),
204
+ ]
@@ -29,14 +29,18 @@ class InputAppscopeConnection(BaseModel):
29
29
  class InputAppscopeMode(str, Enum, metaclass=utils.OpenEnumMeta):
30
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
31
 
32
+ # Smart
32
33
  SMART = "smart"
34
+ # Always On
33
35
  ALWAYS = "always"
34
36
 
35
37
 
36
38
  class InputAppscopeCompression(str, Enum, metaclass=utils.OpenEnumMeta):
37
39
  r"""Codec to use to compress the persisted data"""
38
40
 
41
+ # None
39
42
  NONE = "none"
43
+ # Gzip
40
44
  GZIP = "gzip"
41
45
 
42
46
 
@@ -29,14 +29,18 @@ class InputAzureBlobConnection(BaseModel):
29
29
  class InputAzureBlobMode(str, Enum, metaclass=utils.OpenEnumMeta):
30
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
31
 
32
+ # Smart
32
33
  SMART = "smart"
34
+ # Always On
33
35
  ALWAYS = "always"
34
36
 
35
37
 
36
38
  class InputAzureBlobCompression(str, Enum, metaclass=utils.OpenEnumMeta):
37
39
  r"""Codec to use to compress the persisted data"""
38
40
 
41
+ # None
39
42
  NONE = "none"
43
+ # Gzip
40
44
  GZIP = "gzip"
41
45
 
42
46
 
@@ -29,14 +29,18 @@ class InputCollectionConnection(BaseModel):
29
29
  class InputCollectionMode(str, Enum, metaclass=utils.OpenEnumMeta):
30
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
31
 
32
+ # Smart
32
33
  SMART = "smart"
34
+ # Always On
33
35
  ALWAYS = "always"
34
36
 
35
37
 
36
38
  class InputCollectionCompression(str, Enum, metaclass=utils.OpenEnumMeta):
37
39
  r"""Codec to use to compress the persisted data"""
38
40
 
41
+ # None
39
42
  NONE = "none"
43
+ # Gzip
40
44
  GZIP = "gzip"
41
45
 
42
46