monitor
NEW in Bastille version 1.1.20250814
The monitor sub-command adds, removes, lists and enables/disables monitoring for container services.
Managing Bastille Monitor
To enable Bastille monitoring, run bastille monitor enable.
To disable Bastille monitoring, run bastille monitor disable.
We can always check if Bastille monitoring is active with bastille monitor status.
Managing Services
Bastille Monitor will attempt to monitor any services defined for any given container. If the service is
stopped, Bastille will attempt to restart it. Everything is logged in ${bastille_monitor_logfile}.
To have Bastille monitor a service, run bastille monitor TARGET add SERVICE. The SERVICE arg can also be a
comma-separated list of services such as bastille monitor TARGET add SERVICE1,SERVICE2.
To remove a service from monitoring, we can run bastille monitor TARGET delete SERVICE. These can also be a
comma-separated list.
To show all services that Bastille is monitoring, run bastille monitor TARGET list.
To list all jails that have a selected service defined for monitoring, run bastille monitor TARGET list SERVICE.
This option only accepts a single SERVICE, and cannot be a comma-separated list.
If you run bastille monitor TARGET, without any args or actions, Bastille will run through the process of
checking the status of each defined service, and attempt to start any that are stopped.
Services can also be manually added or removed by editing the monitor file inside the jail directory, but
is not recommended unless you are an advanced user.
Configuration
The monitor sub-command is configurable via the bastille.conf file. See below
for configuration defaults:
bastille_monitor_cron_path="/usr/local/etc/cron.d/bastille-monitor"
bastille_monitor_cron="*/5 * * * * root /usr/local/bin/bastille monitor ALL >/dev/null 2&>1"
bastille_monitor_logfile="${bastille_logsdir}/monitor.log"
bastille_monitor_module=""
bastille_monitor_url=""
Alerting modules
Bastille currently supports two healthcheck modules. The bastille_monitor_module should be
either uptimekuma or healthchecks.io.
The first alerting module to be supported is Health Checks
(https://healthchecks.io), which is both a free SaaS service (up to 20 checks)
and provides a self-hosted option (see sysutils/py-healthchecks). Just add the healthcheck url to
the bastille_monitor_url variable.
The second is Uptime-Kuma, a self-hosted monitoring application. Add a new monitor of type “Push”, then
copy and paste the given url into the bastille_monitor_url variable. Do not include the optional
parameters following the ? character. Only the url including the api key should be included.
Help
ishmael ~ # bastille monitor help
Usage: bastille monitor [option(s)] enable|disable|status
TARGET add|delete|list service1,service2
TARGET list [service]
TARGET
Options:
-x | --debug Enable debug mode.