My most starred GitHub Project

Nagios Plugins for Linux

Nagios and Icinga2 plugins for monitoring Linux hosts

This project implements about thirty Nagios plugins for monitoring Linux hosts (cpu, fiber channel status, filesystems, interrupts, memory, mount points, multipath, network status, number of active processes, number of connected users, paging, swap, system load, pressure, uptime, and time) and some limited aspects of docker and podman containers.

Nagios is an open source computer system monitoring, network monitoring and infrastructure monitoring software application. These plugins have been reported to also work with Icinga and Icinga2.

HashiCorp Vault Monitoring Tool

Monitoring tool for HashiCorp Vault servers and clusters
The Go binary hashicorp-vault-monitor monitors the status (unsealed/sealed) of the cluster nodes, the HA cluster status, the installed Vault policies, the access to the Vault KV data store, and the expiration date of a Vault token (directly or via its associated token accessor).

Keepalived Script for Vault HA

Keepalived Tracking Script for HashiCorp Vault High Availability Clusters

To avoid a single point of failure with your HashiCorp Vault infrastructure, one would set up Vault in High Availability Mode (HA) with two identical Vault instances (one active and one standby) and use Keepalived to run VRRP between them.

The Python3 script vault_ha_active_node.py looks at the environment variable VAULT_ADDR and when set do ask the Vault REST API if the (local) Vault node is the active one. In that case will return 0. The script will return 1 otherwise (VAULT_ADDR unset, vault service not running or running but not unsealed, node in standby mode, a network error). It requires the Python library Requests.

wtmpclean

A tool for dumping wtmp files and patching wtmp records
wtmpclean is a security tool that is able to dump Linux wtmp files and patch or delete wtmp records matching a regular expression or a given date and time.

PyXymon

A Python module for writing Xymon external scripts
PyXymon provides some methods for rendering the messages you want to display in the Xymon web page and for sending them to the Xymon server. PyXymon reads the required informations from the Xymon environment variables, so you do not need to add any extra configuration file.

Mattermost Notify

Post messages to Mattermost via its REST APIv4
A simple client for sending Mattermost posts via its REST API v4. This program makes use of the Go libraries http and url for interacting with a Mattermost server and Cobra coupled with Viper to implement the CLI interface.

HadCRUT5

Visualize the HadCRUT5 temperature datasets

HadCRUT5 is a gridded dataset of global historical surface temperature anomalies relative to a 1961-1990 reference period. The dataset is a collaborative product of the Met Office Hadley Centre and the Climatic Research Unit at the University of East Anglia.

The Python script hadcrut5-plot.py parses the HadCRUT5 datasets and plots several graphs. It requires the Python libraries Matplotlib, netCDF4, NumPy, and Requests.

Dynamic Systems and Chaos

Plot logistic/cube/sine orbits, final-state and bifurcation diagrams
This software has been developed as part of the (optional) homeworks of the MOOC Introduction to Dynamical Systems and Chaos, leaded by David Feldman, Professor of Physics and Mathematics at College of the Atlantic.