Documentation
¶
Overview ¶
Package monitor runs everything that has to keep working whether or not anybody is looking: the watchdog that restarts dropped tunnels, the Telegram bot, and the alerts.
It is a separate process from the web panel on purpose. These jobs used to live inside the panel, which meant that stopping the panel also stopped the watchdog and every alert — without saying so. A monitor that fails silently is worse than no monitor, because it is trusted.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Run ¶
func Run()
Run starts the watchdog, the bot and the alert loop, and blocks until the process is asked to stop.
Each job runs in its own goroutine because they fail independently: the bot's long poll can hang on a blocked network for the length of its timeout, and the watchdog must keep restarting tunnels regardless. None of them return under normal operation.
Types ¶
This section is empty.