stackit-observability 0.9.0__tar.gz → 0.9.2__tar.gz
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.
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/PKG-INFO +1 -1
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/pyproject.toml +1 -1
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/__init__.py +4 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/__init__.py +3 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/instance_sensitive_data.py +3 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_configs_payload_global.py +1 -1
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_configs_payload_route.py +4 -10
- stackit_observability-0.9.2/src/stackit/observability/models/update_alert_configs_payload_route_routes_inner.py +128 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/LICENSE.md +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/NOTICE.txt +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/README.md +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/api/__init__.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/api/default_api.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/api_client.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/api_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/configuration.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/exceptions.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_config_receivers_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_config_route_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_group.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_group_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_groups_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_rule.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_rule_record.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/alert_rules_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/basic_auth.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alert_config_receiver_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alert_config_receiver_payload_email_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alert_config_receiver_payload_opsgenie_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alert_config_receiver_payload_web_hook_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alert_config_route_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alert_config_route_payload_routes_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alertgroups_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_alertrules_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_credentials_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_credentials_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_instance_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_instance_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_logs_alertgroups_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload_basic_auth.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload_http_sd_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload_http_sd_configs_inner_oauth2.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload_http_sd_configs_inner_oauth2_tls_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload_metrics_relabel_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/create_scrape_config_payload_static_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/credentials.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/credentials_remote_write_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/credentials_remote_write_delete_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/delete_scrape_config_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/email_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/error.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/get_alert_configs_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/get_credentials_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/get_instance_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/get_metrics_storage_retention_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/get_scrape_config_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/grafana_configs.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/grafana_oauth.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/http_service_sd.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/inhibit_rules.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/instance.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/instance_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/job.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/list_acl_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/list_credentials_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/list_instances_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/list_scrape_configs_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/logs_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/logs_config_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/message.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/metrics_relabel_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/model_global.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/o_auth2.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/opsgenie_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/permission_denied.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/plan.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/plan_model.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/plans_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/project_instance_full.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/receiver.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/receivers.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/route.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/route_serializer.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/scrape_configs_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/service_keys_list.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/static_configs.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/tls_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/trace_config.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/traces_config_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_acl_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_config_receiver_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_config_route_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_configs_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_configs_payload_inhibit_rules.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_configs_payload_receivers_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alert_configs_response.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alertgroup_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alertgroups_request_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_alertgroups_request_inner_rules_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_credentials_remote_write_config_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_grafana_configs_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_grafana_configs_payload_generic_oauth.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_instance_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_logs_alertgroup_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_logs_configs_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_metrics_storage_retention_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_scrape_config_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_scrape_config_payload_static_configs_inner.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/update_traces_configs_payload.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/web_hook.py +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/py.typed +0 -0
- {stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/rest.py +0 -0
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/__init__.py
RENAMED
|
@@ -112,6 +112,7 @@ __all__ = [
|
|
|
112
112
|
"UpdateAlertConfigsPayloadInhibitRules",
|
|
113
113
|
"UpdateAlertConfigsPayloadReceiversInner",
|
|
114
114
|
"UpdateAlertConfigsPayloadRoute",
|
|
115
|
+
"UpdateAlertConfigsPayloadRouteRoutesInner",
|
|
115
116
|
"UpdateAlertConfigsResponse",
|
|
116
117
|
"UpdateAlertgroupPayload",
|
|
117
118
|
"UpdateAlertgroupsRequestInner",
|
|
@@ -343,6 +344,9 @@ from stackit.observability.models.update_alert_configs_payload_receivers_inner i
|
|
|
343
344
|
from stackit.observability.models.update_alert_configs_payload_route import (
|
|
344
345
|
UpdateAlertConfigsPayloadRoute as UpdateAlertConfigsPayloadRoute,
|
|
345
346
|
)
|
|
347
|
+
from stackit.observability.models.update_alert_configs_payload_route_routes_inner import (
|
|
348
|
+
UpdateAlertConfigsPayloadRouteRoutesInner as UpdateAlertConfigsPayloadRouteRoutesInner,
|
|
349
|
+
)
|
|
346
350
|
from stackit.observability.models.update_alert_configs_response import (
|
|
347
351
|
UpdateAlertConfigsResponse as UpdateAlertConfigsResponse,
|
|
348
352
|
)
|
|
@@ -168,6 +168,9 @@ from stackit.observability.models.update_alert_configs_payload_receivers_inner i
|
|
|
168
168
|
from stackit.observability.models.update_alert_configs_payload_route import (
|
|
169
169
|
UpdateAlertConfigsPayloadRoute,
|
|
170
170
|
)
|
|
171
|
+
from stackit.observability.models.update_alert_configs_payload_route_routes_inner import (
|
|
172
|
+
UpdateAlertConfigsPayloadRouteRoutesInner,
|
|
173
|
+
)
|
|
171
174
|
from stackit.observability.models.update_alert_configs_response import (
|
|
172
175
|
UpdateAlertConfigsResponse,
|
|
173
176
|
)
|
|
@@ -42,6 +42,7 @@ class InstanceSensitiveData(BaseModel):
|
|
|
42
42
|
jaeger_ui_url: Annotated[str, Field(min_length=1, strict=True)] = Field(alias="jaegerUiUrl")
|
|
43
43
|
logs_push_url: Annotated[str, Field(min_length=1, strict=True)] = Field(alias="logsPushUrl")
|
|
44
44
|
logs_url: Annotated[str, Field(min_length=1, strict=True)] = Field(alias="logsUrl")
|
|
45
|
+
metrics_endpoint_url: Annotated[str, Field(min_length=1, strict=True)] = Field(alias="metricsEndpointUrl")
|
|
45
46
|
metrics_retention_time1h: Annotated[int, Field(strict=True, ge=0)] = Field(alias="metricsRetentionTime1h")
|
|
46
47
|
metrics_retention_time5m: Annotated[int, Field(strict=True, ge=0)] = Field(alias="metricsRetentionTime5m")
|
|
47
48
|
metrics_retention_time_raw: Annotated[int, Field(strict=True, ge=0)] = Field(alias="metricsRetentionTimeRaw")
|
|
@@ -66,6 +67,7 @@ class InstanceSensitiveData(BaseModel):
|
|
|
66
67
|
"jaegerUiUrl",
|
|
67
68
|
"logsPushUrl",
|
|
68
69
|
"logsUrl",
|
|
70
|
+
"metricsEndpointUrl",
|
|
69
71
|
"metricsRetentionTime1h",
|
|
70
72
|
"metricsRetentionTime5m",
|
|
71
73
|
"metricsRetentionTimeRaw",
|
|
@@ -144,6 +146,7 @@ class InstanceSensitiveData(BaseModel):
|
|
|
144
146
|
"jaegerUiUrl": obj.get("jaegerUiUrl"),
|
|
145
147
|
"logsPushUrl": obj.get("logsPushUrl"),
|
|
146
148
|
"logsUrl": obj.get("logsUrl"),
|
|
149
|
+
"metricsEndpointUrl": obj.get("metricsEndpointUrl"),
|
|
147
150
|
"metricsRetentionTime1h": obj.get("metricsRetentionTime1h"),
|
|
148
151
|
"metricsRetentionTime5m": obj.get("metricsRetentionTime5m"),
|
|
149
152
|
"metricsRetentionTimeRaw": obj.get("metricsRetentionTimeRaw"),
|
|
@@ -24,7 +24,7 @@ from typing_extensions import Annotated, Self
|
|
|
24
24
|
|
|
25
25
|
class UpdateAlertConfigsPayloadGlobal(BaseModel):
|
|
26
26
|
"""
|
|
27
|
-
Global config. If nothing passed the default argus config will be used.
|
|
27
|
+
Global config. If nothing passed the default argus config will be used. It is only possible to update the entire global part, not individual attributes.
|
|
28
28
|
""" # noqa: E501
|
|
29
29
|
|
|
30
30
|
opsgenie_api_key: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=200)]] = Field(
|
|
@@ -21,8 +21,8 @@ from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
|
21
21
|
from pydantic import BaseModel, ConfigDict, Field, StrictBool
|
|
22
22
|
from typing_extensions import Annotated, Self
|
|
23
23
|
|
|
24
|
-
from stackit.observability.models.
|
|
25
|
-
|
|
24
|
+
from stackit.observability.models.update_alert_configs_payload_route_routes_inner import (
|
|
25
|
+
UpdateAlertConfigsPayloadRouteRoutesInner,
|
|
26
26
|
)
|
|
27
27
|
|
|
28
28
|
|
|
@@ -60,10 +60,6 @@ class UpdateAlertConfigsPayloadRoute(BaseModel):
|
|
|
60
60
|
description="map of key:value. A set of regex-matchers an alert has to fulfill to match the node. `Additional Validators:` * should not contain more than 5 keys * each key and value should not be longer than 200 characters",
|
|
61
61
|
alias="matchRe",
|
|
62
62
|
)
|
|
63
|
-
matchers: Optional[List[Annotated[str, Field(min_length=1, strict=True, max_length=200)]]] = Field(
|
|
64
|
-
default=None,
|
|
65
|
-
description="A list of matchers that an alert has to fulfill to match the node. A matcher is a string with a syntax inspired by PromQL and OpenMetrics. The syntax of a matcher consists of three tokens: * A valid Prometheus label name. * One of =, !=, =~, or !~. = means equals, != means that the strings are not equal, =~ is used for equality of regex expressions and !~ is used for un-equality of regex expressions. They have the same meaning as known from PromQL selectors. * A UTF-8 string, which may be enclosed in double quotes. Before or after each token, there may be any amount of whitespace. `Additional Validators:` * should not contain more than 5 keys * each key and value should not be longer than 200 characters",
|
|
66
|
-
)
|
|
67
63
|
receiver: Annotated[str, Field(min_length=1, strict=True, max_length=200)] = Field(
|
|
68
64
|
description="Receiver that should be one item of receivers `Additional Validators:` * must be a in name of receivers"
|
|
69
65
|
)
|
|
@@ -72,7 +68,7 @@ class UpdateAlertConfigsPayloadRoute(BaseModel):
|
|
|
72
68
|
description="How long to wait before sending a notification again if it has already been sent successfully for an alert. (Usually ~3h or more). `Additional Validators:` * must be a valid time format",
|
|
73
69
|
alias="repeatInterval",
|
|
74
70
|
)
|
|
75
|
-
routes: Optional[List[
|
|
71
|
+
routes: Optional[List[UpdateAlertConfigsPayloadRouteRoutesInner]] = Field(
|
|
76
72
|
default=None, description="Zero or more child routes."
|
|
77
73
|
)
|
|
78
74
|
__properties: ClassVar[List[str]] = [
|
|
@@ -82,7 +78,6 @@ class UpdateAlertConfigsPayloadRoute(BaseModel):
|
|
|
82
78
|
"groupWait",
|
|
83
79
|
"match",
|
|
84
80
|
"matchRe",
|
|
85
|
-
"matchers",
|
|
86
81
|
"receiver",
|
|
87
82
|
"repeatInterval",
|
|
88
83
|
"routes",
|
|
@@ -151,11 +146,10 @@ class UpdateAlertConfigsPayloadRoute(BaseModel):
|
|
|
151
146
|
"groupWait": obj.get("groupWait") if obj.get("groupWait") is not None else "30s",
|
|
152
147
|
"match": obj.get("match"),
|
|
153
148
|
"matchRe": obj.get("matchRe"),
|
|
154
|
-
"matchers": obj.get("matchers"),
|
|
155
149
|
"receiver": obj.get("receiver"),
|
|
156
150
|
"repeatInterval": obj.get("repeatInterval") if obj.get("repeatInterval") is not None else "4h",
|
|
157
151
|
"routes": (
|
|
158
|
-
[
|
|
152
|
+
[UpdateAlertConfigsPayloadRouteRoutesInner.from_dict(_item) for _item in obj["routes"]]
|
|
159
153
|
if obj.get("routes") is not None
|
|
160
154
|
else None
|
|
161
155
|
),
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
STACKIT Observability API
|
|
5
|
+
|
|
6
|
+
API endpoints for Observability on STACKIT
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.1.1
|
|
9
|
+
Contact: stackit-argus@mail.schwarz
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
|
|
17
|
+
import json
|
|
18
|
+
import pprint
|
|
19
|
+
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool
|
|
22
|
+
from typing_extensions import Annotated, Self
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class UpdateAlertConfigsPayloadRouteRoutesInner(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
As in one level above
|
|
28
|
+
""" # noqa: E501
|
|
29
|
+
|
|
30
|
+
var_continue: Optional[StrictBool] = Field(default=False, description="As in one level above", alias="continue")
|
|
31
|
+
group_by: Optional[List[Annotated[str, Field(min_length=1, strict=True, max_length=200)]]] = Field(
|
|
32
|
+
default=None, alias="groupBy"
|
|
33
|
+
)
|
|
34
|
+
group_interval: Optional[Annotated[str, Field(min_length=2, strict=True, max_length=8)]] = Field(
|
|
35
|
+
default=None, description="As in one level above", alias="groupInterval"
|
|
36
|
+
)
|
|
37
|
+
group_wait: Optional[Annotated[str, Field(strict=True, max_length=8)]] = Field(
|
|
38
|
+
default=None, description="As in one level above", alias="groupWait"
|
|
39
|
+
)
|
|
40
|
+
match: Optional[Dict[str, Any]] = Field(default=None, description="As in one level above")
|
|
41
|
+
match_re: Optional[Dict[str, Any]] = Field(default=None, description="As in one level above", alias="matchRe")
|
|
42
|
+
matchers: Optional[List[Annotated[str, Field(min_length=1, strict=True, max_length=200)]]] = Field(
|
|
43
|
+
default=None,
|
|
44
|
+
description="A list of matchers that an alert has to fulfill to match the node. A matcher is a string with a syntax inspired by PromQL and OpenMetrics. The syntax of a matcher consists of three tokens: * A valid Prometheus label name. * One of =, !=, =~, or !~. = means equals, != means that the strings are not equal, =~ is used for equality of regex expressions and !~ is used for un-equality of regex expressions. They have the same meaning as known from PromQL selectors. * A UTF-8 string, which may be enclosed in double quotes. Before or after each token, there may be any amount of whitespace. `Additional Validators:` * should not contain more than 5 keys * each key and value should not be longer than 200 characters",
|
|
45
|
+
)
|
|
46
|
+
receiver: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=100)]] = Field(
|
|
47
|
+
default=None, description="As in one level above"
|
|
48
|
+
)
|
|
49
|
+
repeat_interval: Optional[Annotated[str, Field(min_length=2, strict=True, max_length=8)]] = Field(
|
|
50
|
+
default=None, description="As in one level above", alias="repeatInterval"
|
|
51
|
+
)
|
|
52
|
+
routes: Optional[List[Dict[str, Any]]] = Field(default=None, description="Another child routes")
|
|
53
|
+
__properties: ClassVar[List[str]] = [
|
|
54
|
+
"continue",
|
|
55
|
+
"groupBy",
|
|
56
|
+
"groupInterval",
|
|
57
|
+
"groupWait",
|
|
58
|
+
"match",
|
|
59
|
+
"matchRe",
|
|
60
|
+
"matchers",
|
|
61
|
+
"receiver",
|
|
62
|
+
"repeatInterval",
|
|
63
|
+
"routes",
|
|
64
|
+
]
|
|
65
|
+
|
|
66
|
+
model_config = ConfigDict(
|
|
67
|
+
populate_by_name=True,
|
|
68
|
+
validate_assignment=True,
|
|
69
|
+
protected_namespaces=(),
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
def to_str(self) -> str:
|
|
73
|
+
"""Returns the string representation of the model using alias"""
|
|
74
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
75
|
+
|
|
76
|
+
def to_json(self) -> str:
|
|
77
|
+
"""Returns the JSON representation of the model using alias"""
|
|
78
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
79
|
+
return json.dumps(self.to_dict())
|
|
80
|
+
|
|
81
|
+
@classmethod
|
|
82
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
83
|
+
"""Create an instance of UpdateAlertConfigsPayloadRouteRoutesInner from a JSON string"""
|
|
84
|
+
return cls.from_dict(json.loads(json_str))
|
|
85
|
+
|
|
86
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
87
|
+
"""Return the dictionary representation of the model using alias.
|
|
88
|
+
|
|
89
|
+
This has the following differences from calling pydantic's
|
|
90
|
+
`self.model_dump(by_alias=True)`:
|
|
91
|
+
|
|
92
|
+
* `None` is only added to the output dict for nullable fields that
|
|
93
|
+
were set at model initialization. Other fields with value `None`
|
|
94
|
+
are ignored.
|
|
95
|
+
"""
|
|
96
|
+
excluded_fields: Set[str] = set([])
|
|
97
|
+
|
|
98
|
+
_dict = self.model_dump(
|
|
99
|
+
by_alias=True,
|
|
100
|
+
exclude=excluded_fields,
|
|
101
|
+
exclude_none=True,
|
|
102
|
+
)
|
|
103
|
+
return _dict
|
|
104
|
+
|
|
105
|
+
@classmethod
|
|
106
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
107
|
+
"""Create an instance of UpdateAlertConfigsPayloadRouteRoutesInner from a dict"""
|
|
108
|
+
if obj is None:
|
|
109
|
+
return None
|
|
110
|
+
|
|
111
|
+
if not isinstance(obj, dict):
|
|
112
|
+
return cls.model_validate(obj)
|
|
113
|
+
|
|
114
|
+
_obj = cls.model_validate(
|
|
115
|
+
{
|
|
116
|
+
"continue": obj.get("continue") if obj.get("continue") is not None else False,
|
|
117
|
+
"groupBy": obj.get("groupBy"),
|
|
118
|
+
"groupInterval": obj.get("groupInterval"),
|
|
119
|
+
"groupWait": obj.get("groupWait"),
|
|
120
|
+
"match": obj.get("match"),
|
|
121
|
+
"matchRe": obj.get("matchRe"),
|
|
122
|
+
"matchers": obj.get("matchers"),
|
|
123
|
+
"receiver": obj.get("receiver"),
|
|
124
|
+
"repeatInterval": obj.get("repeatInterval"),
|
|
125
|
+
"routes": obj.get("routes"),
|
|
126
|
+
}
|
|
127
|
+
)
|
|
128
|
+
return _obj
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/api_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/job.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/models/plan.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/py.typed
RENAMED
|
File without changes
|
{stackit_observability-0.9.0 → stackit_observability-0.9.2}/src/stackit/observability/rest.py
RENAMED
|
File without changes
|