blob: 583c726c5698575cf5499ae9b68c5fdba5f14d8f [file] [log] [blame]
import os
from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver
cls = get_driver(Provider.ONEANDONE)
drv = cls(key=os.environ.get("ONEANDONE_TOKEN"))
ports = [
{
"protocol": "TCP",
"port": 443,
"alert_if": "NOT_RESPONDING",
"email_notification": True,
}
]
processes = [{"process": "httpdeamon", "alert_if": "NOT_RUNNING", "email_notification": False}]
thresholds = {
"cpu": {
"warning": {"value": 90, "alert": False},
"critical": {"value": 95, "alert": False},
},
"ram": {
"warning": {"value": 90, "alert": False},
"critical": {"value": 95, "alert": False},
},
"disk": {
"warning": {"value": 80, "alert": False},
"critical": {"value": 90, "alert": False},
},
"transfer": {
"warning": {"value": 1000, "alert": False},
"critical": {"value": 2000, "alert": False},
},
"internal_ping": {
"warning": {"value": 50, "alert": False},
"critical": {"value": 100, "alert": True},
},
}
try:
monitoring_policy = drv.ex_create_monitoring_policy(
name="Monitoring Policy",
ports=ports,
thresholds=thresholds,
processes=processes,
description="Monitoring Policy Description",
email="test@test.com",
agent=True,
)
print(monitoring_policy)
except Exception as e:
print(e)