cribl-control-plane 0.0.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cribl-control-plane might be problematic. Click here for more details.

Files changed (197) hide show
  1. cribl_control_plane/__init__.py +17 -0
  2. cribl_control_plane/_hooks/__init__.py +5 -0
  3. cribl_control_plane/_hooks/clientcredentials.py +211 -0
  4. cribl_control_plane/_hooks/registration.py +13 -0
  5. cribl_control_plane/_hooks/sdkhooks.py +81 -0
  6. cribl_control_plane/_hooks/types.py +112 -0
  7. cribl_control_plane/_version.py +15 -0
  8. cribl_control_plane/auth_sdk.py +184 -0
  9. cribl_control_plane/basesdk.py +358 -0
  10. cribl_control_plane/errors/__init__.py +60 -0
  11. cribl_control_plane/errors/apierror.py +38 -0
  12. cribl_control_plane/errors/criblcontrolplaneerror.py +26 -0
  13. cribl_control_plane/errors/error.py +24 -0
  14. cribl_control_plane/errors/healthstatus_error.py +38 -0
  15. cribl_control_plane/errors/no_response_error.py +13 -0
  16. cribl_control_plane/errors/responsevalidationerror.py +25 -0
  17. cribl_control_plane/health.py +166 -0
  18. cribl_control_plane/httpclient.py +126 -0
  19. cribl_control_plane/models/__init__.py +7305 -0
  20. cribl_control_plane/models/addhectokenrequest.py +34 -0
  21. cribl_control_plane/models/authtoken.py +13 -0
  22. cribl_control_plane/models/createinputhectokenbyidop.py +45 -0
  23. cribl_control_plane/models/createinputop.py +24 -0
  24. cribl_control_plane/models/createoutputop.py +24 -0
  25. cribl_control_plane/models/createoutputtestbyidop.py +46 -0
  26. cribl_control_plane/models/criblevent.py +14 -0
  27. cribl_control_plane/models/deleteinputbyidop.py +37 -0
  28. cribl_control_plane/models/deleteoutputbyidop.py +37 -0
  29. cribl_control_plane/models/deleteoutputpqbyidop.py +36 -0
  30. cribl_control_plane/models/getinputbyidop.py +37 -0
  31. cribl_control_plane/models/getoutputbyidop.py +37 -0
  32. cribl_control_plane/models/getoutputpqbyidop.py +36 -0
  33. cribl_control_plane/models/getoutputsamplesbyidop.py +37 -0
  34. cribl_control_plane/models/healthstatus.py +36 -0
  35. cribl_control_plane/models/input.py +199 -0
  36. cribl_control_plane/models/inputappscope.py +448 -0
  37. cribl_control_plane/models/inputazureblob.py +308 -0
  38. cribl_control_plane/models/inputcollection.py +208 -0
  39. cribl_control_plane/models/inputconfluentcloud.py +585 -0
  40. cribl_control_plane/models/inputcribl.py +165 -0
  41. cribl_control_plane/models/inputcriblhttp.py +341 -0
  42. cribl_control_plane/models/inputcribllakehttp.py +342 -0
  43. cribl_control_plane/models/inputcriblmetrics.py +175 -0
  44. cribl_control_plane/models/inputcribltcp.py +299 -0
  45. cribl_control_plane/models/inputcrowdstrike.py +410 -0
  46. cribl_control_plane/models/inputdatadogagent.py +364 -0
  47. cribl_control_plane/models/inputdatagen.py +180 -0
  48. cribl_control_plane/models/inputedgeprometheus.py +551 -0
  49. cribl_control_plane/models/inputelastic.py +494 -0
  50. cribl_control_plane/models/inputeventhub.py +360 -0
  51. cribl_control_plane/models/inputexec.py +213 -0
  52. cribl_control_plane/models/inputfile.py +259 -0
  53. cribl_control_plane/models/inputfirehose.py +341 -0
  54. cribl_control_plane/models/inputgooglepubsub.py +247 -0
  55. cribl_control_plane/models/inputgrafana_union.py +1247 -0
  56. cribl_control_plane/models/inputhttp.py +403 -0
  57. cribl_control_plane/models/inputhttpraw.py +407 -0
  58. cribl_control_plane/models/inputjournalfiles.py +208 -0
  59. cribl_control_plane/models/inputkafka.py +581 -0
  60. cribl_control_plane/models/inputkinesis.py +363 -0
  61. cribl_control_plane/models/inputkubeevents.py +182 -0
  62. cribl_control_plane/models/inputkubelogs.py +256 -0
  63. cribl_control_plane/models/inputkubemetrics.py +233 -0
  64. cribl_control_plane/models/inputloki.py +468 -0
  65. cribl_control_plane/models/inputmetrics.py +290 -0
  66. cribl_control_plane/models/inputmodeldriventelemetry.py +274 -0
  67. cribl_control_plane/models/inputmsk.py +654 -0
  68. cribl_control_plane/models/inputnetflow.py +224 -0
  69. cribl_control_plane/models/inputoffice365mgmt.py +384 -0
  70. cribl_control_plane/models/inputoffice365msgtrace.py +449 -0
  71. cribl_control_plane/models/inputoffice365service.py +377 -0
  72. cribl_control_plane/models/inputopentelemetry.py +516 -0
  73. cribl_control_plane/models/inputprometheus.py +464 -0
  74. cribl_control_plane/models/inputprometheusrw.py +470 -0
  75. cribl_control_plane/models/inputrawudp.py +207 -0
  76. cribl_control_plane/models/inputs3.py +416 -0
  77. cribl_control_plane/models/inputs3inventory.py +440 -0
  78. cribl_control_plane/models/inputsecuritylake.py +425 -0
  79. cribl_control_plane/models/inputsnmp.py +274 -0
  80. cribl_control_plane/models/inputsplunk.py +387 -0
  81. cribl_control_plane/models/inputsplunkhec.py +478 -0
  82. cribl_control_plane/models/inputsplunksearch.py +537 -0
  83. cribl_control_plane/models/inputsqs.py +320 -0
  84. cribl_control_plane/models/inputsyslog_union.py +759 -0
  85. cribl_control_plane/models/inputsystemmetrics.py +533 -0
  86. cribl_control_plane/models/inputsystemstate.py +417 -0
  87. cribl_control_plane/models/inputtcp.py +359 -0
  88. cribl_control_plane/models/inputtcpjson.py +334 -0
  89. cribl_control_plane/models/inputwef.py +498 -0
  90. cribl_control_plane/models/inputwindowsmetrics.py +457 -0
  91. cribl_control_plane/models/inputwineventlogs.py +222 -0
  92. cribl_control_plane/models/inputwiz.py +334 -0
  93. cribl_control_plane/models/inputzscalerhec.py +439 -0
  94. cribl_control_plane/models/listinputop.py +24 -0
  95. cribl_control_plane/models/listoutputop.py +24 -0
  96. cribl_control_plane/models/logininfo.py +16 -0
  97. cribl_control_plane/models/output.py +229 -0
  98. cribl_control_plane/models/outputazureblob.py +471 -0
  99. cribl_control_plane/models/outputazuredataexplorer.py +660 -0
  100. cribl_control_plane/models/outputazureeventhub.py +321 -0
  101. cribl_control_plane/models/outputazurelogs.py +386 -0
  102. cribl_control_plane/models/outputclickhouse.py +650 -0
  103. cribl_control_plane/models/outputcloudwatch.py +273 -0
  104. cribl_control_plane/models/outputconfluentcloud.py +591 -0
  105. cribl_control_plane/models/outputcriblhttp.py +494 -0
  106. cribl_control_plane/models/outputcribllake.py +396 -0
  107. cribl_control_plane/models/outputcribltcp.py +387 -0
  108. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +410 -0
  109. cribl_control_plane/models/outputdatadog.py +472 -0
  110. cribl_control_plane/models/outputdataset.py +437 -0
  111. cribl_control_plane/models/outputdefault.py +55 -0
  112. cribl_control_plane/models/outputdevnull.py +50 -0
  113. cribl_control_plane/models/outputdiskspool.py +89 -0
  114. cribl_control_plane/models/outputdls3.py +560 -0
  115. cribl_control_plane/models/outputdynatracehttp.py +454 -0
  116. cribl_control_plane/models/outputdynatraceotlp.py +486 -0
  117. cribl_control_plane/models/outputelastic.py +494 -0
  118. cribl_control_plane/models/outputelasticcloud.py +407 -0
  119. cribl_control_plane/models/outputexabeam.py +297 -0
  120. cribl_control_plane/models/outputfilesystem.py +357 -0
  121. cribl_control_plane/models/outputgooglechronicle.py +486 -0
  122. cribl_control_plane/models/outputgooglecloudlogging.py +557 -0
  123. cribl_control_plane/models/outputgooglecloudstorage.py +499 -0
  124. cribl_control_plane/models/outputgooglepubsub.py +274 -0
  125. cribl_control_plane/models/outputgrafanacloud_union.py +1024 -0
  126. cribl_control_plane/models/outputgraphite.py +225 -0
  127. cribl_control_plane/models/outputhoneycomb.py +369 -0
  128. cribl_control_plane/models/outputhumiohec.py +389 -0
  129. cribl_control_plane/models/outputinfluxdb.py +523 -0
  130. cribl_control_plane/models/outputkafka.py +581 -0
  131. cribl_control_plane/models/outputkinesis.py +312 -0
  132. cribl_control_plane/models/outputloki.py +425 -0
  133. cribl_control_plane/models/outputminio.py +512 -0
  134. cribl_control_plane/models/outputmsk.py +654 -0
  135. cribl_control_plane/models/outputnetflow.py +80 -0
  136. cribl_control_plane/models/outputnewrelic.py +424 -0
  137. cribl_control_plane/models/outputnewrelicevents.py +401 -0
  138. cribl_control_plane/models/outputopentelemetry.py +669 -0
  139. cribl_control_plane/models/outputprometheus.py +485 -0
  140. cribl_control_plane/models/outputring.py +121 -0
  141. cribl_control_plane/models/outputrouter.py +83 -0
  142. cribl_control_plane/models/outputs3.py +556 -0
  143. cribl_control_plane/models/outputsamplesresponse.py +14 -0
  144. cribl_control_plane/models/outputsecuritylake.py +505 -0
  145. cribl_control_plane/models/outputsentinel.py +488 -0
  146. cribl_control_plane/models/outputsentineloneaisiem.py +505 -0
  147. cribl_control_plane/models/outputservicenow.py +543 -0
  148. cribl_control_plane/models/outputsignalfx.py +369 -0
  149. cribl_control_plane/models/outputsnmp.py +80 -0
  150. cribl_control_plane/models/outputsns.py +274 -0
  151. cribl_control_plane/models/outputsplunk.py +383 -0
  152. cribl_control_plane/models/outputsplunkhec.py +434 -0
  153. cribl_control_plane/models/outputsplunklb.py +558 -0
  154. cribl_control_plane/models/outputsqs.py +328 -0
  155. cribl_control_plane/models/outputstatsd.py +224 -0
  156. cribl_control_plane/models/outputstatsdext.py +225 -0
  157. cribl_control_plane/models/outputsumologic.py +378 -0
  158. cribl_control_plane/models/outputsyslog.py +415 -0
  159. cribl_control_plane/models/outputtcpjson.py +413 -0
  160. cribl_control_plane/models/outputtestrequest.py +15 -0
  161. cribl_control_plane/models/outputtestresponse.py +29 -0
  162. cribl_control_plane/models/outputwavefront.py +369 -0
  163. cribl_control_plane/models/outputwebhook.py +689 -0
  164. cribl_control_plane/models/outputxsiam.py +415 -0
  165. cribl_control_plane/models/schemeclientoauth.py +24 -0
  166. cribl_control_plane/models/security.py +36 -0
  167. cribl_control_plane/models/updatehectokenrequest.py +31 -0
  168. cribl_control_plane/models/updateinputbyidop.py +44 -0
  169. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +52 -0
  170. cribl_control_plane/models/updateoutputbyidop.py +44 -0
  171. cribl_control_plane/outputs.py +1615 -0
  172. cribl_control_plane/py.typed +1 -0
  173. cribl_control_plane/sdk.py +164 -0
  174. cribl_control_plane/sdkconfiguration.py +36 -0
  175. cribl_control_plane/sources.py +1355 -0
  176. cribl_control_plane/types/__init__.py +21 -0
  177. cribl_control_plane/types/basemodel.py +39 -0
  178. cribl_control_plane/utils/__init__.py +187 -0
  179. cribl_control_plane/utils/annotations.py +55 -0
  180. cribl_control_plane/utils/datetimes.py +23 -0
  181. cribl_control_plane/utils/enums.py +74 -0
  182. cribl_control_plane/utils/eventstreaming.py +238 -0
  183. cribl_control_plane/utils/forms.py +223 -0
  184. cribl_control_plane/utils/headers.py +136 -0
  185. cribl_control_plane/utils/logger.py +27 -0
  186. cribl_control_plane/utils/metadata.py +118 -0
  187. cribl_control_plane/utils/queryparams.py +205 -0
  188. cribl_control_plane/utils/requestbodies.py +66 -0
  189. cribl_control_plane/utils/retries.py +217 -0
  190. cribl_control_plane/utils/security.py +207 -0
  191. cribl_control_plane/utils/serializers.py +249 -0
  192. cribl_control_plane/utils/unmarshal_json_response.py +24 -0
  193. cribl_control_plane/utils/url.py +155 -0
  194. cribl_control_plane/utils/values.py +137 -0
  195. cribl_control_plane-0.0.13.dist-info/METADATA +489 -0
  196. cribl_control_plane-0.0.13.dist-info/RECORD +197 -0
  197. cribl_control_plane-0.0.13.dist-info/WHEEL +4 -0
