Skip to main content

Santa Is Watching: ZFS Aware Network Monitor

Project description

"Santa Is Watching" (aka Santa_IW) is a network monitoring tool with an emphasis on ZFS and network attached storage in a homelab environment. Based upon configuration files describing your system, Santa_IW periodically cycles through a suite of tests on your computers, disks, and network hardware. Santa_IW runs on a single Linux computer which needs ssh keys to run diagnostic commands on other computers in your system. Santa_IW includes a network discovery tool which takes a list of start and stop network addresses to scan and tries to determine what tests are appropriate for each node it finds. Any computer which responds to a network ping becomes a candidate for ping testing. If Santa_IW can make an ssh connection to the node, it will:

  • look at temperature and other data reported by lm-sensors
  • look for drives listed in /etc/fstab and monitor each for disk free space
  • look for drives supported by smartctl and report SMART status on them
  • look for zfs pools and check each for status and free space
  • look for zfs volumes which seem to be getting frequent snapshots (or are listed in pyznap's config file) and monitor the age of the last snapshot
  • look for failed services reported by systemctl --failed

Santa_IW is written entirely in Python (3.11 or later) and its configuration files are all editable json. It ships with 20+ built in test types and can load additional user written tests or plugins from user directories. An example plugin is provided to use a Philips Hue color changing light bulb to provide a GREEN/YELLOW/RED status light.

A web based interface lets the user navigate up and down the hierarchy of node groups, nodes and tests to see various levels of detail. Tests can record numeric data where appropriate. Running averages are displayed and values over time can be graphed or extracted for offline processing.


Santa_IW is hosted on GitLab and has been developed and tested on a Linux platform. It has been run installed and run on RHEL, Fedora, Ubuntu and Debian platforms (including Raspberry Pi 3). It is written in pure Python, but calls out to many Linux/Posix command line utilities. It is plausible that it might someday work on other Posix compliant platforms (macOS or BSD), but that is out of scope for the current effort. For windows support...

Santa_IW is intended for homelab use on an internal network. It does not yet have any robust authentication system and should not be exposed on the open internet.

🚧 PRE-BETA RELEASE 🚧

If you are reading this, you are a little bit early to the party, but feel free to look around. Installation and operating instructions are on the wiki if you are interested in a test drive. The [Roadmap page] (https://gitlab.com/SRG_gitlab/santa-is-watching/-/wikis/Roadmap) describes some of the work pending before I start inviting people to beta test. The code as-is works well, but many of the pending changes planned will invalidate the documentation. Expecting new users to read the manual once is a big ask these days, so asking them to do it all again after major changes would be too much.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

santa_iw-0.7.4.tar.gz (88.5 kB view details)

Uploaded Source

Built Distribution

santa_iw-0.7.4-py3-none-any.whl (114.7 kB view details)

Uploaded Python 3

File details

Details for the file santa_iw-0.7.4.tar.gz.

File metadata

  • Download URL: santa_iw-0.7.4.tar.gz
  • Upload date:
  • Size: 88.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.9.18 Linux/5.14.0-427.16.1.el9_4.x86_64

File hashes

Hashes for santa_iw-0.7.4.tar.gz
Algorithm Hash digest
SHA256 bed78fefb7e619a7683cfb59877c59c8d3717173f35a192252f8913cab372821
MD5 83bb85aa6712005d3e7fdb193b9cf829
BLAKE2b-256 bc14e8d8453b7b5467172d8cf545a4f1334b152fe9111951298eb59657157a76

See more details on using hashes here.

File details

Details for the file santa_iw-0.7.4-py3-none-any.whl.

File metadata

  • Download URL: santa_iw-0.7.4-py3-none-any.whl
  • Upload date:
  • Size: 114.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.9.18 Linux/5.14.0-427.16.1.el9_4.x86_64

File hashes

Hashes for santa_iw-0.7.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a692a6ef7ae4f64394da48a74b33ef93d60f226d6eea83e82f409084e0e1807b
MD5 a35cf5a32192efc075a20da5aa94c363
BLAKE2b-256 7e589943bb5add3f67e0a7b7be1c0d0baa55f4e660ee97d84ab1df6ff2ccb009

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page