Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit2e747b4

Browse files
Generate observability
1 parent23b3304 commit2e747b4

11 files changed

+282
-40
lines changed

‎services/observability/src/stackit/observability/__init__.py‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
"CreateInstancePayload",
5757
"CreateInstanceResponse",
5858
"CreateLogsAlertgroupsPayload",
59+
"CreateLogsAlertgroupsPayloadRulesInner",
5960
"CreateScrapeConfigPayload",
6061
"CreateScrapeConfigPayloadBasicAuth",
6162
"CreateScrapeConfigPayloadHttpSdConfigsInner",
@@ -95,6 +96,7 @@
9596
"ModelGlobal",
9697
"OAuth2",
9798
"OpsgenieConfig",
99+
"PartialUpdateAlertrulesRequestInner",
98100
"PermissionDenied",
99101
"Plan",
100102
"PlanModel",
@@ -224,6 +226,9 @@
224226
fromstackit.observability.models.create_logs_alertgroups_payloadimport (
225227
CreateLogsAlertgroupsPayloadasCreateLogsAlertgroupsPayload,
226228
)
229+
fromstackit.observability.models.create_logs_alertgroups_payload_rules_innerimport (
230+
CreateLogsAlertgroupsPayloadRulesInnerasCreateLogsAlertgroupsPayloadRulesInner,
231+
)
227232
fromstackit.observability.models.create_scrape_config_payloadimport (
228233
CreateScrapeConfigPayloadasCreateScrapeConfigPayload,
229234
)
@@ -317,6 +322,9 @@
317322
fromstackit.observability.models.opsgenie_configimport (
318323
OpsgenieConfigasOpsgenieConfig,
319324
)
325+
fromstackit.observability.models.partial_update_alertrules_request_innerimport (
326+
PartialUpdateAlertrulesRequestInnerasPartialUpdateAlertrulesRequestInner,
327+
)
320328
fromstackit.observability.models.permission_deniedimport (
321329
PermissionDeniedasPermissionDenied,
322330
)