@@ -0,0 +1 @@
1
+ # Marker file for PEP 561. The package enables type hints.
@@ -0,0 +1,164 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from .basesdk import BaseSDK
4
+ from .httpclient import AsyncHttpClient, ClientOwner, HttpClient, close_clients
5
+ from .sdkconfiguration import SDKConfiguration
6
+ from .utils.logger import Logger, get_default_logger
7
+ from .utils.retries import RetryConfig
8
+ from cribl_control_plane import models
9
+ from cribl_control_plane._hooks import SDKHooks
10
+ from cribl_control_plane.types import OptionalNullable, UNSET
11
+ import httpx
12
+ import importlib
13
+ from typing import Callable, Optional, TYPE_CHECKING, Union, cast
14
+ import weakref
15
+
16
+ if TYPE_CHECKING:
17
+ from cribl_control_plane.auth_sdk import AuthSDK
18
+ from cribl_control_plane.health import Health
19
+ from cribl_control_plane.outputs import Outputs
20
+ from cribl_control_plane.sources import Sources
21
+
22
+
23
+ class CriblControlPlane(BaseSDK):
24
+ r"""Cribl API Reference: This API Reference lists available REST endpoints, along with their supported operations for accessing, creating, updating, or deleting resources. See our complementary product documentation at [docs.cribl.io](http://docs.cribl.io)."""
25
+
26
+ sources: "Sources"
27
+ r"""Actions related to Sources"""
28
+ outputs: "Outputs"
29
+ r"""Actions related to outputs"""
30
+ auth: "AuthSDK"
31
+ r"""Actions related to authentication. Do not use the /auth endpoints in Cribl.Cloud deployments. Instead, follow the instructions at https://docs.cribl.io/stream/api-tutorials/#criblcloud to authenticate for Cribl.Cloud."""
32
+ health: "Health"
33
+ r"""Actions related to REST server health"""
34
+ _sub_sdk_map = {
35
+ "sources": ("cribl_control_plane.sources", "Sources"),
36
+ "outputs": ("cribl_control_plane.outputs", "Outputs"),
37
+ "auth": ("cribl_control_plane.auth_sdk", "AuthSDK"),
38
+ "health": ("cribl_control_plane.health", "Health"),
39
+ }
40
+
41
+ def __init__(
42
+ self,
43
+ server_url: str,
44
+ security: Optional[
45
+ Union[models.Security, Callable[[], models.Security]]
46
+ ] = None,
47
+ client: Optional[HttpClient] = None,
48
+ async_client: Optional[AsyncHttpClient] = None,
49
+ retry_config: OptionalNullable[RetryConfig] = UNSET,
50
+ timeout_ms: Optional[int] = None,
51
+ debug_logger: Optional[Logger] = None,
52
+ ) -> None:
53
+ r"""Instantiates the SDK configuring it with the provided parameters.
54
+
55
+ :param security: The security details required for authentication
56
+ :param server_idx: The index of the server to use for all methods
57
+ :param server_url: The server URL to use for all methods
58
+ :param url_params: Parameters to optionally template the server URL with
59
+ :param client: The HTTP client to use for all synchronous methods
60
+ :param async_client: The Async HTTP client to use for all asynchronous methods
61
+ :param retry_config: The retry configuration to use for all supported methods
62
+ :param timeout_ms: Optional request timeout applied to each operation in milliseconds
63
+ """
64
+ client_supplied = True
65
+ if client is None:
66
+ client = httpx.Client()
67
+ client_supplied = False
68
+
69
+ assert issubclass(
70
+ type(client), HttpClient
71
+ ), "The provided client must implement the HttpClient protocol."
72
+
73
+ async_client_supplied = True
74
+ if async_client is None:
75
+ async_client = httpx.AsyncClient()
76
+ async_client_supplied = False
77
+
78
+ if debug_logger is None:
79
+ debug_logger = get_default_logger()
80
+
81
+ assert issubclass(
82
+ type(async_client), AsyncHttpClient
83
+ ), "The provided async_client must implement the AsyncHttpClient protocol."
84
+
85
+ BaseSDK.__init__(
86
+ self,
87
+ SDKConfiguration(
88
+ client=client,
89
+ client_supplied=client_supplied,
90
+ async_client=async_client,
91
+ async_client_supplied=async_client_supplied,
92
+ security=security,
93
+ server_url=server_url,
94
+ retry_config=retry_config,
95
+ timeout_ms=timeout_ms,
96
+ debug_logger=debug_logger,
97
+ ),
98
+ )
99
+
100
+ hooks = SDKHooks()
101
+
102
+ # pylint: disable=protected-access
103
+ self.sdk_configuration.__dict__["_hooks"] = hooks
104
+
105
+ self.sdk_configuration = hooks.sdk_init(self.sdk_configuration)
106
+
107
+ weakref.finalize(
108
+ self,
109
+ close_clients,
110
+ cast(ClientOwner, self.sdk_configuration),
111
+ self.sdk_configuration.client,
112
+ self.sdk_configuration.client_supplied,
113
+ self.sdk_configuration.async_client,
114
+ self.sdk_configuration.async_client_supplied,
115
+ )
116
+
117
+ def __getattr__(self, name: str):
118
+ if name in self._sub_sdk_map:
119
+ module_path, class_name = self._sub_sdk_map[name]
120
+ try:
121
+ module = importlib.import_module(module_path)
122
+ klass = getattr(module, class_name)
123
+ instance = klass(self.sdk_configuration)
124
+ setattr(self, name, instance)
125
+ return instance
126
+ except ImportError as e:
127
+ raise AttributeError(
128
+ f"Failed to import module {module_path} for attribute {name}: {e}"
129
+ ) from e
130
+ except AttributeError as e:
131
+ raise AttributeError(
132
+ f"Failed to find class {class_name} in module {module_path} for attribute {name}: {e}"
133
+ ) from e
134
+
135
+ raise AttributeError(
136
+ f"'{type(self).__name__}' object has no attribute '{name}'"
137
+ )
138
+
139
+ def __dir__(self):
140
+ default_attrs = list(super().__dir__())
141
+ lazy_attrs = list(self._sub_sdk_map.keys())
142
+ return sorted(list(set(default_attrs + lazy_attrs)))
143
+
144
+ def __enter__(self):
145
+ return self
146
+
147
+ async def __aenter__(self):
148
+ return self
149
+
150
+ def __exit__(self, exc_type, exc_val, exc_tb):
151
+ if (
152
+ self.sdk_configuration.client is not None
153
+ and not self.sdk_configuration.client_supplied
154
+ ):
155
+ self.sdk_configuration.client.close()
156
+ self.sdk_configuration.client = None
157
+
158
+ async def __aexit__(self, exc_type, exc_val, exc_tb):
159
+ if (
160
+ self.sdk_configuration.async_client is not None
161
+ and not self.sdk_configuration.async_client_supplied
162
+ ):
163
+ await self.sdk_configuration.async_client.aclose()
164
+ self.sdk_configuration.async_client = None
@@ -0,0 +1,36 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from ._version import (
4
+ __gen_version__,
5
+ __openapi_doc_version__,
6
+ __user_agent__,
7
+ __version__,
8
+ )
9
+ from .httpclient import AsyncHttpClient, HttpClient
10
+ from .utils import Logger, RetryConfig, remove_suffix
11
+ from cribl_control_plane import models
12
+ from cribl_control_plane.types import OptionalNullable, UNSET
13
+ from dataclasses import dataclass
14
+ from pydantic import Field
15
+ from typing import Callable, Dict, Optional, Tuple, Union
16
+
17
+
18
+ @dataclass
19
+ class SDKConfiguration:
20
+ client: Union[HttpClient, None]
21
+ client_supplied: bool
22
+ async_client: Union[AsyncHttpClient, None]
23
+ async_client_supplied: bool
24
+ debug_logger: Logger
25
+ server_url: str
26
+ security: Optional[Union[models.Security, Callable[[], models.Security]]] = None
27
+ language: str = "python"
28
+ openapi_doc_version: str = __openapi_doc_version__
29
+ sdk_version: str = __version__
30
+ gen_version: str = __gen_version__
31
+ user_agent: str = __user_agent__
32
+ retry_config: OptionalNullable[RetryConfig] = Field(default_factory=lambda: UNSET)
33
+ timeout_ms: Optional[int] = None
34
+
35
+ def get_server_details(self) -> Tuple[str, Dict[str, str]]:
36
+ return remove_suffix(self.server_url, "/"), {}