Back to Checks
Linode Instance has Watchdog (Lassie) enabled
compute_instance_watchdog_enabled
Service: computeSeverity: medium
OfficialBuilt-inVerified
Categories:resilience
Resource Type:NotDefined
Linode instances are assessed for Watchdog (Lassie) status. Watchdog is Linode's automatic recovery feature that monitors an instance and reboots it if it powers off unexpectedly, helping maintain availability without manual intervention.
Risk
With Watchdog (Lassie) disabled, an instance that crashes or shuts down unexpectedly stays offline until it is manually restarted. This prolongs downtime, delays detection of availability incidents, and weakens the availability of services running on the instance.
Run this check with Prowler
Run in Prowler CloudRun
prowler linode --checks compute_instance_watchdog_enabledRecommendation
Enable Watchdog (Lassie) on this instance to automatically recover from unexpected shutdowns and improve availability protection.
Remediation
CLI
linode-cli linodes update <linode_id> --watchdog_enabled trueOther
1Log in to the Linode Cloud Manager
2Select the Linode instance
3Navigate to the Settings tab
4Enable the Shutdown Watchdog (Lassie) toggle
Check Code
from prowler.lib.check.models import Check, CheckReportLinode
from prowler.providers.linode.services.compute.compute_client import compute_client
class compute_instance_watchdog_enabled(Check):
"""Check if Linode instances have Watchdog (Lassie) enabled."""
def execute(self) -> list[CheckReportLinode]:
"""Execute the compute_instance_watchdog_enabled check.
Iterates over all Linode instances and checks whether Watchdog
(Lassie) is enabled.
Returns:
list[CheckReportLinode]: A list of findings for each instance.
"""
findings = []
for instance in compute_client.instances:
report = CheckReportLinode(
metadata=self.metadata(),
resource=instance,
resource_name=instance.label,
resource_id=str(instance.id),
region=instance.region,
)
report.resource_tags = instance.tags
if instance.watchdog_enabled:
report.status = "PASS"
report.status_extended = (
f"Instance {instance.label} has Watchdog (Lassie) enabled."
)
else:
report.status = "FAIL"
report.status_extended = f"Instance {instance.label} does not have Watchdog (Lassie) enabled."
findings.append(report)
return findings