Nextcloud-CheckMK/local/share/check_mk/web/plugins/wato/nextcloud_users_rules.py

68 lines
2.0 KiB
Python

from cmk.gui.i18n import _
from cmk.gui.plugins.wato import (
CheckParameterRulespecWithItem,
rulespec_registry,
RulespecGroupCheckParametersApplications
)
from cmk.gui.valuespec import (
Dictionary,
ListChoice,
Tuple,
Percentage,
Integer,
TextAscii,
Float,
)
def _item_spec_nextcloud_users():
return TextAscii(
title=_("User ID")
)
def _parameter_spec_nextcloud_users():
return Dictionary(
elements=[
("levels_users_quota_used", Tuple(
title=_("Nextcloud levels for quota usage of users"),
elements=[
Percentage(
title=_("Warning at"),
default_value=65.0,
unit="%",
),
Percentage(
title=_("Critical at"),
default_value=85.0,
unit="%",
)
],
)),
("levels_users_free_space", Tuple(
title=_("Nextcloud levels for free disk space of users"),
elements=[
Float(
title=_("Warning below"),
default_value=256.0,
unit="MBytes",
),
Float(
title=_("Critical below"),
default_value=128.0,
unit="MBytes",
)
],
)),
],
)
rulespec_registry.register(
CheckParameterRulespecWithItem(
check_group_name="nextcloud_users",
group=RulespecGroupCheckParametersApplications,
match_type="dict",
item_spec=_item_spec_nextcloud_users,
parameter_valuespec=_parameter_spec_nextcloud_users,
title=lambda: _("Nextcloud Users"),
)
)