66 lines
2.1 KiB
Python
66 lines
2.1 KiB
Python
|
#!/usr/bin/env python3
|
||
|
# -*- coding: utf-8 -*-
|
||
|
# Copyright (C) 2019 tribe29 GmbH - License: GNU General Public License v2
|
||
|
# This file is part of Checkmk (https://checkmk.com). It is subject to the terms and
|
||
|
# conditions defined in the file COPYING, which is part of this source code package.
|
||
|
|
||
|
from cmk.gui.i18n import _
|
||
|
from cmk.gui.plugins.wato.utils import (
|
||
|
CheckParameterRulespecWithItem,
|
||
|
rulespec_registry,
|
||
|
RulespecGroupCheckParametersEnvironment,
|
||
|
)
|
||
|
from cmk.gui.valuespec import Dictionary, Integer, TextInput, Tuple
|
||
|
|
||
|
|
||
|
def _parameter_valuespec_clever_pdu():
|
||
|
return Dictionary(
|
||
|
elements=[
|
||
|
(
|
||
|
"voltage",
|
||
|
Tuple(
|
||
|
title=_("Voltage on Line"),
|
||
|
elements=[
|
||
|
Integer(title=_("warning at"), unit=_("V")),
|
||
|
Integer(title=_("critical at"), unit=_("V")),
|
||
|
],
|
||
|
),
|
||
|
),
|
||
|
(
|
||
|
"current",
|
||
|
Tuple(
|
||
|
title=_("Current on Power Channel"),
|
||
|
elements=[
|
||
|
Integer(title=_("warning if below"), unit=_("A")),
|
||
|
Integer(title=_("critical if below"), unit=_("A")),
|
||
|
],
|
||
|
),
|
||
|
),
|
||
|
(
|
||
|
"energy",
|
||
|
Tuple(
|
||
|
title=_("Active Energy of Line"),
|
||
|
elements=[
|
||
|
Integer(title=_("warning at"), unit=_("W")),
|
||
|
Integer(title=_("critical at"), unit=_("W")),
|
||
|
],
|
||
|
),
|
||
|
),
|
||
|
],
|
||
|
)
|
||
|
|
||
|
|
||
|
rulespec_registry.register(
|
||
|
CheckParameterRulespecWithItem(
|
||
|
check_group_name="clever_pdu",
|
||
|
group=RulespecGroupCheckParametersEnvironment,
|
||
|
item_spec=lambda: TextInput(
|
||
|
title=_("Line"), help=_("The Line Number. Example: 'Line 1'.")
|
||
|
),
|
||
|
match_type="dict",
|
||
|
parameter_valuespec=_parameter_valuespec_clever_pdu,
|
||
|
title=lambda: _("Levels for Clever AC PDU Devices"),
|
||
|
)
|
||
|
)
|
||
|
|