cribl-control-plane 0.4.0b23__py3-none-any.whl → 0.5.0b3__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.
Files changed (229) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/collectors_sdk.py +993 -0
  3. cribl_control_plane/models/__init__.py +2161 -734
  4. cribl_control_plane/models/configgroup.py +3 -0
  5. cribl_control_plane/models/countedsavedjob.py +20 -0
  6. cribl_control_plane/models/createsavedjobop.py +30 -0
  7. cribl_control_plane/models/deletesavedjobbyidop.py +42 -0
  8. cribl_control_plane/models/functionaggregatemetrics.py +7 -144
  9. cribl_control_plane/models/functionaggregation.py +7 -110
  10. cribl_control_plane/models/functionautotimestamp.py +7 -111
  11. cribl_control_plane/models/functioncef.py +6 -51
  12. cribl_control_plane/models/functionchain.py +6 -12
  13. cribl_control_plane/models/functionclone.py +7 -13
  14. cribl_control_plane/models/functioncode.py +8 -35
  15. cribl_control_plane/models/functioncomment.py +6 -12
  16. cribl_control_plane/models/functionconfschemaaggregatemetrics.py +153 -0
  17. cribl_control_plane/models/functionconfschemaaggregation.py +114 -0
  18. cribl_control_plane/models/functionconfschemaautotimestamp.py +116 -0
  19. cribl_control_plane/models/functionconfschemacef.py +83 -0
  20. cribl_control_plane/models/functionconfschemachain.py +16 -0
  21. cribl_control_plane/models/functionconfschemaclone.py +16 -0
  22. cribl_control_plane/models/functionconfschemacode.py +38 -0
  23. cribl_control_plane/models/functionconfschemacomment.py +16 -0
  24. cribl_control_plane/models/functionconfschemadistinct.py +41 -0
  25. cribl_control_plane/models/functionconfschemadnslookup.py +193 -0
  26. cribl_control_plane/models/functionconfschemadrop.py +13 -0
  27. cribl_control_plane/models/functionconfschemadropdimensions.py +31 -0
  28. cribl_control_plane/models/functionconfschemadynamicsampling.py +67 -0
  29. cribl_control_plane/models/functionconfschemaeval.py +44 -0
  30. cribl_control_plane/models/functionconfschemaeventbreaker.py +51 -0
  31. cribl_control_plane/models/functionconfschemaeventstats.py +34 -0
  32. cribl_control_plane/models/functionconfschemaexternaldata.py +13 -0
  33. cribl_control_plane/models/functionconfschemaflatten.py +31 -0
  34. cribl_control_plane/models/functionconfschemafoldkeys.py +31 -0
  35. cribl_control_plane/models/functionconfschemagenstats.py +14 -0
  36. cribl_control_plane/models/functionconfschemageoip.py +66 -0
  37. cribl_control_plane/models/functionconfschemagrok.py +38 -0
  38. cribl_control_plane/models/functionconfschemahandlebar.py +56 -0
  39. cribl_control_plane/models/functionconfschemajoin.py +55 -0
  40. cribl_control_plane/models/functionconfschemajsonunroll.py +21 -0
  41. cribl_control_plane/models/functionconfschemalakeexport.py +44 -0
  42. cribl_control_plane/models/functionconfschemalimit.py +16 -0
  43. cribl_control_plane/models/functionconfschemalocalsearchdatatypeparser.py +17 -0
  44. cribl_control_plane/models/functionconfschemalocalsearchrulesetrunner.py +40 -0
  45. cribl_control_plane/models/functionconfschemalookup.py +92 -0
  46. cribl_control_plane/models/functionconfschemamask.py +63 -0
  47. cribl_control_plane/models/functionconfschemamvexpand.py +76 -0
  48. cribl_control_plane/models/functionconfschemamvpull.py +45 -0
  49. cribl_control_plane/models/functionconfschemanotificationpolicies.py +129 -0
  50. cribl_control_plane/models/functionconfschemanotifications.py +26 -0
  51. cribl_control_plane/models/functionconfschemanotify.py +149 -0
  52. cribl_control_plane/models/functionconfschemanumerify.py +63 -0
  53. cribl_control_plane/models/functionconfschemaotlplogs.py +24 -0
  54. cribl_control_plane/models/functionconfschemaotlpmetrics.py +61 -0
  55. cribl_control_plane/models/functionconfschemaotlptraces.py +54 -0
  56. cribl_control_plane/models/functionconfschemapack.py +24 -0
  57. cribl_control_plane/models/functionconfschemapivot.py +31 -0
  58. cribl_control_plane/models/functionconfschemapublishmetrics.py +98 -0
  59. cribl_control_plane/models/functionconfschemaredis.py +121 -0
  60. cribl_control_plane/models/functionconfschemaregexextract.py +55 -0
  61. cribl_control_plane/models/functionconfschemaregexfilter.py +38 -0
  62. cribl_control_plane/models/functionconfschemarename.py +49 -0
  63. cribl_control_plane/models/functionconfschemarollupmetrics.py +57 -0
  64. cribl_control_plane/models/functionconfschemasampling.py +32 -0
  65. cribl_control_plane/models/functionconfschemasend.py +84 -0
  66. cribl_control_plane/models/functionconfschemasensitivedatascanner.py +75 -0
  67. cribl_control_plane/models/functionconfschemaserde.py +105 -0
  68. cribl_control_plane/models/functionconfschemaserialize.py +78 -0
  69. cribl_control_plane/models/functionconfschemasidlookup.py +34 -0
  70. cribl_control_plane/models/functionconfschemasnmptrapserialize.py +92 -0
  71. cribl_control_plane/models/functionconfschemasort.py +41 -0
  72. cribl_control_plane/models/functionconfschemastore.py +75 -0
  73. cribl_control_plane/models/functionconfschemasuppress.py +57 -0
  74. cribl_control_plane/models/functionconfschematee.py +32 -0
  75. cribl_control_plane/models/functionconfschematrimtimestamp.py +16 -0
  76. cribl_control_plane/models/functionconfschemaunion.py +22 -0
  77. cribl_control_plane/models/functionconfschemaunroll.py +22 -0
  78. cribl_control_plane/models/functionconfschemawindow.py +40 -0
  79. cribl_control_plane/models/functionconfschemaxmlunroll.py +34 -0
  80. cribl_control_plane/models/functiondistinct.py +7 -37
  81. cribl_control_plane/models/functiondnslookup.py +7 -188
  82. cribl_control_plane/models/functiondrop.py +8 -12
  83. cribl_control_plane/models/functiondropdimensions.py +7 -25
  84. cribl_control_plane/models/functiondynamicsampling.py +6 -58
  85. cribl_control_plane/models/functioneval.py +9 -43
  86. cribl_control_plane/models/functioneventbreaker.py +6 -40
  87. cribl_control_plane/models/functioneventstats.py +7 -30
  88. cribl_control_plane/models/functionexternaldata.py +6 -10
  89. cribl_control_plane/models/functionflatten.py +7 -28
  90. cribl_control_plane/models/functionfoldkeys.py +6 -26
  91. cribl_control_plane/models/functiongenstats.py +7 -11
  92. cribl_control_plane/models/functiongeoip.py +7 -58
  93. cribl_control_plane/models/functiongrok.py +9 -35
  94. cribl_control_plane/models/functionhandlebar.py +6 -49
  95. cribl_control_plane/models/functionjoin.py +9 -52
  96. cribl_control_plane/models/functionjsonunroll.py +6 -17
  97. cribl_control_plane/models/functionlakeexport.py +6 -39
  98. cribl_control_plane/models/functionlimit.py +6 -12
  99. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +6 -12
  100. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +7 -34
  101. cribl_control_plane/models/functionlookup.py +7 -86
  102. cribl_control_plane/models/functionmask.py +9 -61
  103. cribl_control_plane/models/functionmvexpand.py +7 -66
  104. cribl_control_plane/models/functionmvpull.py +6 -36
  105. cribl_control_plane/models/functionnotificationpolicies.py +8 -125
  106. cribl_control_plane/models/functionnotifications.py +6 -22
  107. cribl_control_plane/models/functionnotify.py +6 -133
  108. cribl_control_plane/models/functionnumerify.py +7 -57
  109. cribl_control_plane/models/functionotlplogs.py +6 -19
  110. cribl_control_plane/models/functionotlpmetrics.py +7 -56
  111. cribl_control_plane/models/functionotlptraces.py +6 -48
  112. cribl_control_plane/models/functionpack.py +9 -20
  113. cribl_control_plane/models/functionpivot.py +7 -23
  114. cribl_control_plane/models/functionpublishmetrics.py +7 -91
  115. cribl_control_plane/models/functionredis.py +7 -111
  116. cribl_control_plane/models/functionregexextract.py +7 -50
  117. cribl_control_plane/models/functionregexfilter.py +7 -33
  118. cribl_control_plane/models/functionrename.py +7 -45
  119. cribl_control_plane/models/functionrollupmetrics.py +7 -52
  120. cribl_control_plane/models/functionsampling.py +7 -28
  121. cribl_control_plane/models/functionsend.py +8 -80
  122. cribl_control_plane/models/functionsensitivedatascanner.py +7 -66
  123. cribl_control_plane/models/functionserde.py +6 -98
  124. cribl_control_plane/models/functionserialize.py +7 -72
  125. cribl_control_plane/models/functionsidlookup.py +7 -31
  126. cribl_control_plane/models/functionsnmptrapserialize.py +6 -81
  127. cribl_control_plane/models/functionsort.py +8 -36
  128. cribl_control_plane/models/functionstore.py +6 -69
  129. cribl_control_plane/models/functionsuppress.py +6 -52
  130. cribl_control_plane/models/functiontee.py +6 -30
  131. cribl_control_plane/models/functiontrimtimestamp.py +6 -12
  132. cribl_control_plane/models/functionunion.py +9 -20
  133. cribl_control_plane/models/functionunroll.py +6 -17
  134. cribl_control_plane/models/functionwindow.py +7 -34
  135. cribl_control_plane/models/functionxmlunroll.py +6 -29
  136. cribl_control_plane/models/getsavedjobbyidop.py +33 -0
  137. cribl_control_plane/models/getsavedjobop.py +40 -0
  138. cribl_control_plane/models/groupcreaterequest.py +3 -0
  139. cribl_control_plane/models/heartbeatmetadata.py +42 -0
  140. cribl_control_plane/models/input.py +1 -1
  141. cribl_control_plane/models/inputedgeprometheus.py +11 -11
  142. cribl_control_plane/models/inputprometheus.py +23 -18
  143. cribl_control_plane/models/nodeprovidedinfo.py +42 -0
  144. cribl_control_plane/models/output.py +15 -9
  145. cribl_control_plane/models/outputclickhouse.py +31 -0
  146. cribl_control_plane/models/outputcriblhttp.py +7 -0
  147. cribl_control_plane/models/outputcriblsearchengine.py +655 -0
  148. cribl_control_plane/models/outputnetflow.py +16 -2
  149. cribl_control_plane/models/pipeline.py +52 -4
  150. cribl_control_plane/models/pipelinefunctionaggregatemetrics.py +195 -0
  151. cribl_control_plane/models/pipelinefunctionaggregation.py +159 -0
  152. cribl_control_plane/models/pipelinefunctionautotimestamp.py +56 -0
  153. cribl_control_plane/models/pipelinefunctioncef.py +96 -0
  154. cribl_control_plane/models/pipelinefunctionchain.py +62 -0
  155. cribl_control_plane/models/pipelinefunctionclone.py +56 -0
  156. cribl_control_plane/models/pipelinefunctioncode.py +56 -0
  157. cribl_control_plane/models/pipelinefunctioncomment.py +56 -0
  158. cribl_control_plane/models/pipelinefunctionconf.py +343 -46
  159. cribl_control_plane/models/pipelinefunctionconf_input.py +353 -0
  160. cribl_control_plane/models/pipelinefunctiondistinct.py +86 -0
  161. cribl_control_plane/models/pipelinefunctiondnslookup.py +56 -0
  162. cribl_control_plane/models/pipelinefunctiondrop.py +56 -0
  163. cribl_control_plane/models/pipelinefunctiondropdimensions.py +74 -0
  164. cribl_control_plane/models/pipelinefunctiondynamicsampling.py +111 -0
  165. cribl_control_plane/models/pipelinefunctioneval.py +56 -0
  166. cribl_control_plane/models/pipelinefunctioneventbreaker.py +95 -0
  167. cribl_control_plane/models/pipelinefunctioneventstats.py +79 -0
  168. cribl_control_plane/models/pipelinefunctionexternaldata.py +56 -0
  169. cribl_control_plane/models/pipelinefunctionflatten.py +56 -0
  170. cribl_control_plane/models/pipelinefunctionfoldkeys.py +56 -0
  171. cribl_control_plane/models/pipelinefunctiongenstats.py +56 -0
  172. cribl_control_plane/models/pipelinefunctiongeoip.py +109 -0
  173. cribl_control_plane/models/pipelinefunctiongrok.py +83 -0
  174. cribl_control_plane/models/pipelinefunctionhandlebar.py +99 -0
  175. cribl_control_plane/models/pipelinefunctionjoin.py +100 -0
  176. cribl_control_plane/models/pipelinefunctionjsonunroll.py +67 -0
  177. cribl_control_plane/models/pipelinefunctionlakeexport.py +89 -0
  178. cribl_control_plane/models/pipelinefunctionlimit.py +56 -0
  179. cribl_control_plane/models/pipelinefunctionlocalsearchdatatypeparser.py +62 -0
  180. cribl_control_plane/models/pipelinefunctionlocalsearchrulesetrunner.py +56 -0
  181. cribl_control_plane/models/pipelinefunctionlookup.py +136 -0
  182. cribl_control_plane/models/pipelinefunctionmask.py +108 -0
  183. cribl_control_plane/models/pipelinefunctionmvexpand.py +116 -0
  184. cribl_control_plane/models/pipelinefunctionmvpull.py +86 -0
  185. cribl_control_plane/models/pipelinefunctionnotificationpolicies.py +56 -0
  186. cribl_control_plane/models/pipelinefunctionnotifications.py +72 -0
  187. cribl_control_plane/models/pipelinefunctionnotify.py +189 -0
  188. cribl_control_plane/models/pipelinefunctionnumerify.py +56 -0
  189. cribl_control_plane/models/pipelinefunctionotlplogs.py +56 -0
  190. cribl_control_plane/models/pipelinefunctionotlpmetrics.py +56 -0
  191. cribl_control_plane/models/pipelinefunctionotlptraces.py +56 -0
  192. cribl_control_plane/models/pipelinefunctionpack.py +67 -0
  193. cribl_control_plane/models/pipelinefunctionpivot.py +72 -0
  194. cribl_control_plane/models/pipelinefunctionpublishmetrics.py +56 -0
  195. cribl_control_plane/models/pipelinefunctionredis.py +165 -0
  196. cribl_control_plane/models/pipelinefunctionregexextract.py +100 -0
  197. cribl_control_plane/models/pipelinefunctionregexfilter.py +56 -0
  198. cribl_control_plane/models/pipelinefunctionrename.py +56 -0
  199. cribl_control_plane/models/pipelinefunctionrollupmetrics.py +56 -0
  200. cribl_control_plane/models/pipelinefunctionsampling.py +56 -0
  201. cribl_control_plane/models/pipelinefunctionsend.py +128 -0
  202. cribl_control_plane/models/pipelinefunctionsensitivedatascanner.py +120 -0
  203. cribl_control_plane/models/pipelinefunctionserde.py +149 -0
  204. cribl_control_plane/models/pipelinefunctionserialize.py +122 -0
  205. cribl_control_plane/models/pipelinefunctionsidlookup.py +56 -0
  206. cribl_control_plane/models/pipelinefunctionsnmptrapserialize.py +56 -0
  207. cribl_control_plane/models/pipelinefunctionsort.py +84 -0
  208. cribl_control_plane/models/pipelinefunctionstore.py +120 -0
  209. cribl_control_plane/models/pipelinefunctionsuppress.py +102 -0
  210. cribl_control_plane/models/pipelinefunctiontee.py +77 -0
  211. cribl_control_plane/models/pipelinefunctiontrimtimestamp.py +56 -0
  212. cribl_control_plane/models/pipelinefunctionunion.py +67 -0
  213. cribl_control_plane/models/pipelinefunctionunroll.py +67 -0
  214. cribl_control_plane/models/pipelinefunctionwindow.py +83 -0
  215. cribl_control_plane/models/pipelinefunctionxmlunroll.py +79 -0
  216. cribl_control_plane/models/runnablejobcollection.py +11 -10
  217. cribl_control_plane/models/runnablejobexecutor.py +8 -8
  218. cribl_control_plane/models/savedjob.py +26 -0
  219. cribl_control_plane/models/savedjobcollection.py +411 -0
  220. cribl_control_plane/models/savedjobexecutor.py +301 -0
  221. cribl_control_plane/models/savedjobscheduledsearch.py +278 -0
  222. cribl_control_plane/models/updatepipelinebyidop.py +4 -3
  223. cribl_control_plane/models/updatesavedjobbyidop.py +42 -0
  224. cribl_control_plane/pipelines.py +16 -16
  225. cribl_control_plane/sdk.py +4 -0
  226. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/METADATA +10 -2
  227. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/RECORD +229 -88
  228. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/WHEEL +0 -0
  229. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,136 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import Any, List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class PipelineFunctionLookupID(str, Enum):
12
+ r"""Function ID"""
13
+
14
+ LOOKUP = "lookup"
15
+
16
+
17
+ class PipelineFunctionLookupInFieldTypedDict(TypedDict):
18
+ event_field: str
19
+ r"""Field name as it appears in events"""
20
+ lookup_field: NotRequired[str]
21
+ r"""Optional: The field name as it appears in the lookup file. Defaults to event field name"""
22
+
23
+
24
+ class PipelineFunctionLookupInField(BaseModel):
25
+ event_field: Annotated[str, pydantic.Field(alias="eventField")]
26
+ r"""Field name as it appears in events"""
27
+
28
+ lookup_field: Annotated[Optional[str], pydantic.Field(alias="lookupField")] = None
29
+ r"""Optional: The field name as it appears in the lookup file. Defaults to event field name"""
30
+
31
+
32
+ class PipelineFunctionLookupOutFieldTypedDict(TypedDict):
33
+ lookup_field: str
34
+ r"""The field name as it appears in the lookup file"""
35
+ event_field: NotRequired[str]
36
+ r"""Optional: Field name to add to event. Defaults to lookup field name."""
37
+ default_value: NotRequired[str]
38
+ r"""Optional: Value to assign if lookup entry is not found"""
39
+
40
+
41
+ class PipelineFunctionLookupOutField(BaseModel):
42
+ lookup_field: Annotated[str, pydantic.Field(alias="lookupField")]
43
+ r"""The field name as it appears in the lookup file"""
44
+
45
+ event_field: Annotated[Optional[str], pydantic.Field(alias="eventField")] = None
46
+ r"""Optional: Field name to add to event. Defaults to lookup field name."""
47
+
48
+ default_value: Annotated[Optional[str], pydantic.Field(alias="defaultValue")] = None
49
+ r"""Optional: Value to assign if lookup entry is not found"""
50
+
51
+
52
+ class PipelineFunctionLookupConfTypedDict(TypedDict):
53
+ file: str
54
+ r"""Path to the lookup file. Reference environment variables via $. Example: $HOME/file.csv"""
55
+ db_lookup: NotRequired[bool]
56
+ r"""Enable to use a disk-based lookup. This option displays only the settings relevant to disk-based mode and hides those for in-memory lookups."""
57
+ match_mode: NotRequired[Any]
58
+ match_type: NotRequired[Any]
59
+ reload_period_sec: NotRequired[Any]
60
+ in_fields: NotRequired[List[PipelineFunctionLookupInFieldTypedDict]]
61
+ r"""Fields that should be used to key into the lookup table"""
62
+ out_fields: NotRequired[List[PipelineFunctionLookupOutFieldTypedDict]]
63
+ r"""Fields to add to events after matching lookup. Defaults to all if not specified."""
64
+ add_to_event: NotRequired[bool]
65
+ r"""Add the looked-up values to _raw, as key=value pairs"""
66
+ ignore_case: NotRequired[Any]
67
+
68
+
69
+ class PipelineFunctionLookupConf(BaseModel):
70
+ file: str
71
+ r"""Path to the lookup file. Reference environment variables via $. Example: $HOME/file.csv"""
72
+
73
+ db_lookup: Annotated[Optional[bool], pydantic.Field(alias="dbLookup")] = False
74
+ r"""Enable to use a disk-based lookup. This option displays only the settings relevant to disk-based mode and hides those for in-memory lookups."""
75
+
76
+ match_mode: Annotated[Optional[Any], pydantic.Field(alias="matchMode")] = None
77
+
78
+ match_type: Annotated[Optional[Any], pydantic.Field(alias="matchType")] = None
79
+
80
+ reload_period_sec: Annotated[
81
+ Optional[Any], pydantic.Field(alias="reloadPeriodSec")
82
+ ] = None
83
+
84
+ in_fields: Annotated[
85
+ Optional[List[PipelineFunctionLookupInField]], pydantic.Field(alias="inFields")
86
+ ] = None
87
+ r"""Fields that should be used to key into the lookup table"""
88
+
89
+ out_fields: Annotated[
90
+ Optional[List[PipelineFunctionLookupOutField]],
91
+ pydantic.Field(alias="outFields"),
92
+ ] = None
93
+ r"""Fields to add to events after matching lookup. Defaults to all if not specified."""
94
+
95
+ add_to_event: Annotated[Optional[bool], pydantic.Field(alias="addToEvent")] = False
96
+ r"""Add the looked-up values to _raw, as key=value pairs"""
97
+
98
+ ignore_case: Annotated[Optional[Any], pydantic.Field(alias="ignoreCase")] = None
99
+
100
+
101
+ class PipelineFunctionLookupTypedDict(TypedDict):
102
+ id: PipelineFunctionLookupID
103
+ r"""Function ID"""
104
+ conf: PipelineFunctionLookupConfTypedDict
105
+ filter_: NotRequired[str]
106
+ r"""Filter that selects data to be fed through this Function"""
107
+ description: NotRequired[str]
108
+ r"""Simple description of this step"""
109
+ disabled: NotRequired[bool]
110
+ r"""If true, data will not be pushed through this function"""
111
+ final: NotRequired[bool]
112
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
113
+ group_id: NotRequired[str]
114
+ r"""Group ID"""
115
+
116
+
117
+ class PipelineFunctionLookup(BaseModel):
118
+ id: PipelineFunctionLookupID
119
+ r"""Function ID"""
120
+
121
+ conf: PipelineFunctionLookupConf
122
+
123
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
124
+ r"""Filter that selects data to be fed through this Function"""
125
+
126
+ description: Optional[str] = None
127
+ r"""Simple description of this step"""
128
+
129
+ disabled: Optional[bool] = None
130
+ r"""If true, data will not be pushed through this function"""
131
+
132
+ final: Optional[bool] = None
133
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
134
+
135
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
136
+ r"""Group ID"""
@@ -0,0 +1,108 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class PipelineFunctionMaskID(str, Enum):
12
+ r"""Function ID"""
13
+
14
+ MASK = "mask"
15
+
16
+
17
+ class PipelineFunctionMaskRuleTypedDict(TypedDict):
18
+ match_regex: str
19
+ r"""Pattern to replace. Use /g to replace all matches."""
20
+ replace_expr: NotRequired[str]
21
+ r"""A JavaScript expression or literal to replace the matching content. Capturing groups can be referenced as g1, g2, and so on, and event fields as event.<fieldName>."""
22
+ disabled: NotRequired[bool]
23
+ r"""Set to No to disable the evaluation of an individual rule"""
24
+
25
+
26
+ class PipelineFunctionMaskRule(BaseModel):
27
+ match_regex: Annotated[str, pydantic.Field(alias="matchRegex")]
28
+ r"""Pattern to replace. Use /g to replace all matches."""
29
+
30
+ replace_expr: Annotated[Optional[str], pydantic.Field(alias="replaceExpr")] = "''"
31
+ r"""A JavaScript expression or literal to replace the matching content. Capturing groups can be referenced as g1, g2, and so on, and event fields as event.<fieldName>."""
32
+
33
+ disabled: Optional[bool] = False
34
+ r"""Set to No to disable the evaluation of an individual rule"""
35
+
36
+
37
+ class PipelineFunctionMaskFlagTypedDict(TypedDict):
38
+ value: str
39
+ r"""JavaScript expression to compute the value (can be constant)"""
40
+ name: NotRequired[str]
41
+
42
+
43
+ class PipelineFunctionMaskFlag(BaseModel):
44
+ value: str
45
+ r"""JavaScript expression to compute the value (can be constant)"""
46
+
47
+ name: Optional[str] = None
48
+
49
+
50
+ class PipelineFunctionMaskConfTypedDict(TypedDict):
51
+ rules: List[PipelineFunctionMaskRuleTypedDict]
52
+ fields: NotRequired[List[str]]
53
+ r"""Fields on which to apply the masking rules. Supports * wildcards, except when used on internal fields."""
54
+ depth: NotRequired[int]
55
+ r"""Depth to which the Mask Function will search for fields to mask"""
56
+ flags: NotRequired[List[PipelineFunctionMaskFlagTypedDict]]
57
+ r"""Fields to evaluate if one or more masking rules are matched"""
58
+
59
+
60
+ class PipelineFunctionMaskConf(BaseModel):
61
+ rules: List[PipelineFunctionMaskRule]
62
+
63
+ fields: Optional[List[str]] = None
64
+ r"""Fields on which to apply the masking rules. Supports * wildcards, except when used on internal fields."""
65
+
66
+ depth: Optional[int] = 5
67
+ r"""Depth to which the Mask Function will search for fields to mask"""
68
+
69
+ flags: Optional[List[PipelineFunctionMaskFlag]] = None
70
+ r"""Fields to evaluate if one or more masking rules are matched"""
71
+
72
+
73
+ class PipelineFunctionMaskTypedDict(TypedDict):
74
+ id: PipelineFunctionMaskID
75
+ r"""Function ID"""
76
+ conf: PipelineFunctionMaskConfTypedDict
77
+ filter_: NotRequired[str]
78
+ r"""Filter that selects data to be fed through this Function"""
79
+ description: NotRequired[str]
80
+ r"""Simple description of this step"""
81
+ disabled: NotRequired[bool]
82
+ r"""If true, data will not be pushed through this function"""
83
+ final: NotRequired[bool]
84
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
85
+ group_id: NotRequired[str]
86
+ r"""Group ID"""
87
+
88
+
89
+ class PipelineFunctionMask(BaseModel):
90
+ id: PipelineFunctionMaskID
91
+ r"""Function ID"""
92
+
93
+ conf: PipelineFunctionMaskConf
94
+
95
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
96
+ r"""Filter that selects data to be fed through this Function"""
97
+
98
+ description: Optional[str] = None
99
+ r"""Simple description of this step"""
100
+
101
+ disabled: Optional[bool] = None
102
+ r"""If true, data will not be pushed through this function"""
103
+
104
+ final: Optional[bool] = None
105
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
106
+
107
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
108
+ r"""Group ID"""
@@ -0,0 +1,116 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane import models, utils
5
+ from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
7
+ from enum import Enum
8
+ import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class PipelineFunctionMvExpandID(str, Enum):
16
+ r"""Function ID"""
17
+
18
+ MV_EXPAND = "mv_expand"
19
+
20
+
21
+ class PipelineFunctionMvExpandBagExpansionMode(str, Enum, metaclass=utils.OpenEnumMeta):
22
+ r"""decides if bag-values are expanded to bags or arrays"""
23
+
24
+ # Store as object
25
+ BAG = "bag"
26
+ # Store as array
27
+ ARRAY = "array"
28
+
29
+
30
+ class PipelineFunctionMvExpandConfTypedDict(TypedDict):
31
+ source_fields: List[str]
32
+ r"""Array of property-/field-names to expand"""
33
+ target_names: NotRequired[List[str]]
34
+ r"""stores the value as new target field name"""
35
+ row_limit: NotRequired[float]
36
+ r"""max. number of rows generated out of every source events"""
37
+ item_index_name: NotRequired[str]
38
+ r"""name of an optional index property generated into the output"""
39
+ bag_expansion_mode: NotRequired[PipelineFunctionMvExpandBagExpansionMode]
40
+ r"""decides if bag-values are expanded to bags or arrays"""
41
+
42
+
43
+ class PipelineFunctionMvExpandConf(BaseModel):
44
+ source_fields: Annotated[List[str], pydantic.Field(alias="sourceFields")]
45
+ r"""Array of property-/field-names to expand"""
46
+
47
+ target_names: Annotated[
48
+ Optional[List[str]], pydantic.Field(alias="targetNames")
49
+ ] = None
50
+ r"""stores the value as new target field name"""
51
+
52
+ row_limit: Annotated[Optional[float], pydantic.Field(alias="rowLimit")] = (
53
+ 9007199254740991
54
+ )
55
+ r"""max. number of rows generated out of every source events"""
56
+
57
+ item_index_name: Annotated[Optional[str], pydantic.Field(alias="itemIndexName")] = (
58
+ None
59
+ )
60
+ r"""name of an optional index property generated into the output"""
61
+
62
+ bag_expansion_mode: Annotated[
63
+ Annotated[
64
+ Optional[PipelineFunctionMvExpandBagExpansionMode],
65
+ PlainValidator(validate_open_enum(False)),
66
+ ],
67
+ pydantic.Field(alias="bagExpansionMode"),
68
+ ] = PipelineFunctionMvExpandBagExpansionMode.BAG
69
+ r"""decides if bag-values are expanded to bags or arrays"""
70
+
71
+ @field_serializer("bag_expansion_mode")
72
+ def serialize_bag_expansion_mode(self, value):
73
+ if isinstance(value, str):
74
+ try:
75
+ return models.PipelineFunctionMvExpandBagExpansionMode(value)
76
+ except ValueError:
77
+ return value
78
+ return value
79
+
80
+
81
+ class PipelineFunctionMvExpandTypedDict(TypedDict):
82
+ id: PipelineFunctionMvExpandID
83
+ r"""Function ID"""
84
+ conf: PipelineFunctionMvExpandConfTypedDict
85
+ filter_: NotRequired[str]
86
+ r"""Filter that selects data to be fed through this Function"""
87
+ description: NotRequired[str]
88
+ r"""Simple description of this step"""
89
+ disabled: NotRequired[bool]
90
+ r"""If true, data will not be pushed through this function"""
91
+ final: NotRequired[bool]
92
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
93
+ group_id: NotRequired[str]
94
+ r"""Group ID"""
95
+
96
+
97
+ class PipelineFunctionMvExpand(BaseModel):
98
+ id: PipelineFunctionMvExpandID
99
+ r"""Function ID"""
100
+
101
+ conf: PipelineFunctionMvExpandConf
102
+
103
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
104
+ r"""Filter that selects data to be fed through this Function"""
105
+
106
+ description: Optional[str] = None
107
+ r"""Simple description of this step"""
108
+
109
+ disabled: Optional[bool] = None
110
+ r"""If true, data will not be pushed through this function"""
111
+
112
+ final: Optional[bool] = None
113
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
114
+
115
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
116
+ r"""Group ID"""
@@ -0,0 +1,86 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class PipelineFunctionMvPullID(str, Enum):
12
+ r"""Function ID"""
13
+
14
+ MV_PULL = "mv_pull"
15
+
16
+
17
+ class PipelineFunctionMvPullConfTypedDict(TypedDict):
18
+ array_path: str
19
+ r"""Field name of the array within events that contains the data objects of interest. Can be a path."""
20
+ relative_key_path: str
21
+ r"""Extract the K-V pair's key from this field, relative to the data object."""
22
+ relative_value_path: str
23
+ r"""Extract the K-V pair's value from this field, relative to the data object."""
24
+ target_bag_path: NotRequired[str]
25
+ r"""Optionally, specify a bag as the target for K-V entries. If not specified, these entries are stored on each top-level event."""
26
+ delete_original: NotRequired[bool]
27
+ r"""Toggle this on to remove each original array of data objects after extraction. If toggled off, arrays are retained."""
28
+
29
+
30
+ class PipelineFunctionMvPullConf(BaseModel):
31
+ array_path: Annotated[str, pydantic.Field(alias="arrayPath")]
32
+ r"""Field name of the array within events that contains the data objects of interest. Can be a path."""
33
+
34
+ relative_key_path: Annotated[str, pydantic.Field(alias="relativeKeyPath")]
35
+ r"""Extract the K-V pair's key from this field, relative to the data object."""
36
+
37
+ relative_value_path: Annotated[str, pydantic.Field(alias="relativeValuePath")]
38
+ r"""Extract the K-V pair's value from this field, relative to the data object."""
39
+
40
+ target_bag_path: Annotated[Optional[str], pydantic.Field(alias="targetBagPath")] = (
41
+ None
42
+ )
43
+ r"""Optionally, specify a bag as the target for K-V entries. If not specified, these entries are stored on each top-level event."""
44
+
45
+ delete_original: Annotated[
46
+ Optional[bool], pydantic.Field(alias="deleteOriginal")
47
+ ] = False
48
+ r"""Toggle this on to remove each original array of data objects after extraction. If toggled off, arrays are retained."""
49
+
50
+
51
+ class PipelineFunctionMvPullTypedDict(TypedDict):
52
+ id: PipelineFunctionMvPullID
53
+ r"""Function ID"""
54
+ conf: PipelineFunctionMvPullConfTypedDict
55
+ filter_: NotRequired[str]
56
+ r"""Filter that selects data to be fed through this Function"""
57
+ description: NotRequired[str]
58
+ r"""Simple description of this step"""
59
+ disabled: NotRequired[bool]
60
+ r"""If true, data will not be pushed through this function"""
61
+ final: NotRequired[bool]
62
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
63
+ group_id: NotRequired[str]
64
+ r"""Group ID"""
65
+
66
+
67
+ class PipelineFunctionMvPull(BaseModel):
68
+ id: PipelineFunctionMvPullID
69
+ r"""Function ID"""
70
+
71
+ conf: PipelineFunctionMvPullConf
72
+
73
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
74
+ r"""Filter that selects data to be fed through this Function"""
75
+
76
+ description: Optional[str] = None
77
+ r"""Simple description of this step"""
78
+
79
+ disabled: Optional[bool] = None
80
+ r"""If true, data will not be pushed through this function"""
81
+
82
+ final: Optional[bool] = None
83
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
84
+
85
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
86
+ r"""Group ID"""
@@ -0,0 +1,56 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .functionconfschemanotificationpolicies import (
5
+ FunctionConfSchemaNotificationPolicies,
6
+ FunctionConfSchemaNotificationPoliciesTypedDict,
7
+ )
8
+ from cribl_control_plane.types import BaseModel
9
+ from enum import Enum
10
+ import pydantic
11
+ from typing import Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class PipelineFunctionNotificationPoliciesID(str, Enum):
16
+ r"""Function ID"""
17
+
18
+ NOTIFICATION_POLICIES = "notification_policies"
19
+
20
+
21
+ class PipelineFunctionNotificationPoliciesTypedDict(TypedDict):
22
+ id: PipelineFunctionNotificationPoliciesID
23
+ r"""Function ID"""
24
+ conf: FunctionConfSchemaNotificationPoliciesTypedDict
25
+ filter_: NotRequired[str]
26
+ r"""Filter that selects data to be fed through this Function"""
27
+ description: NotRequired[str]
28
+ r"""Simple description of this step"""
29
+ disabled: NotRequired[bool]
30
+ r"""If true, data will not be pushed through this function"""
31
+ final: NotRequired[bool]
32
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
33
+ group_id: NotRequired[str]
34
+ r"""Group ID"""
35
+
36
+
37
+ class PipelineFunctionNotificationPolicies(BaseModel):
38
+ id: PipelineFunctionNotificationPoliciesID
39
+ r"""Function ID"""
40
+
41
+ conf: FunctionConfSchemaNotificationPolicies
42
+
43
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
44
+ r"""Filter that selects data to be fed through this Function"""
45
+
46
+ description: Optional[str] = None
47
+ r"""Simple description of this step"""
48
+
49
+ disabled: Optional[bool] = None
50
+ r"""If true, data will not be pushed through this function"""
51
+
52
+ final: Optional[bool] = None
53
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
54
+
55
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
56
+ r"""Group ID"""
@@ -0,0 +1,72 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class PipelineFunctionNotificationsID(str, Enum):
12
+ r"""Function ID"""
13
+
14
+ NOTIFICATIONS = "notifications"
15
+
16
+
17
+ class PipelineFunctionNotificationsConfTypedDict(TypedDict):
18
+ id: str
19
+ r"""Notification ID"""
20
+ field: str
21
+ r"""Notification event state field name"""
22
+ deduplicate: bool
23
+ r"""Toggle deduplication."""
24
+
25
+
26
+ class PipelineFunctionNotificationsConf(BaseModel):
27
+ id: str
28
+ r"""Notification ID"""
29
+
30
+ field: str
31
+ r"""Notification event state field name"""
32
+
33
+ deduplicate: bool
34
+ r"""Toggle deduplication."""
35
+
36
+
37
+ class PipelineFunctionNotificationsTypedDict(TypedDict):
38
+ id: PipelineFunctionNotificationsID
39
+ r"""Function ID"""
40
+ conf: PipelineFunctionNotificationsConfTypedDict
41
+ filter_: NotRequired[str]
42
+ r"""Filter that selects data to be fed through this Function"""
43
+ description: NotRequired[str]
44
+ r"""Simple description of this step"""
45
+ disabled: NotRequired[bool]
46
+ r"""If true, data will not be pushed through this function"""
47
+ final: NotRequired[bool]
48
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
49
+ group_id: NotRequired[str]
50
+ r"""Group ID"""
51
+
52
+
53
+ class PipelineFunctionNotifications(BaseModel):
54
+ id: PipelineFunctionNotificationsID
55
+ r"""Function ID"""
56
+
57
+ conf: PipelineFunctionNotificationsConf
58
+
59
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
60
+ r"""Filter that selects data to be fed through this Function"""
61
+
62
+ description: Optional[str] = None
63
+ r"""Simple description of this step"""
64
+
65
+ disabled: Optional[bool] = None
66
+ r"""If true, data will not be pushed through this function"""
67
+
68
+ final: Optional[bool] = None
69
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
70
+
71
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
72
+ r"""Group ID"""