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
@@ -1,6 +1,10 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .functionconfschemachain import (
5
+ FunctionConfSchemaChain,
6
+ FunctionConfSchemaChainTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
@@ -12,16 +16,6 @@ class FunctionChainID(str, Enum):
12
16
  CHAIN = "chain"
13
17
 
14
18
 
15
- class FunctionChainSchemaTypedDict(TypedDict):
16
- processor: str
17
- r"""The data processor (Pack/Pipeline) to send events through"""
18
-
19
-
20
- class FunctionChainSchema(BaseModel):
21
- processor: str
22
- r"""The data processor (Pack/Pipeline) to send events through"""
23
-
24
-
25
19
  class FunctionChainTypedDict(TypedDict):
26
20
  filename: str
27
21
  group: str
@@ -36,7 +30,7 @@ class FunctionChainTypedDict(TypedDict):
36
30
  disabled: NotRequired[bool]
37
31
  handle_signals: NotRequired[bool]
38
32
  sync: NotRequired[bool]
39
- schema_: NotRequired[FunctionChainSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaChainTypedDict]
40
34
 
41
35
 
42
36
  class FunctionChain(BaseModel):
@@ -71,5 +65,5 @@ class FunctionChain(BaseModel):
71
65
  sync: Optional[bool] = None
72
66
 
73
67
  schema_: Annotated[
74
- Optional[FunctionChainSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaChain], pydantic.Field(alias="schema")
75
69
  ] = None
@@ -1,10 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .functionconfschemaclone import (
5
+ FunctionConfSchemaClone,
6
+ FunctionConfSchemaCloneTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
7
- from typing import Any, Dict, List, Optional
11
+ from typing import Any, Dict, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
10
14
 
@@ -12,16 +16,6 @@ class FunctionCloneID(str, Enum):
12
16
  CLONE = "clone"
13
17
 
14
18
 
15
- class FunctionCloneSchemaTypedDict(TypedDict):
16
- clones: NotRequired[List[Dict[str, str]]]
17
- r"""Create clones with the following fields set"""
18
-
19
-
20
- class FunctionCloneSchema(BaseModel):
21
- clones: Optional[List[Dict[str, str]]] = None
22
- r"""Create clones with the following fields set"""
23
-
24
-
25
19
  class FunctionCloneTypedDict(TypedDict):
26
20
  filename: str
27
21
  group: str
@@ -36,7 +30,7 @@ class FunctionCloneTypedDict(TypedDict):
36
30
  disabled: NotRequired[bool]
37
31
  handle_signals: NotRequired[bool]
38
32
  sync: NotRequired[bool]
39
- schema_: NotRequired[FunctionCloneSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaCloneTypedDict]
40
34
 
41
35
 
42
36
  class FunctionClone(BaseModel):
@@ -71,5 +65,5 @@ class FunctionClone(BaseModel):
71
65
  sync: Optional[bool] = None
72
66
 
73
67
  schema_: Annotated[
74
- Optional[FunctionCloneSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaClone], pydantic.Field(alias="schema")
75
69
  ] = None
@@ -1,6 +1,10 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .functionconfschemacode import (
5
+ FunctionConfSchemaCode,
6
+ FunctionConfSchemaCodeTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
@@ -12,37 +16,6 @@ class FunctionCodeID(str, Enum):
12
16
  CODE = "code"
13
17
 
14
18
 
15
- class FunctionCodeSchemaTypedDict(TypedDict):
16
- code: NotRequired[str]
17
- r"""Caution: This Function will be evaluated in an unprotected context. This means that you will be able to execute almost any JavaScript code."""
18
- max_num_of_iterations: NotRequired[float]
19
- r"""The maximum number of allowed iterations within this Function. Defaults to 5,000."""
20
- active_log_sample_rate: NotRequired[float]
21
- r"""Rate at which this Function logs errors. For example, a value of 1 (the default) logs every error, a value of 10 logs every tenth error, and so on."""
22
- use_unique_log_channel: NotRequired[bool]
23
- r"""Logs from this Function will be sent to a unique channel in the form `func:code:${pipelineName}:${functionIndex}`. Disable to use the generic `func:code` log channel instead."""
24
-
25
-
26
- class FunctionCodeSchema(BaseModel):
27
- code: Optional[str] = None
28
- r"""Caution: This Function will be evaluated in an unprotected context. This means that you will be able to execute almost any JavaScript code."""
29
-
30
- max_num_of_iterations: Annotated[
31
- Optional[float], pydantic.Field(alias="maxNumOfIterations")
32
- ] = 5000
33
- r"""The maximum number of allowed iterations within this Function. Defaults to 5,000."""
34
-
35
- active_log_sample_rate: Annotated[
36
- Optional[float], pydantic.Field(alias="activeLogSampleRate")
37
- ] = 1
38
- r"""Rate at which this Function logs errors. For example, a value of 1 (the default) logs every error, a value of 10 logs every tenth error, and so on."""
39
-
40
- use_unique_log_channel: Annotated[
41
- Optional[bool], pydantic.Field(alias="useUniqueLogChannel")
42
- ] = True
43
- r"""Logs from this Function will be sent to a unique channel in the form `func:code:${pipelineName}:${functionIndex}`. Disable to use the generic `func:code` log channel instead."""
44
-
45
-
46
19
  class FunctionCodeTypedDict(TypedDict):
47
20
  filename: str
48
21
  group: str
@@ -57,7 +30,7 @@ class FunctionCodeTypedDict(TypedDict):
57
30
  disabled: NotRequired[bool]
58
31
  handle_signals: NotRequired[bool]
59
32
  sync: NotRequired[bool]
60
- schema_: NotRequired[FunctionCodeSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaCodeTypedDict]
61
34
 
62
35
 
63
36
  class FunctionCode(BaseModel):
@@ -91,6 +64,6 @@ class FunctionCode(BaseModel):
91
64
 
92
65
  sync: Optional[bool] = None
93
66
 
94
- schema_: Annotated[Optional[FunctionCodeSchema], pydantic.Field(alias="schema")] = (
95
- None
96
- )
67
+ schema_: Annotated[
68
+ Optional[FunctionConfSchemaCode], pydantic.Field(alias="schema")
69
+ ] = None
@@ -1,6 +1,10 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .functionconfschemacomment import (
5
+ FunctionConfSchemaComment,
6
+ FunctionConfSchemaCommentTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
@@ -12,16 +16,6 @@ class FunctionCommentID(str, Enum):
12
16
  COMMENT = "comment"
13
17
 
14
18
 
15
- class FunctionCommentSchemaTypedDict(TypedDict):
16
- comment: NotRequired[str]
17
- r"""Optional, short description of this Function's purpose in the Pipeline"""
18
-
19
-
20
- class FunctionCommentSchema(BaseModel):
21
- comment: Optional[str] = None
22
- r"""Optional, short description of this Function's purpose in the Pipeline"""
23
-
24
-
25
19
  class FunctionCommentTypedDict(TypedDict):
26
20
  filename: str
27
21
  group: str
@@ -36,7 +30,7 @@ class FunctionCommentTypedDict(TypedDict):
36
30
  disabled: NotRequired[bool]
37
31
  handle_signals: NotRequired[bool]
38
32
  sync: NotRequired[bool]
39
- schema_: NotRequired[FunctionCommentSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaCommentTypedDict]
40
34
 
41
35
 
42
36
  class FunctionComment(BaseModel):
@@ -71,5 +65,5 @@ class FunctionComment(BaseModel):
71
65
  sync: Optional[bool] = None
72
66
 
73
67
  schema_: Annotated[
74
- Optional[FunctionCommentSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaComment], pydantic.Field(alias="schema")
75
69
  ] = None
@@ -0,0 +1,153 @@
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 FunctionConfSchemaAggregateMetricsMetricType(
16
+ str, Enum, metaclass=utils.OpenEnumMeta
17
+ ):
18
+ r"""The output metric type"""
19
+
20
+ AUTOMATIC = "automatic"
21
+ COUNTER = "counter"
22
+ DISTRIBUTION = "distribution"
23
+ GAUGE = "gauge"
24
+ HISTOGRAM = "histogram"
25
+ SUMMARY = "summary"
26
+ TIMER = "timer"
27
+
28
+
29
+ class FunctionConfSchemaAggregateMetricsAggregationTypedDict(TypedDict):
30
+ agg: str
31
+ r"""Aggregate function to perform on events. Example: sum(bytes).where(action=='REJECT').as(TotalBytes)"""
32
+ metric_type: NotRequired[FunctionConfSchemaAggregateMetricsMetricType]
33
+ r"""The output metric type"""
34
+
35
+
36
+ class FunctionConfSchemaAggregateMetricsAggregation(BaseModel):
37
+ agg: str
38
+ r"""Aggregate function to perform on events. Example: sum(bytes).where(action=='REJECT').as(TotalBytes)"""
39
+
40
+ metric_type: Annotated[
41
+ Annotated[
42
+ Optional[FunctionConfSchemaAggregateMetricsMetricType],
43
+ PlainValidator(validate_open_enum(False)),
44
+ ],
45
+ pydantic.Field(alias="metricType"),
46
+ ] = FunctionConfSchemaAggregateMetricsMetricType.AUTOMATIC
47
+ r"""The output metric type"""
48
+
49
+ @field_serializer("metric_type")
50
+ def serialize_metric_type(self, value):
51
+ if isinstance(value, str):
52
+ try:
53
+ return models.FunctionConfSchemaAggregateMetricsMetricType(value)
54
+ except ValueError:
55
+ return value
56
+ return value
57
+
58
+
59
+ class FunctionConfSchemaAggregateMetricsAddTypedDict(TypedDict):
60
+ value: str
61
+ r"""JavaScript expression to compute the value (can be constant)"""
62
+ name: NotRequired[str]
63
+
64
+
65
+ class FunctionConfSchemaAggregateMetricsAdd(BaseModel):
66
+ value: str
67
+ r"""JavaScript expression to compute the value (can be constant)"""
68
+
69
+ name: Optional[str] = None
70
+
71
+
72
+ class FunctionConfSchemaAggregateMetricsTypedDict(TypedDict):
73
+ passthrough: NotRequired[bool]
74
+ r"""Pass through the original events along with the aggregation events"""
75
+ preserve_group_bys: NotRequired[bool]
76
+ r"""Preserve the structure of the original aggregation event's groupby fields"""
77
+ sufficient_stats_only: NotRequired[bool]
78
+ r"""Output only statistics that are sufficient for the supplied aggregations"""
79
+ prefix: NotRequired[str]
80
+ r"""A prefix that is prepended to all of the fields output by this Aggregations Function"""
81
+ time_window: NotRequired[str]
82
+ r"""The time span of the tumbling window for aggregating events. Must be a valid time string (such as 10s)."""
83
+ aggregations: NotRequired[
84
+ List[FunctionConfSchemaAggregateMetricsAggregationTypedDict]
85
+ ]
86
+ r"""Combination of Aggregation function and output metric type"""
87
+ groupbys: NotRequired[List[str]]
88
+ r"""Optional: One or more dimensions to group aggregates by. Supports wildcard expressions. Wrap dimension names in quotes if using literal identifiers, such as 'service.name'. Warning: Using wildcard '*' causes all dimensions in the event to be included, which can result in high cardinality and increased memory usage. Exclude dimensions that can result in high cardinality before using wildcards. Example: !_time, !_numericValue, *"""
89
+ flush_event_limit: NotRequired[float]
90
+ r"""The maximum number of events to include in any given aggregation event"""
91
+ flush_mem_limit: NotRequired[str]
92
+ r"""The memory usage limit to impose upon aggregations. Defaults to 80% of the process memory; value configured above default limit is ignored. Accepts numerals with units like KB and MB (example: 128MB)."""
93
+ cumulative: NotRequired[bool]
94
+ r"""Enable to retain aggregations for cumulative aggregations when flushing out an aggregation table event. When disabled (the default), aggregations are reset to 0 on flush."""
95
+ should_treat_dots_as_literals: NotRequired[bool]
96
+ r"""Treat dots in dimension names as literals. This is useful for top-level dimensions that contain dots, such as 'service.name'."""
97
+ add: NotRequired[List[FunctionConfSchemaAggregateMetricsAddTypedDict]]
98
+ r"""Set of key-value pairs to evaluate and add/set"""
99
+ flush_on_input_close: NotRequired[bool]
100
+ r"""Flush aggregations when an input stream is closed. If disabled, Time Window Settings control flush behavior."""
101
+
102
+
103
+ class FunctionConfSchemaAggregateMetrics(BaseModel):
104
+ passthrough: Optional[bool] = False
105
+ r"""Pass through the original events along with the aggregation events"""
106
+
107
+ preserve_group_bys: Annotated[
108
+ Optional[bool], pydantic.Field(alias="preserveGroupBys")
109
+ ] = False
110
+ r"""Preserve the structure of the original aggregation event's groupby fields"""
111
+
112
+ sufficient_stats_only: Annotated[
113
+ Optional[bool], pydantic.Field(alias="sufficientStatsOnly")
114
+ ] = False
115
+ r"""Output only statistics that are sufficient for the supplied aggregations"""
116
+
117
+ prefix: Optional[str] = None
118
+ r"""A prefix that is prepended to all of the fields output by this Aggregations Function"""
119
+
120
+ time_window: Annotated[Optional[str], pydantic.Field(alias="timeWindow")] = "10s"
121
+ r"""The time span of the tumbling window for aggregating events. Must be a valid time string (such as 10s)."""
122
+
123
+ aggregations: Optional[List[FunctionConfSchemaAggregateMetricsAggregation]] = None
124
+ r"""Combination of Aggregation function and output metric type"""
125
+
126
+ groupbys: Optional[List[str]] = None
127
+ r"""Optional: One or more dimensions to group aggregates by. Supports wildcard expressions. Wrap dimension names in quotes if using literal identifiers, such as 'service.name'. Warning: Using wildcard '*' causes all dimensions in the event to be included, which can result in high cardinality and increased memory usage. Exclude dimensions that can result in high cardinality before using wildcards. Example: !_time, !_numericValue, *"""
128
+
129
+ flush_event_limit: Annotated[
130
+ Optional[float], pydantic.Field(alias="flushEventLimit")
131
+ ] = None
132
+ r"""The maximum number of events to include in any given aggregation event"""
133
+
134
+ flush_mem_limit: Annotated[Optional[str], pydantic.Field(alias="flushMemLimit")] = (
135
+ None
136
+ )
137
+ r"""The memory usage limit to impose upon aggregations. Defaults to 80% of the process memory; value configured above default limit is ignored. Accepts numerals with units like KB and MB (example: 128MB)."""
138
+
139
+ cumulative: Optional[bool] = False
140
+ r"""Enable to retain aggregations for cumulative aggregations when flushing out an aggregation table event. When disabled (the default), aggregations are reset to 0 on flush."""
141
+
142
+ should_treat_dots_as_literals: Annotated[
143
+ Optional[bool], pydantic.Field(alias="shouldTreatDotsAsLiterals")
144
+ ] = True
145
+ r"""Treat dots in dimension names as literals. This is useful for top-level dimensions that contain dots, such as 'service.name'."""
146
+
147
+ add: Optional[List[FunctionConfSchemaAggregateMetricsAdd]] = None
148
+ r"""Set of key-value pairs to evaluate and add/set"""
149
+
150
+ flush_on_input_close: Annotated[
151
+ Optional[bool], pydantic.Field(alias="flushOnInputClose")
152
+ ] = True
153
+ r"""Flush aggregations when an input stream is closed. If disabled, Time Window Settings control flush behavior."""
@@ -0,0 +1,114 @@
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
+ import pydantic
6
+ from typing import List, Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
8
+
9
+
10
+ class FunctionConfSchemaAggregationAddTypedDict(TypedDict):
11
+ value: str
12
+ r"""JavaScript expression to compute the value (can be constant)"""
13
+ name: NotRequired[str]
14
+
15
+
16
+ class FunctionConfSchemaAggregationAdd(BaseModel):
17
+ value: str
18
+ r"""JavaScript expression to compute the value (can be constant)"""
19
+
20
+ name: Optional[str] = None
21
+
22
+
23
+ class FunctionConfSchemaAggregationTypedDict(TypedDict):
24
+ passthrough: NotRequired[bool]
25
+ r"""Pass through the original events along with the aggregation events"""
26
+ preserve_group_bys: NotRequired[bool]
27
+ r"""Preserve the structure of the original aggregation event's groupby fields"""
28
+ sufficient_stats_only: NotRequired[bool]
29
+ r"""Output only statistics that are sufficient for the supplied aggregations"""
30
+ metrics_mode: NotRequired[bool]
31
+ r"""Enable to output the aggregates as metrics. When disabled, aggregates are output as events."""
32
+ prefix: NotRequired[str]
33
+ r"""A prefix that is prepended to all of the fields output by this Aggregations Function"""
34
+ time_window: NotRequired[str]
35
+ r"""The time span of the tumbling window for aggregating events. Must be a valid time string (such as 10s)."""
36
+ aggregations: NotRequired[List[str]]
37
+ r"""Aggregate function to perform on events. Example: sum(bytes).where(action=='REJECT').as(TotalBytes)"""
38
+ groupbys: NotRequired[List[str]]
39
+ r"""Optional: One or more fields to group aggregates by. Supports wildcard expressions. Warning: Using wildcard '*' causes all fields in the event to be included, which can result in high cardinality and increased memory usage. Exclude fields that can result in high cardinality before using wildcards. Example: !_time, !_numericValue, *"""
40
+ flush_event_limit: NotRequired[float]
41
+ r"""The maximum number of events to include in any given aggregation event"""
42
+ flush_mem_limit: NotRequired[str]
43
+ r"""The memory usage limit to impose upon aggregations. Defaults to 80% of the process memory; value configured above default limit is ignored. Accepts numerals with units like KB and MB (example: 128MB)."""
44
+ cumulative: NotRequired[bool]
45
+ r"""Enable to retain aggregations for cumulative aggregations when flushing out an aggregation table event. When disabled (the default), aggregations are reset to 0 on flush."""
46
+ search_agg_mode: NotRequired[str]
47
+ r"""Allows Cribl Search-specific aggregation configuration"""
48
+ add: NotRequired[List[FunctionConfSchemaAggregationAddTypedDict]]
49
+ r"""Set of key-value pairs to evaluate and add/set"""
50
+ should_treat_dots_as_literals: NotRequired[bool]
51
+ r"""Treat dots in dimension names as literals. This is useful for top-level dimensions that contain dots, such as 'service.name'."""
52
+ flush_on_input_close: NotRequired[bool]
53
+ r"""Flush aggregations when an input stream is closed. If disabled, Time Window Settings control flush behavior."""
54
+
55
+
56
+ class FunctionConfSchemaAggregation(BaseModel):
57
+ passthrough: Optional[bool] = False
58
+ r"""Pass through the original events along with the aggregation events"""
59
+
60
+ preserve_group_bys: Annotated[
61
+ Optional[bool], pydantic.Field(alias="preserveGroupBys")
62
+ ] = False
63
+ r"""Preserve the structure of the original aggregation event's groupby fields"""
64
+
65
+ sufficient_stats_only: Annotated[
66
+ Optional[bool], pydantic.Field(alias="sufficientStatsOnly")
67
+ ] = False
68
+ r"""Output only statistics that are sufficient for the supplied aggregations"""
69
+
70
+ metrics_mode: Annotated[Optional[bool], pydantic.Field(alias="metricsMode")] = False
71
+ r"""Enable to output the aggregates as metrics. When disabled, aggregates are output as events."""
72
+
73
+ prefix: Optional[str] = None
74
+ r"""A prefix that is prepended to all of the fields output by this Aggregations Function"""
75
+
76
+ time_window: Annotated[Optional[str], pydantic.Field(alias="timeWindow")] = "10s"
77
+ r"""The time span of the tumbling window for aggregating events. Must be a valid time string (such as 10s)."""
78
+
79
+ aggregations: Optional[List[str]] = None
80
+ r"""Aggregate function to perform on events. Example: sum(bytes).where(action=='REJECT').as(TotalBytes)"""
81
+
82
+ groupbys: Optional[List[str]] = None
83
+ r"""Optional: One or more fields to group aggregates by. Supports wildcard expressions. Warning: Using wildcard '*' causes all fields in the event to be included, which can result in high cardinality and increased memory usage. Exclude fields that can result in high cardinality before using wildcards. Example: !_time, !_numericValue, *"""
84
+
85
+ flush_event_limit: Annotated[
86
+ Optional[float], pydantic.Field(alias="flushEventLimit")
87
+ ] = None
88
+ r"""The maximum number of events to include in any given aggregation event"""
89
+
90
+ flush_mem_limit: Annotated[Optional[str], pydantic.Field(alias="flushMemLimit")] = (
91
+ None
92
+ )
93
+ r"""The memory usage limit to impose upon aggregations. Defaults to 80% of the process memory; value configured above default limit is ignored. Accepts numerals with units like KB and MB (example: 128MB)."""
94
+
95
+ cumulative: Optional[bool] = False
96
+ r"""Enable to retain aggregations for cumulative aggregations when flushing out an aggregation table event. When disabled (the default), aggregations are reset to 0 on flush."""
97
+
98
+ search_agg_mode: Annotated[Optional[str], pydantic.Field(alias="searchAggMode")] = (
99
+ None
100
+ )
101
+ r"""Allows Cribl Search-specific aggregation configuration"""
102
+
103
+ add: Optional[List[FunctionConfSchemaAggregationAdd]] = None
104
+ r"""Set of key-value pairs to evaluate and add/set"""
105
+
106
+ should_treat_dots_as_literals: Annotated[
107
+ Optional[bool], pydantic.Field(alias="shouldTreatDotsAsLiterals")
108
+ ] = False
109
+ r"""Treat dots in dimension names as literals. This is useful for top-level dimensions that contain dots, such as 'service.name'."""
110
+
111
+ flush_on_input_close: Annotated[
112
+ Optional[bool], pydantic.Field(alias="flushOnInputClose")
113
+ ] = True
114
+ r"""Flush aggregations when an input stream is closed. If disabled, Time Window Settings control flush behavior."""
@@ -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 DefaultTime(str, Enum, metaclass=utils.OpenEnumMeta):
16
+ r"""How to set the time field if no timestamp is found"""
17
+
18
+ # Current Time
19
+ NOW = "now"
20
+ # Last Event's Time
21
+ LAST = "last"
22
+ # None
23
+ NONE = "none"
24
+
25
+
26
+ class TimestampTypedDict(TypedDict):
27
+ regex: str
28
+ r"""Regex with first capturing group matching the timestamp"""
29
+ strptime: str
30
+ r"""Select or enter strptime format for the captured timestamp"""
31
+
32
+
33
+ class Timestamp(BaseModel):
34
+ regex: str
35
+ r"""Regex with first capturing group matching the timestamp"""
36
+
37
+ strptime: str
38
+ r"""Select or enter strptime format for the captured timestamp"""
39
+
40
+
41
+ class FunctionConfSchemaAutoTimestampTypedDict(TypedDict):
42
+ src_field: NotRequired[str]
43
+ r"""Field to search for a timestamp"""
44
+ dst_field: NotRequired[str]
45
+ r"""Field to place timestamp in"""
46
+ default_timezone: NotRequired[str]
47
+ r"""Timezone to assign to timestamps without timezone info"""
48
+ time_expression: NotRequired[str]
49
+ r"""Expression to use to format time. Current time, as a JavaScript Date object, is in global `time`. You can access other fields' values via __e.<fieldName>."""
50
+ offset: NotRequired[float]
51
+ r"""The offset into the string from which to look for a timestamp"""
52
+ max_len: NotRequired[float]
53
+ r"""Maximum string length at which to look for a timestamp"""
54
+ default_time: NotRequired[DefaultTime]
55
+ r"""How to set the time field if no timestamp is found"""
56
+ latest_date_allowed: NotRequired[str]
57
+ r"""The latest timestamp value allowed relative to now, such as +42days. Parsed values after this date will be set to the Default time."""
58
+ spacer: NotRequired[str]
59
+ earliest_date_allowed: NotRequired[str]
60
+ r"""The earliest timestamp value allowed relative to now, such as -42years. Parsed values prior to this date will be set to the Default time."""
61
+ timestamps: NotRequired[List[TimestampTypedDict]]
62
+ r"""Add regex/strptime pairs to extract additional timestamp formats"""
63
+
64
+
65
+ class FunctionConfSchemaAutoTimestamp(BaseModel):
66
+ src_field: Annotated[Optional[str], pydantic.Field(alias="srcField")] = "_raw"
67
+ r"""Field to search for a timestamp"""
68
+
69
+ dst_field: Annotated[Optional[str], pydantic.Field(alias="dstField")] = "_time"
70
+ r"""Field to place timestamp in"""
71
+
72
+ default_timezone: Annotated[
73
+ Optional[str], pydantic.Field(alias="defaultTimezone")
74
+ ] = "local"
75
+ r"""Timezone to assign to timestamps without timezone info"""
76
+
77
+ time_expression: Annotated[
78
+ Optional[str], pydantic.Field(alias="timeExpression")
79
+ ] = "time.getTime() / 1000"
80
+ r"""Expression to use to format time. Current time, as a JavaScript Date object, is in global `time`. You can access other fields' values via __e.<fieldName>."""
81
+
82
+ offset: Optional[float] = 0
83
+ r"""The offset into the string from which to look for a timestamp"""
84
+
85
+ max_len: Annotated[Optional[float], pydantic.Field(alias="maxLen")] = 150
86
+ r"""Maximum string length at which to look for a timestamp"""
87
+
88
+ default_time: Annotated[
89
+ Annotated[Optional[DefaultTime], PlainValidator(validate_open_enum(False))],
90
+ pydantic.Field(alias="defaultTime"),
91
+ ] = DefaultTime.NOW
92
+ r"""How to set the time field if no timestamp is found"""
93
+
94
+ latest_date_allowed: Annotated[
95
+ Optional[str], pydantic.Field(alias="latestDateAllowed")
96
+ ] = "+1week"
97
+ r"""The latest timestamp value allowed relative to now, such as +42days. Parsed values after this date will be set to the Default time."""
98
+
99
+ spacer: Optional[str] = None
100
+
101
+ earliest_date_allowed: Annotated[
102
+ Optional[str], pydantic.Field(alias="earliestDateAllowed")
103
+ ] = "-420weeks"
104
+ r"""The earliest timestamp value allowed relative to now, such as -42years. Parsed values prior to this date will be set to the Default time."""
105
+
106
+ timestamps: Optional[List[Timestamp]] = None
107
+ r"""Add regex/strptime pairs to extract additional timestamp formats"""
108
+
109
+ @field_serializer("default_time")
110
+ def serialize_default_time(self, value):
111
+ if isinstance(value, str):
112
+ try:
113
+ return models.DefaultTime(value)
114
+ except ValueError:
115
+ return value
116
+ return value
@@ -0,0 +1,83 @@
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
+ import pydantic
6
+ from typing import List, Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
8
+
9
+
10
+ class HeaderTypedDict(TypedDict):
11
+ value: str
12
+ r"""JavaScript expression to compute the value (can be constant)"""
13
+ name: NotRequired[str]
14
+
15
+
16
+ class Header(BaseModel):
17
+ value: str
18
+ r"""JavaScript expression to compute the value (can be constant)"""
19
+
20
+ name: Optional[str] = None
21
+
22
+
23
+ class ExtensionTypedDict(TypedDict):
24
+ name: str
25
+ value: str
26
+ r"""JavaScript expression to compute the value (can be constant)"""
27
+
28
+
29
+ class Extension(BaseModel):
30
+ name: str
31
+
32
+ value: str
33
+ r"""JavaScript expression to compute the value (can be constant)"""
34
+
35
+
36
+ class FunctionConfSchemaCefTypedDict(TypedDict):
37
+ output_field: NotRequired[str]
38
+ r"""The field to which the CEF formatted event will be output"""
39
+ header: NotRequired[List[HeaderTypedDict]]
40
+ r"""Set of header key/value pairs"""
41
+ extension: NotRequired[List[ExtensionTypedDict]]
42
+ r"""Set of extension key-value pairs"""
43
+
44
+
45
+ class FunctionConfSchemaCef(BaseModel):
46
+ output_field: Annotated[Optional[str], pydantic.Field(alias="outputField")] = "_raw"
47
+ r"""The field to which the CEF formatted event will be output"""
48
+
49
+ header: Optional[List[Header]] = None
50
+ r"""Set of header key/value pairs"""
51
+
52
+ extension: Optional[List[Extension]] = None
53
+ r"""Set of extension key-value pairs"""
54
+
55
+
56
+ class HeaderInputTypedDict(TypedDict):
57
+ value: str
58
+ r"""JavaScript expression to compute the value (can be constant)"""
59
+
60
+
61
+ class HeaderInput(BaseModel):
62
+ value: str
63
+ r"""JavaScript expression to compute the value (can be constant)"""
64
+
65
+
66
+ class FunctionConfSchemaCefInputTypedDict(TypedDict):
67
+ output_field: NotRequired[str]
68
+ r"""The field to which the CEF formatted event will be output"""
69
+ header: NotRequired[List[HeaderInputTypedDict]]
70
+ r"""Set of header key/value pairs"""
71
+ extension: NotRequired[List[ExtensionTypedDict]]
72
+ r"""Set of extension key-value pairs"""
73
+
74
+
75
+ class FunctionConfSchemaCefInput(BaseModel):
76
+ output_field: Annotated[Optional[str], pydantic.Field(alias="outputField")] = "_raw"
77
+ r"""The field to which the CEF formatted event will be output"""
78
+
79
+ header: Optional[List[HeaderInput]] = None
80
+ r"""Set of header key/value pairs"""
81
+
82
+ extension: Optional[List[Extension]] = None
83
+ r"""Set of extension key-value pairs"""