Tailscale Healthcheck

screenshot of Tailscale Healthcheck

A Python-based Flask application to monitor the health of devices in a Tailscale network. The application provides endpoints to check the health status of all devices, specific devices, and lists of healthy or unhealthy devices.

Overview

Tailscale Healthcheck presents an innovative solution for monitoring the health of devices within a Tailscale network. This Python-based Flask application offers users the ability to check the health status of devices, providing critical insights into device operations through comprehensive health metrics. With its user-friendly approach, it ensures that network administrators can quickly determine whether devices are online, healthy, or face issues that need attention.

This Dockerized tool is not only efficient but also integrates seamlessly with various monitoring systems. It caters to both large and small networks, making it a versatile choice for maintaining optimal device performance and uptime.

Features

  • Overall Health Status: Provides a combined health overview based on device online status, key expiry, and optional update status for a complete picture of device health.
  • Global Health Metrics: Offers insights into global device health, including online status and key health, enabling administrators to assess the overall network condition.
  • Update Status: Tracks client versions and the availability of updates, with options for health filtering using wildcards and supporting include/exclude filters.
  • Device Filtering: Facilitates OS-based, identifier-based, and tag-based filtering, making it easy to zero in on specific devices of interest.
  • Key Expiry Tracking: Monitors the number of days until device keys expire, ensuring proactive management of device authentication.
  • Health Status Checking: Allows users to check the health status of all devices or lookup specific ones by various identifiers, ensuring quick assessments.
  • Timezone Support: Adjusts last seen timestamps to configurable timezones, maintaining clarity in time-related data.
  • Secure Configuration: Ensures sensitive data is protected with secure masking and offers a comprehensive configuration overview for ease of management.