computer-playbook/roles/sys-ctl-alm-telegram
Kevin Veen-Birkenbach a10dd402b8
refactor: improve service handling and introduce MODE_ASSERT
- Improved get_service_name filter plugin (clearer suffix handling, consistent var names).
- Added MODE_ASSERT flag to optionally execute validation/assertion tasks.
- Fixed systemd unit handling: consistent use of %I instead of %i, correct escaping of instance names.
- Unified on_failure behavior and alarm composer scripts.
- Cleaned up redundant logging, handlers, and debug config.
- Strengthened sys-service template resolution with assert (only active when MODE_ASSERT).
- Simplified timer and suffix handling with get_service_name filter.
- Hardened sensitive tasks with no_log.
- Added conditional asserts across roles (Keycloak, DNS, Mailu, Discourse, etc.).

These changes improve consistency, safety, and validation across the automation stack.

Conversation: https://chatgpt.com/share/68a4ae28-483c-800f-b2f7-f64c7124c274
2025-08-19 19:02:52 +02:00
..

Automated Telegram Alerts for Service Failures

Description

This role installs and configures the necessary components for sending notifications via systemd when a service fails. It sets up the sys-ctl-alm-telegram service and configures parameters and customizable templates for sending messages through Telegram.

Overview

Optimized for real-time alerts, this role is a key component of the overall sys-ctl-alm-compose suite. It ensures that, upon failure of a critical service, a Telegram message is automatically sent to notify administrators and enable prompt troubleshooting.

Purpose

The primary purpose of this role is to provide a robust solution for automated Telegram notifications in a systemd environment. By integrating with Telegrams Bot API and using customizable message templates, it delivers clear and timely alerts about service failures, thereby enhancing system observability and reliability.

Features

  • Service Installation & Configuration: Installs and configures necessary components (including the curl package).
  • Customizable Templates: Supports tailored Telegram message templates for service failure notifications.
  • Secure Notifications: Leverages systemd to trigger alerts automatically when services fail.
  • Suite Integration: Part of the sys-ctl-alm-compose suite which includes related roles such as sys-ctl-alm-email and others.

Other Resources

This role was developed as part of a conversation with OpenAI's ChatGPT and can be found here.