‎services/observability/src/stackit/observability/api/default_api.py‎

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,9 @@
9595
)
9696
from stackit.observability.models.logs_config_response import LogsConfigResponse
9797
from stackit.observability.models.message import Message
98+
from stackit.observability.models.partial_update_alertrules_request_inner import (
99+
PartialUpdateAlertrulesRequestInner,
100+
)
98101
from stackit.observability.models.plans_response import PlansResponse
99102
from stackit.observability.models.receiver import Receiver
100103
from stackit.observability.models.scrape_configs_response import ScrapeConfigsResponse
@@ -118,9 +121,6 @@
118121
from stackit.observability.models.update_alertgroups_request_inner import (
119122
UpdateAlertgroupsRequestInner,
120123
)
121-
from stackit.observability.models.update_alertgroups_request_inner_rules_inner import (
122-
UpdateAlertgroupsRequestInnerRulesInner,
123-
)
124124
from stackit.observability.models.update_credentials_remote_write_config_payload import (
125125
UpdateCredentialsRemoteWriteConfigPayload,
126126
)
@@ -12509,7 +12509,7 @@ def partial_update_alertrules(
1250912509
group_name: StrictStr,
1251012510
instance_id: StrictStr,
1251112511
project_id: StrictStr,
12512-
update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner],
12512+
partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner],
1251312513
_request_timeout: Union[
1251412514
None,
1251512515
Annotated[StrictFloat, Field(gt=0)],
@@ -12530,8 +12530,8 @@ def partial_update_alertrules(
1253012530
:type instance_id: str
1253112531
:param project_id: (required)
1253212532
:type project_id: str
12533-
:paramupdate_alertgroups_request_inner_rules_inner: (required)
12534-
:typeupdate_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner]
12533+
:parampartial_update_alertrules_request_inner: (required)
12534+
:typepartial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner]
1253512535
:param _request_timeout: timeout setting for this request. If one
1253612536
number provided, it will be total request
1253712537
timeout. It can also be a pair (tuple) of
@@ -12558,7 +12558,7 @@ def partial_update_alertrules(
1255812558
group_name=group_name,
1255912559
instance_id=instance_id,
1256012560
project_id=project_id,
12561-
update_alertgroups_request_inner_rules_inner=update_alertgroups_request_inner_rules_inner,
12561+
partial_update_alertrules_request_inner=partial_update_alertrules_request_inner,
1256212562
_request_auth=_request_auth,
1256312563
_content_type=_content_type,
1256412564
_headers=_headers,
@@ -12583,7 +12583,7 @@ def partial_update_alertrules_with_http_info(
1258312583
group_name: StrictStr,
1258412584
instance_id: StrictStr,
1258512585
project_id: StrictStr,
12586-
update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner],
12586+
partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner],
1258712587
_request_timeout: Union[
1258812588
None,
1258912589
Annotated[StrictFloat, Field(gt=0)],
@@ -12604,8 +12604,8 @@ def partial_update_alertrules_with_http_info(
1260412604
:type instance_id: str
1260512605
:param project_id: (required)
1260612606
:type project_id: str
12607-
:paramupdate_alertgroups_request_inner_rules_inner: (required)
12608-
:typeupdate_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner]
12607+
:parampartial_update_alertrules_request_inner: (required)
12608+
:typepartial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner]
1260912609
:param _request_timeout: timeout setting for this request. If one
1261012610
number provided, it will be total request
1261112611
timeout. It can also be a pair (tuple) of
@@ -12632,7 +12632,7 @@ def partial_update_alertrules_with_http_info(
1263212632
group_name=group_name,
1263312633
instance_id=instance_id,
1263412634
project_id=project_id,
12635-
update_alertgroups_request_inner_rules_inner=update_alertgroups_request_inner_rules_inner,
12635+
partial_update_alertrules_request_inner=partial_update_alertrules_request_inner,
1263612636
_request_auth=_request_auth,
1263712637
_content_type=_content_type,
1263812638
_headers=_headers,
@@ -12657,7 +12657,7 @@ def partial_update_alertrules_without_preload_content(
1265712657
group_name: StrictStr,
1265812658
instance_id: StrictStr,
1265912659
project_id: StrictStr,
12660-
update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner],
12660+
partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner],
1266112661
_request_timeout: Union[
1266212662
None,
1266312663
Annotated[StrictFloat, Field(gt=0)],
@@ -12678,8 +12678,8 @@ def partial_update_alertrules_without_preload_content(
1267812678
:type instance_id: str
1267912679
:param project_id: (required)
1268012680
:type project_id: str
12681-
:paramupdate_alertgroups_request_inner_rules_inner: (required)
12682-
:typeupdate_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner]
12681+
:parampartial_update_alertrules_request_inner: (required)
12682+
:typepartial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner]
1268312683
:param _request_timeout: timeout setting for this request. If one
1268412684
number provided, it will be total request
1268512685
timeout. It can also be a pair (tuple) of
@@ -12706,7 +12706,7 @@ def partial_update_alertrules_without_preload_content(
1270612706
group_name=group_name,
1270712707
instance_id=instance_id,
1270812708
project_id=project_id,
12709-
update_alertgroups_request_inner_rules_inner=update_alertgroups_request_inner_rules_inner,
12709+
partial_update_alertrules_request_inner=partial_update_alertrules_request_inner,
1271012710
_request_auth=_request_auth,
1271112711
_content_type=_content_type,
1271212712
_headers=_headers,
@@ -12726,7 +12726,7 @@ def _partial_update_alertrules_serialize(
1272612726
group_name,
1272712727
instance_id,
1272812728
project_id,
12729-
update_alertgroups_request_inner_rules_inner,
12729+
partial_update_alertrules_request_inner,
1273012730
_request_auth,
1273112731
_content_type,
1273212732
_headers,
@@ -12736,7 +12736,7 @@ def _partial_update_alertrules_serialize(
1273612736
_host = None
1273712737

1273812738
_collection_formats: Dict[str, str] = {
12739-
"UpdateAlertgroupsRequestInnerRulesInner": "",
12739+
"PartialUpdateAlertrulesRequestInner": "",
1274012740
}
1274112741

1274212742
_path_params: Dict[str, str] = {}
@@ -12757,8 +12757,8 @@ def _partial_update_alertrules_serialize(
1275712757
# process the header parameters
1275812758
# process the form parameters
1275912759
# process the body parameter
12760-
ifupdate_alertgroups_request_inner_rules_inner is not None:
12761-
_body_params =update_alertgroups_request_inner_rules_inner
12760+
ifpartial_update_alertrules_request_inner is not None:
12761+
_body_params =partial_update_alertrules_request_inner
1276212762

1276312763
# set the HTTP header `Accept`
1276412764
if "Accept" not in _header_params:

‎services/observability/src/stackit/observability/models/__init__.py‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@
7474
fromstackit.observability.models.create_logs_alertgroups_payloadimport (
7575
CreateLogsAlertgroupsPayload,
7676
)
77+
fromstackit.observability.models.create_logs_alertgroups_payload_rules_innerimport (
78+
CreateLogsAlertgroupsPayloadRulesInner,
79+
)
7780
fromstackit.observability.models.create_scrape_config_payloadimport (
7881
CreateScrapeConfigPayload,
7982
)
@@ -145,6 +148,9 @@
145148
fromstackit.observability.models.model_globalimportModelGlobal
146149
fromstackit.observability.models.o_auth2importOAuth2
147150
fromstackit.observability.models.opsgenie_configimportOpsgenieConfig
151+
fromstackit.observability.models.partial_update_alertrules_request_innerimport (
152+
PartialUpdateAlertrulesRequestInner,
153+
)
148154
fromstackit.observability.models.permission_deniedimportPermissionDenied
149155
fromstackit.observability.models.planimportPlan
150156
fromstackit.observability.models.plan_modelimportPlanModel

‎services/observability/src/stackit/observability/models/create_alertgroups_payload.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
classCreateAlertgroupsPayload(BaseModel):
3030
"""
31-
Alert group that should be created or updated `Additional Validators:` * total config should not be bigger than 500000 characters as string since this the limitation of prometheus.
31+
Alert group that should be created or updated. `Additional Validators:` * total config should not be bigger than 500000 characters as string since this the limitation of prometheus.
3232
"""# noqa: E501
3333

3434
interval:Optional[Annotated[str,Field(min_length=2,strict=True,max_length=8)]]=Field(

‎services/observability/src/stackit/observability/models/create_logs_alertgroups_payload.py‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,14 @@
2121
frompydanticimportBaseModel,ConfigDict,Field
2222
fromtyping_extensionsimportAnnotated,Self
2323

24-
fromstackit.observability.models.update_alertgroups_request_inner_rules_innerimport (
25-
UpdateAlertgroupsRequestInnerRulesInner,
24+
fromstackit.observability.models.create_logs_alertgroups_payload_rules_innerimport (
25+
CreateLogsAlertgroupsPayloadRulesInner,
2626
)
2727

2828

2929
classCreateLogsAlertgroupsPayload(BaseModel):
3030
"""
31-
Alert group that should be created or updated `Additional Validators:` * total config should not be bigger than 500000 characters as string since this the limitation of prometheus.
31+
Alert group that should be created or updated. `Additional Validators:` * total config should not be bigger than 500000 characters as string since this the limitation of prometheus.
3232
"""# noqa: E501
3333

3434
interval:Optional[Annotated[str,Field(min_length=2,strict=True,max_length=8)]]=Field(
@@ -38,7 +38,7 @@ class CreateLogsAlertgroupsPayload(BaseModel):
3838
name:Annotated[str,Field(min_length=1,strict=True,max_length=200)]=Field(
3939
description="The name of the group. Must be unique. `Additional Validators:` * is the identifier and so unique * should only include the characters: a-zA-Z0-9-"
4040
)
41-
rules:List[UpdateAlertgroupsRequestInnerRulesInner]=Field(description="rules for the alert group")
41+
rules:List[CreateLogsAlertgroupsPayloadRulesInner]=Field(description="rules for the alert group")
4242
__properties:ClassVar[List[str]]= ["interval","name","rules"]
4343

4444
model_config=ConfigDict(
@@ -101,7 +101,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
101101
"interval":obj.get("interval")ifobj.get("interval")isnotNoneelse"60s",
102102
"name":obj.get("name"),
103103
"rules": (
104-
[UpdateAlertgroupsRequestInnerRulesInner.from_dict(_item)for_iteminobj["rules"]]
104+
[CreateLogsAlertgroupsPayloadRulesInner.from_dict(_item)for_iteminobj["rules"]]
105105
ifobj.get("rules")isnotNone
106106
elseNone
107107
),
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
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__importannotations
16+
17+
importjson
18+
importpprint
19+
fromtypingimportAny,ClassVar,Dict,List,Optional,Set
20+
21+
frompydanticimportBaseModel,ConfigDict,Field
22+
fromtyping_extensionsimportAnnotated,Self
23+
24+
25+
classCreateLogsAlertgroupsPayloadRulesInner(BaseModel):
26+
"""
27+
Rule definition. Must be either an Alerting Rule (using 'alert') or a Recording Rule (using 'record'). `Additional Validators:` * total config (all alert groups/rules) should not be bigger than 500000 characters as string since this the limitation of prometheus.
28+
"""# noqa: E501
29+
30+
alert:Optional[Annotated[str,Field(min_length=1,strict=True,max_length=200)]]=Field(
31+
default=None,
32+
description="The name of the alert. When this attribute is used, an Alerting Rule will be created. `Additional Validators:` * is the identifier and so unique in the group * should only include the characters: a-zA-Z0-9- * required when 'record' is not used in this rule, otherwise not allowed",
33+
)
34+
annotations:Optional[Dict[str,Any]]=Field(
35+
default=None,
36+
description="Map of key:value. Annotations to add to each alert. `Additional Validators:` * should not contain more than 5 keys * each key and value should not be longer than 200 characters * is not allowed to use when 'record' is used in this rule",
37+
)
38+
expr:Annotated[str,Field(min_length=1,strict=True,max_length=600)]=Field(
39+
description="The LogQL expression to evaluate to create alerts when using the 'alert' attribute in this rule, or to create a metric when using the 'record' attribute."
40+
)
41+
var_for:Optional[Annotated[str,Field(min_length=2,strict=True,max_length=8)]]=Field(
42+
default="0s",
43+
description="Alerts are considered firing once they have been returned for this long. Alerts which have not yet fired for long enough are considered pending. `Additional Validators:` * must be a valid time string * is not allowed to use when 'record' is used in this rule",
44+
alias="for",
45+
)
46+
labels:Optional[Dict[str,Any]]=Field(
47+
default=None,
48+
description="Map of key:value. Labels to add or overwrite for each alert or metric. `Additional Validators:` * should not contain more than 10 keys * each key and value should not be longer than 200 characters",
49+
)
50+
record:Optional[Annotated[str,Field(min_length=1,strict=True,max_length=300)]]=Field(
51+
default=None,
52+
description="The name of the metric. When this attribute is used, an Recording Rule will be created. `Additional Validators:` * is the identifier and so unique in the group * should only include the characters: a-zA-Z0-9:_ * required when 'alert' is not used in this rule, otherwise not allowed",
53+
)
54+
__properties:ClassVar[List[str]]= ["alert","annotations","expr","for","labels","record"]
55+
56+
model_config=ConfigDict(
57+
populate_by_name=True,
58+
validate_assignment=True,
59+
protected_namespaces=(),
60+
)
61+
62+
defto_str(self)->str:
63+
"""Returns the string representation of the model using alias"""
64+
returnpprint.pformat(self.model_dump(by_alias=True))
65+
66+
defto_json(self)->str:
67+
"""Returns the JSON representation of the model using alias"""
68+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
69+
returnjson.dumps(self.to_dict())
70+
71+
@classmethod
72+
deffrom_json(cls,json_str:str)->Optional[Self]:
73+
"""Create an instance of CreateLogsAlertgroupsPayloadRulesInner from a JSON string"""
74+
returncls.from_dict(json.loads(json_str))
75+
76+
defto_dict(self)->Dict[str,Any]:
77+
"""Return the dictionary representation of the model using alias.
78+
79+
This has the following differences from calling pydantic's
80+
`self.model_dump(by_alias=True)`:
81+
82+
* `None` is only added to the output dict for nullable fields that
83+
were set at model initialization. Other fields with value `None`
84+
are ignored.
85+
"""
86+
excluded_fields:Set[str]=set([])
87+
88+
_dict=self.model_dump(
89+
by_alias=True,
90+
exclude=excluded_fields,
91+
exclude_none=True,
92+
)
93+
return_dict
94+
95+
@classmethod
96+
deffrom_dict(cls,obj:Optional[Dict[str,Any]])->Optional[Self]:
97+
"""Create an instance of CreateLogsAlertgroupsPayloadRulesInner from a dict"""
98+
ifobjisNone:
99+
returnNone
100+
101+
ifnotisinstance(obj,dict):
102+
returncls.model_validate(obj)
103+
104+
_obj=cls.model_validate(
105+
{
106+
"alert":obj.get("alert"),
107+
"annotations":obj.get("annotations"),
108+
"expr":obj.get("expr"),
109+
"for":obj.get("for")ifobj.get("for")isnotNoneelse"0s",
110+
"labels":obj.get("labels"),
111+
"record":obj.get("record"),
112+
}
113+
)
114+
return_obj

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp