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 .functionconfschemanotifications import (
5
+ FunctionConfSchemaNotifications,
6
+ FunctionConfSchemaNotificationsTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
@@ -12,26 +16,6 @@ class FunctionNotificationsID(str, Enum):
12
16
  NOTIFICATIONS = "notifications"
13
17
 
14
18
 
15
- class FunctionNotificationsSchemaTypedDict(TypedDict):
16
- id: str
17
- r"""Notification ID"""
18
- field: str
19
- r"""Notification event state field name"""
20
- deduplicate: bool
21
- r"""Toggle deduplication."""
22
-
23
-
24
- class FunctionNotificationsSchema(BaseModel):
25
- id: str
26
- r"""Notification ID"""
27
-
28
- field: str
29
- r"""Notification event state field name"""
30
-
31
- deduplicate: bool
32
- r"""Toggle deduplication."""
33
-
34
-
35
19
  class FunctionNotificationsTypedDict(TypedDict):
36
20
  filename: str
37
21
  group: str
@@ -46,7 +30,7 @@ class FunctionNotificationsTypedDict(TypedDict):
46
30
  disabled: NotRequired[bool]
47
31
  handle_signals: NotRequired[bool]
48
32
  sync: NotRequired[bool]
49
- schema_: NotRequired[FunctionNotificationsSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaNotificationsTypedDict]
50
34
 
51
35
 
52
36
  class FunctionNotifications(BaseModel):
@@ -81,5 +65,5 @@ class FunctionNotifications(BaseModel):
81
65
  sync: Optional[bool] = None
82
66
 
83
67
  schema_: Annotated[
84
- Optional[FunctionNotificationsSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaNotifications], pydantic.Field(alias="schema")
85
69
  ] = None
@@ -1,13 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemanotify import (
5
+ FunctionConfSchemaNotify,
6
+ FunctionConfSchemaNotifyTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
11
  from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
@@ -16,133 +16,6 @@ class FunctionNotifyID(str, Enum):
16
16
  NOTIFY = "notify"
17
17
 
18
18
 
19
- class TriggerType(str, Enum, metaclass=utils.OpenEnumMeta):
20
- r"""Type of the trigger condition. custom applies a kusto expression over the results, and results count applies a comparison over results count"""
21
-
22
- # Where
23
- CUSTOM = "custom"
24
- # Count of Results
25
- RESULTS_COUNT = "resultsCount"
26
-
27
-
28
- class CountComparator(str, Enum, metaclass=utils.OpenEnumMeta):
29
- r"""Operation to be applied over the results count"""
30
-
31
- # greater than
32
- GREATER_THAN_ = ">"
33
- # less than
34
- LESS_THAN_ = "<"
35
- # equals
36
- EQUAL_EQUAL_EQUAL_ = "==="
37
- # not equal to
38
- NOT_EQUAL_EQUAL_ = "!=="
39
- # greater than or equal to
40
- GREATER_THAN_EQUAL_ = ">="
41
- # less than or equal to
42
- LESS_THAN_EQUAL_ = "<="
43
-
44
-
45
- class NotifyConfigurationTypedDict(TypedDict):
46
- search_id: str
47
- r"""Id of the search this function is running on."""
48
- saved_query_id: str
49
- r"""Id of the saved query"""
50
- search_url: str
51
- r"""Url of the search results"""
52
- auth_token: str
53
- r"""Auth token for sending notification messages"""
54
- messages_endpoint: str
55
- r"""System messages api endpoint"""
56
- group: NotRequired[str]
57
- r"""Group the notification belongs to"""
58
- notification_id: NotRequired[str]
59
- r"""Workspace within the deployment to send the search results to."""
60
- trigger: NotRequired[str]
61
- r"""Js expression that filters events, a greater than 'Trigger Count' events will trigger the notification"""
62
- trigger_type: NotRequired[TriggerType]
63
- r"""Type of the trigger condition. custom applies a kusto expression over the results, and results count applies a comparison over results count"""
64
- trigger_comparator: NotRequired[CountComparator]
65
- r"""Operation to be applied over the results count"""
66
- trigger_count: NotRequired[float]
67
- r"""How many results that match trigger the condition"""
68
- results_limit: NotRequired[float]
69
- r"""Number of results to include in the notification event"""
70
- message: NotRequired[str]
71
- r"""Message content template, available fields: searchId, resultSet, savedQueryId, notificationId, searchResultsUrl"""
72
- tenant_id: NotRequired[str]
73
- r"""Current tenant id"""
74
-
75
-
76
- class NotifyConfiguration(BaseModel):
77
- search_id: Annotated[str, pydantic.Field(alias="searchId")]
78
- r"""Id of the search this function is running on."""
79
-
80
- saved_query_id: Annotated[str, pydantic.Field(alias="savedQueryId")]
81
- r"""Id of the saved query"""
82
-
83
- search_url: Annotated[str, pydantic.Field(alias="searchUrl")]
84
- r"""Url of the search results"""
85
-
86
- auth_token: Annotated[str, pydantic.Field(alias="authToken")]
87
- r"""Auth token for sending notification messages"""
88
-
89
- messages_endpoint: Annotated[str, pydantic.Field(alias="messagesEndpoint")]
90
- r"""System messages api endpoint"""
91
-
92
- group: Optional[str] = "default"
93
- r"""Group the notification belongs to"""
94
-
95
- notification_id: Annotated[
96
- Optional[str], pydantic.Field(alias="notificationId")
97
- ] = "main"
98
- r"""Workspace within the deployment to send the search results to."""
99
-
100
- trigger: Optional[str] = None
101
- r"""Js expression that filters events, a greater than 'Trigger Count' events will trigger the notification"""
102
-
103
- trigger_type: Annotated[
104
- Annotated[Optional[TriggerType], PlainValidator(validate_open_enum(False))],
105
- pydantic.Field(alias="triggerType"),
106
- ] = None
107
- r"""Type of the trigger condition. custom applies a kusto expression over the results, and results count applies a comparison over results count"""
108
-
109
- trigger_comparator: Annotated[
110
- Annotated[Optional[CountComparator], PlainValidator(validate_open_enum(False))],
111
- pydantic.Field(alias="triggerComparator"),
112
- ] = None
113
- r"""Operation to be applied over the results count"""
114
-
115
- trigger_count: Annotated[Optional[float], pydantic.Field(alias="triggerCount")] = 0
116
- r"""How many results that match trigger the condition"""
117
-
118
- results_limit: Annotated[Optional[float], pydantic.Field(alias="resultsLimit")] = 50
119
- r"""Number of results to include in the notification event"""
120
-
121
- message: Optional[str] = None
122
- r"""Message content template, available fields: searchId, resultSet, savedQueryId, notificationId, searchResultsUrl"""
123
-
124
- tenant_id: Annotated[Optional[str], pydantic.Field(alias="tenantId")] = None
125
- r"""Current tenant id"""
126
-
127
- @field_serializer("trigger_type")
128
- def serialize_trigger_type(self, value):
129
- if isinstance(value, str):
130
- try:
131
- return models.TriggerType(value)
132
- except ValueError:
133
- return value
134
- return value
135
-
136
- @field_serializer("trigger_comparator")
137
- def serialize_trigger_comparator(self, value):
138
- if isinstance(value, str):
139
- try:
140
- return models.CountComparator(value)
141
- except ValueError:
142
- return value
143
- return value
144
-
145
-
146
19
  class FunctionNotifyTypedDict(TypedDict):
147
20
  filename: str
148
21
  group: str
@@ -157,7 +30,7 @@ class FunctionNotifyTypedDict(TypedDict):
157
30
  disabled: NotRequired[bool]
158
31
  handle_signals: NotRequired[bool]
159
32
  sync: NotRequired[bool]
160
- schema_: NotRequired[NotifyConfigurationTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaNotifyTypedDict]
161
34
 
162
35
 
163
36
  class FunctionNotify(BaseModel):
@@ -192,5 +65,5 @@ class FunctionNotify(BaseModel):
192
65
  sync: Optional[bool] = None
193
66
 
194
67
  schema_: Annotated[
195
- Optional[NotifyConfiguration], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaNotify], pydantic.Field(alias="schema")
196
69
  ] = None
@@ -1,14 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemanumerify import (
5
+ FunctionConfSchemaNumerify,
6
+ FunctionConfSchemaNumerifyTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
- from typing import Any, Dict, List, Optional
11
+ from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
14
14
 
@@ -16,56 +16,6 @@ class FunctionNumerifyID(str, Enum):
16
16
  NUMERIFY = "numerify"
17
17
 
18
18
 
19
- class FunctionNumerifyFormat(str, Enum, metaclass=utils.OpenEnumMeta):
20
- # None
21
- NONE = "none"
22
- # Fix
23
- FIX = "fix"
24
- # Floor
25
- FLOOR = "floor"
26
- # Ceil
27
- CEIL = "ceil"
28
-
29
-
30
- class FunctionNumerifySchemaTypedDict(TypedDict):
31
- depth: NotRequired[int]
32
- r"""Depth to which the Numerify Function will search within a nested event. Depth greater than 5 (the default) could decrease performance."""
33
- ignore_fields: NotRequired[List[str]]
34
- r"""Fields to NOT numerify. Takes precedence over 'Include expression' when set. Supports wildcards. A '!' before field name(s) means: numerify all fields EXCEPT these. For syntax details, see [Wildcard Lists](https://docs.cribl.io/stream/introduction-reference/#wildcard-lists)."""
35
- filter_expr: NotRequired[str]
36
- r"""Optional JavaScript expression to determine whether a field should be numerified. If left blank, all fields will be numerified. Use the 'name' and 'value' global variables to access fields' names/values. Examples: `value != null`, `name=='fieldname'`. You can access other fields' values via `__e.<fieldName>`."""
37
- format_: NotRequired[FunctionNumerifyFormat]
38
-
39
-
40
- class FunctionNumerifySchema(BaseModel):
41
- depth: Optional[int] = 5
42
- r"""Depth to which the Numerify Function will search within a nested event. Depth greater than 5 (the default) could decrease performance."""
43
-
44
- ignore_fields: Annotated[
45
- Optional[List[str]], pydantic.Field(alias="ignoreFields")
46
- ] = None
47
- r"""Fields to NOT numerify. Takes precedence over 'Include expression' when set. Supports wildcards. A '!' before field name(s) means: numerify all fields EXCEPT these. For syntax details, see [Wildcard Lists](https://docs.cribl.io/stream/introduction-reference/#wildcard-lists)."""
48
-
49
- filter_expr: Annotated[Optional[str], pydantic.Field(alias="filterExpr")] = None
50
- r"""Optional JavaScript expression to determine whether a field should be numerified. If left blank, all fields will be numerified. Use the 'name' and 'value' global variables to access fields' names/values. Examples: `value != null`, `name=='fieldname'`. You can access other fields' values via `__e.<fieldName>`."""
51
-
52
- format_: Annotated[
53
- Annotated[
54
- Optional[FunctionNumerifyFormat], PlainValidator(validate_open_enum(False))
55
- ],
56
- pydantic.Field(alias="format"),
57
- ] = FunctionNumerifyFormat.NONE
58
-
59
- @field_serializer("format_")
60
- def serialize_format_(self, value):
61
- if isinstance(value, str):
62
- try:
63
- return models.FunctionNumerifyFormat(value)
64
- except ValueError:
65
- return value
66
- return value
67
-
68
-
69
19
  class FunctionNumerifyTypedDict(TypedDict):
70
20
  filename: str
71
21
  group: str
@@ -80,7 +30,7 @@ class FunctionNumerifyTypedDict(TypedDict):
80
30
  disabled: NotRequired[bool]
81
31
  handle_signals: NotRequired[bool]
82
32
  sync: NotRequired[bool]
83
- schema_: NotRequired[FunctionNumerifySchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaNumerifyTypedDict]
84
34
 
85
35
 
86
36
  class FunctionNumerify(BaseModel):
@@ -115,5 +65,5 @@ class FunctionNumerify(BaseModel):
115
65
  sync: Optional[bool] = None
116
66
 
117
67
  schema_: Annotated[
118
- Optional[FunctionNumerifySchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaNumerify], pydantic.Field(alias="schema")
119
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 .functionconfschemaotlplogs import (
5
+ FunctionConfSchemaOtlpLogs,
6
+ FunctionConfSchemaOtlpLogsTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
@@ -12,23 +16,6 @@ class FunctionOtlpLogsID(str, Enum):
12
16
  OTLP_LOGS = "otlp_logs"
13
17
 
14
18
 
15
- class FunctionOtlpLogsSchemaTypedDict(TypedDict):
16
- drop_non_log_events: NotRequired[bool]
17
- batch_otlp_logs: NotRequired[bool]
18
- r"""Batch OTLP log records by shared top-level `resource` attributes"""
19
-
20
-
21
- class FunctionOtlpLogsSchema(BaseModel):
22
- drop_non_log_events: Annotated[
23
- Optional[bool], pydantic.Field(alias="dropNonLogEvents")
24
- ] = False
25
-
26
- batch_otlp_logs: Annotated[
27
- Optional[bool], pydantic.Field(alias="batchOTLPLogs")
28
- ] = False
29
- r"""Batch OTLP log records by shared top-level `resource` attributes"""
30
-
31
-
32
19
  class FunctionOtlpLogsTypedDict(TypedDict):
33
20
  filename: str
34
21
  group: str
@@ -43,7 +30,7 @@ class FunctionOtlpLogsTypedDict(TypedDict):
43
30
  disabled: NotRequired[bool]
44
31
  handle_signals: NotRequired[bool]
45
32
  sync: NotRequired[bool]
46
- schema_: NotRequired[FunctionOtlpLogsSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaOtlpLogsTypedDict]
47
34
 
48
35
 
49
36
  class FunctionOtlpLogs(BaseModel):
@@ -78,5 +65,5 @@ class FunctionOtlpLogs(BaseModel):
78
65
  sync: Optional[bool] = None
79
66
 
80
67
  schema_: Annotated[
81
- Optional[FunctionOtlpLogsSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaOtlpLogs], pydantic.Field(alias="schema")
82
69
  ] = None
@@ -1,14 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemaotlpmetrics import (
5
+ FunctionConfSchemaOtlpMetrics,
6
+ FunctionConfSchemaOtlpMetricsTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
- from typing import Any, Dict, List, Optional
11
+ from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
14
14
 
@@ -16,55 +16,6 @@ class FunctionOtlpMetricsID(str, Enum):
16
16
  OTLP_METRICS = "otlp_metrics"
17
17
 
18
18
 
19
- class FunctionOTLPMetricsOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
20
- # 0.10.0
21
- ZERO_DOT_10_DOT_0 = "0.10.0"
22
- # 1.3.1
23
- ONE_DOT_3_DOT_1 = "1.3.1"
24
-
25
-
26
- class FunctionOtlpMetricsSchemaTypedDict(TypedDict):
27
- resource_attribute_prefixes: NotRequired[List[str]]
28
- r"""The prefixes of top-level attributes to add as resource attributes. Each attribute must match the regex pattern `^[a-zA-Z0-9_\.]+$`. Use Eval to copy nested attributes to the top level for matching."""
29
- drop_non_metric_events: NotRequired[bool]
30
- otlp_version: NotRequired[FunctionOTLPMetricsOTLPVersion]
31
- batch_otlp_metrics: NotRequired[bool]
32
- r"""Batch OTLP metrics by shared top-level `resource` attributes"""
33
-
34
-
35
- class FunctionOtlpMetricsSchema(BaseModel):
36
- resource_attribute_prefixes: Annotated[
37
- Optional[List[str]], pydantic.Field(alias="resourceAttributePrefixes")
38
- ] = None
39
- r"""The prefixes of top-level attributes to add as resource attributes. Each attribute must match the regex pattern `^[a-zA-Z0-9_\.]+$`. Use Eval to copy nested attributes to the top level for matching."""
40
-
41
- drop_non_metric_events: Annotated[
42
- Optional[bool], pydantic.Field(alias="dropNonMetricEvents")
43
- ] = False
44
-
45
- otlp_version: Annotated[
46
- Annotated[
47
- Optional[FunctionOTLPMetricsOTLPVersion],
48
- PlainValidator(validate_open_enum(False)),
49
- ],
50
- pydantic.Field(alias="otlpVersion"),
51
- ] = FunctionOTLPMetricsOTLPVersion.ZERO_DOT_10_DOT_0
52
-
53
- batch_otlp_metrics: Annotated[
54
- Optional[bool], pydantic.Field(alias="batchOTLPMetrics")
55
- ] = False
56
- r"""Batch OTLP metrics by shared top-level `resource` attributes"""
57
-
58
- @field_serializer("otlp_version")
59
- def serialize_otlp_version(self, value):
60
- if isinstance(value, str):
61
- try:
62
- return models.FunctionOTLPMetricsOTLPVersion(value)
63
- except ValueError:
64
- return value
65
- return value
66
-
67
-
68
19
  class FunctionOtlpMetricsTypedDict(TypedDict):
69
20
  filename: str
70
21
  group: str
@@ -79,7 +30,7 @@ class FunctionOtlpMetricsTypedDict(TypedDict):
79
30
  disabled: NotRequired[bool]
80
31
  handle_signals: NotRequired[bool]
81
32
  sync: NotRequired[bool]
82
- schema_: NotRequired[FunctionOtlpMetricsSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaOtlpMetricsTypedDict]
83
34
 
84
35
 
85
36
  class FunctionOtlpMetrics(BaseModel):
@@ -114,5 +65,5 @@ class FunctionOtlpMetrics(BaseModel):
114
65
  sync: Optional[bool] = None
115
66
 
116
67
  schema_: Annotated[
117
- Optional[FunctionOtlpMetricsSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaOtlpMetrics], pydantic.Field(alias="schema")
118
69
  ] = None
@@ -1,13 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemaotlptraces import (
5
+ FunctionConfSchemaOtlpTraces,
6
+ FunctionConfSchemaOtlpTracesTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
11
  from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
@@ -16,48 +16,6 @@ class FunctionOtlpTracesID(str, Enum):
16
16
  OTLP_TRACES = "otlp_traces"
17
17
 
18
18
 
19
- class FunctionOTLPTracesOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
20
- # 0.10.0
21
- ZERO_DOT_10_DOT_0 = "0.10.0"
22
- # 1.3.1
23
- ONE_DOT_3_DOT_1 = "1.3.1"
24
-
25
-
26
- class FunctionOtlpTracesSchemaTypedDict(TypedDict):
27
- drop_non_trace_events: NotRequired[bool]
28
- otlp_version: NotRequired[FunctionOTLPTracesOTLPVersion]
29
- batch_otlp_traces: NotRequired[bool]
30
- r"""Batch OTLP traces by shared top-level `resource` attributes"""
31
-
32
-
33
- class FunctionOtlpTracesSchema(BaseModel):
34
- drop_non_trace_events: Annotated[
35
- Optional[bool], pydantic.Field(alias="dropNonTraceEvents")
36
- ] = False
37
-
38
- otlp_version: Annotated[
39
- Annotated[
40
- Optional[FunctionOTLPTracesOTLPVersion],
41
- PlainValidator(validate_open_enum(False)),
42
- ],
43
- pydantic.Field(alias="otlpVersion"),
44
- ] = FunctionOTLPTracesOTLPVersion.ZERO_DOT_10_DOT_0
45
-
46
- batch_otlp_traces: Annotated[
47
- Optional[bool], pydantic.Field(alias="batchOTLPTraces")
48
- ] = False
49
- r"""Batch OTLP traces by shared top-level `resource` attributes"""
50
-
51
- @field_serializer("otlp_version")
52
- def serialize_otlp_version(self, value):
53
- if isinstance(value, str):
54
- try:
55
- return models.FunctionOTLPTracesOTLPVersion(value)
56
- except ValueError:
57
- return value
58
- return value
59
-
60
-
61
19
  class FunctionOtlpTracesTypedDict(TypedDict):
62
20
  filename: str
63
21
  group: str
@@ -72,7 +30,7 @@ class FunctionOtlpTracesTypedDict(TypedDict):
72
30
  disabled: NotRequired[bool]
73
31
  handle_signals: NotRequired[bool]
74
32
  sync: NotRequired[bool]
75
- schema_: NotRequired[FunctionOtlpTracesSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaOtlpTracesTypedDict]
76
34
 
77
35
 
78
36
  class FunctionOtlpTraces(BaseModel):
@@ -107,5 +65,5 @@ class FunctionOtlpTraces(BaseModel):
107
65
  sync: Optional[bool] = None
108
66
 
109
67
  schema_: Annotated[
110
- Optional[FunctionOtlpTracesSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaOtlpTraces], pydantic.Field(alias="schema")
111
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 .functionconfschemapack import (
5
+ FunctionConfSchemaPack,
6
+ FunctionConfSchemaPackTypedDict,
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,21 +16,6 @@ class FunctionPackID(str, Enum):
12
16
  PACK = "pack"
13
17
 
14
18
 
15
- class FunctionPackSchemaTypedDict(TypedDict):
16
- unpacked_fields: List[str]
17
- r"""List of fields to keep, everything else will be packed"""
18
- target: NotRequired[str]
19
- r"""Name of the (packed) target field"""
20
-
21
-
22
- class FunctionPackSchema(BaseModel):
23
- unpacked_fields: Annotated[List[str], pydantic.Field(alias="unpackedFields")]
24
- r"""List of fields to keep, everything else will be packed"""
25
-
26
- target: Optional[str] = "_pack"
27
- r"""Name of the (packed) target field"""
28
-
29
-
30
19
  class FunctionPackTypedDict(TypedDict):
31
20
  filename: str
32
21
  group: str
@@ -41,7 +30,7 @@ class FunctionPackTypedDict(TypedDict):
41
30
  disabled: NotRequired[bool]
42
31
  handle_signals: NotRequired[bool]
43
32
  sync: NotRequired[bool]
44
- schema_: NotRequired[FunctionPackSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaPackTypedDict]
45
34
 
46
35
 
47
36
  class FunctionPack(BaseModel):
@@ -75,6 +64,6 @@ class FunctionPack(BaseModel):
75
64
 
76
65
  sync: Optional[bool] = None
77
66
 
78
- schema_: Annotated[Optional[FunctionPackSchema], pydantic.Field(alias="schema")] = (
79
- None
80
- )
67
+ schema_: Annotated[
68
+ Optional[FunctionConfSchemaPack], pydantic.Field(alias="schema")
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 .functionconfschemapivot import (
5
+ FunctionConfSchemaPivot,
6
+ FunctionConfSchemaPivotTypedDict,
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,26 +16,6 @@ class FunctionPivotID(str, Enum):
12
16
  PIVOT = "pivot"
13
17
 
14
18
 
15
- class SimplePivotConfigurationTypedDict(TypedDict):
16
- label_field: str
17
- r"""Fields to be used for the left-most column."""
18
- data_fields: List[str]
19
- r"""Fields with the cell values (i.e. aggregates)"""
20
- qualifier_fields: List[str]
21
- r"""Fields to qualify or group data fields"""
22
-
23
-
24
- class SimplePivotConfiguration(BaseModel):
25
- label_field: Annotated[str, pydantic.Field(alias="labelField")]
26
- r"""Fields to be used for the left-most column."""
27
-
28
- data_fields: Annotated[List[str], pydantic.Field(alias="dataFields")]
29
- r"""Fields with the cell values (i.e. aggregates)"""
30
-
31
- qualifier_fields: Annotated[List[str], pydantic.Field(alias="qualifierFields")]
32
- r"""Fields to qualify or group data fields"""
33
-
34
-
35
19
  class FunctionPivotTypedDict(TypedDict):
36
20
  filename: str
37
21
  group: str
@@ -46,7 +30,7 @@ class FunctionPivotTypedDict(TypedDict):
46
30
  disabled: NotRequired[bool]
47
31
  handle_signals: NotRequired[bool]
48
32
  sync: NotRequired[bool]
49
- schema_: NotRequired[SimplePivotConfigurationTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaPivotTypedDict]
50
34
 
51
35
 
52
36
  class FunctionPivot(BaseModel):
@@ -81,5 +65,5 @@ class FunctionPivot(BaseModel):
81
65
  sync: Optional[bool] = None
82
66
 
83
67
  schema_: Annotated[
84
- Optional[SimplePivotConfiguration], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaPivot], pydantic.Field(alias="schema")
85
69
  ] = None