From ecec85ac49811a786b9a15eb6444fd468f235e26 Mon Sep 17 00:00:00 2001 From: Georg Pfuetzenreuter Date: Mar 24 2024 13:50:04 +0000 Subject: get_member_aliases: migrate to Prometheus Replace legacy nsca status updates with Prometheus textfile metrics. Signed-off-by: Georg Pfuetzenreuter --- diff --git a/salt/profile/mailserver/files/cron/get_member_aliases b/salt/profile/mailserver/files/cron/get_member_aliases index 9d2f41a..0712979 100755 --- a/salt/profile/mailserver/files/cron/get_member_aliases +++ b/salt/profile/mailserver/files/cron/get_member_aliases @@ -4,17 +4,15 @@ tmp=$(mktemp -p /tmp -d memberaliases.XXXXXXXXXX) cd "$tmp" || exit 1 -nsca_client_name='{{grains.id}}' -nsca_client_service='openSUSE virtual_users' -nsca_server='monitor.infra.opensuse.org' -nsca_config='/etc/send_nsca.cfg' -#status_code=3 -#status_message='unknown' - -send_nsca_message(){ - local status_code="$1" - local status_message="$2" - echo -e "$nsca_client_name\t$nsca_client_service\t$status_code\t$status_message" | send_nsca -H $nsca_server -c "$nsca_config" +metrics_base='virtual_opensuse_users' + +write_metrics() { + { + printf '%s_status %i\n' "$metrics_base" "$1" + printf '%s_add %i\n' "$metrics_base" "$2" + printf '%s_remove %i\n' "$metrics_base" "$3" + printf '%s_total %i\n' "$metrics_base" "$4" + } | sponge /var/spool/prometheus/get_member_aliases.prom } mysql -h mysql.infra.opensuse.org -P3307 -Dmembers -NB -e 'select addr, email_target from email_aliases' >member.aliases.new @@ -30,7 +28,7 @@ total=$(wc -l /dev/null + write_metrics '0' "$added" "$removed" "$total" fi # tidy up