Remove dead metrics support from the mautrix-signal bridge

Bridges based on bridgev2 no longer expose a metrics endpoint, so the
playbook was publishing a Traefik route which could only ever yield an
HTTP 502.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5487
This commit is contained in:
Slavi Pantaleev
2026-08-04 16:56:55 +03:00
parent 7571605fce
commit 2daa19ea91
4 changed files with 12 additions and 67 deletions
@@ -96,17 +96,6 @@ matrix_bridge_mautrix_signal_container_labels_traefik_docker_network: "{{ matrix
matrix_bridge_mautrix_signal_container_labels_traefik_entrypoints: web-secure
matrix_bridge_mautrix_signal_container_labels_traefik_tls_certResolver: default # noqa var-naming
# Controls whether labels will be added that expose mautrix-instagram's metrics
matrix_bridge_mautrix_signal_container_labels_metrics_enabled: "{{ matrix_bridge_mautrix_signal_metrics_enabled and matrix_bridge_mautrix_signal_metrics_proxying_enabled }}"
matrix_bridge_mautrix_signal_container_labels_metrics_traefik_rule: "Host(`{{ matrix_bridge_mautrix_signal_metrics_proxying_hostname }}`) && PathPrefix(`{{ matrix_bridge_mautrix_signal_metrics_proxying_path_prefix }}`)"
matrix_bridge_mautrix_signal_container_labels_metrics_traefik_priority: 0
matrix_bridge_mautrix_signal_container_labels_metrics_traefik_entrypoints: "{{ matrix_bridge_mautrix_signal_container_labels_traefik_entrypoints }}"
matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls: "{{ matrix_bridge_mautrix_signal_container_labels_metrics_traefik_entrypoints != 'web' }}"
matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls_certResolver: "{{ matrix_bridge_mautrix_signal_container_labels_traefik_tls_certResolver }}" # noqa var-naming
matrix_bridge_mautrix_signal_container_labels_metrics_middleware_basic_auth_enabled: false
# See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users
matrix_bridge_mautrix_signal_container_labels_metrics_middleware_basic_auth_users: ''
# Controls whether labels will be added that expose mautrix-signal's HTTP API
# (used by tools like mautrix-manager for bridge login) at `https://<hostname><path_prefix>`.
matrix_bridge_mautrix_signal_container_labels_exposure_enabled: "{{ matrix_bridge_mautrix_signal_exposure_enabled }}"
@@ -156,16 +145,6 @@ matrix_bridge_mautrix_signal_backfill_max_catchup_messages: 500
matrix_bridge_mautrix_signal_backfill_unread_hours_threshold: 720
matrix_bridge_mautrix_signal_backfill_threads_max_initial_messages: 50
# Whether or not metrics endpoint should be enabled.
# Enabling them is usually enough for a local (in-container) Prometheus to consume them.
# If metrics need to be consumed by another (external) Prometheus server, consider exposing them via `matrix_bridge_mautrix_signal_metrics_proxying_enabled`.
matrix_bridge_mautrix_signal_metrics_enabled: false
# Controls whether metrics should be exposed on a public URL.
matrix_bridge_mautrix_signal_metrics_proxying_enabled: false
matrix_bridge_mautrix_signal_metrics_proxying_hostname: ''
matrix_bridge_mautrix_signal_metrics_proxying_path_prefix: ''
# Controls whether mautrix-signal's HTTP API is exposed publicly (used by tools like mautrix-manager for bridge login).
matrix_bridge_mautrix_signal_exposure_enabled: false
matrix_bridge_mautrix_signal_exposure_hostname: ''
@@ -30,6 +30,18 @@
- {'old': 'matrix_bridge_mautrix_signal_docker_image_tag', 'new': 'matrix_bridge_mautrix_signal_container_image_tag'}
- {'old': 'matrix_bridge_mautrix_signal_docker_src_files_path', 'new': 'matrix_bridge_mautrix_signal_container_src_files_path'}
- {'old': 'matrix_bridge_mautrix_signal_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
- {'old': 'matrix_bridge_mautrix_signal_metrics_enabled', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_metrics_proxying_enabled', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_metrics_proxying_hostname', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_metrics_proxying_path_prefix', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_enabled', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_traefik_rule', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_traefik_priority', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_traefik_entrypoints', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls_certResolver', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_middleware_basic_auth_enabled', 'new': '<removed> (mautrix-signal does not support metrics)'}
- {'old': 'matrix_bridge_mautrix_signal_container_labels_metrics_middleware_basic_auth_users', 'new': '<removed> (mautrix-signal does not support metrics)'}
- name: Fail if required mautrix-signal settings not defined
ansible.builtin.fail:
@@ -42,5 +54,3 @@
- {'name': 'matrix_bridge_mautrix_signal_homeserver_token', when: true}
- {'name': 'matrix_bridge_mautrix_signal_database_hostname', when: "{{ matrix_bridge_mautrix_signal_database_engine == 'postgres' }}"}
- {'name': 'matrix_bridge_mautrix_signal_container_network', when: true}
- {'name': 'matrix_bridge_mautrix_signal_metrics_proxying_hostname', when: "{{ matrix_bridge_mautrix_signal_metrics_proxying_enabled }}"}
- {'name': 'matrix_bridge_mautrix_signal_metrics_proxying_path_prefix', when: "{{ matrix_bridge_mautrix_signal_metrics_proxying_enabled }}"}
@@ -11,41 +11,6 @@ traefik.enable=true
traefik.docker.network={{ matrix_bridge_mautrix_signal_container_labels_traefik_docker_network }}
{% endif %}
traefik.http.services.matrix-mautrix-signal-metrics.loadbalancer.server.port=8000
{% if matrix_bridge_mautrix_signal_container_labels_metrics_enabled %}
############################################################
# #
# Metrics #
# #
############################################################
{% if matrix_bridge_mautrix_signal_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.matrix-mautrix-signal-metrics-basic-auth.basicauth.users={{ matrix_bridge_mautrix_signal_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.matrix-mautrix-signal-metrics.middlewares=matrix-mautrix-signal-metrics-basic-auth
{% endif %}
traefik.http.routers.matrix-mautrix-signal-metrics.rule={{ matrix_bridge_mautrix_signal_container_labels_metrics_traefik_rule }}
{% if matrix_bridge_mautrix_signal_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.matrix-mautrix-signal-metrics.priority={{ matrix_bridge_mautrix_signal_container_labels_metrics_traefik_priority }}
{% endif %}
traefik.http.routers.matrix-mautrix-signal-metrics.service=matrix-mautrix-signal-metrics
traefik.http.routers.matrix-mautrix-signal-metrics.entrypoints={{ matrix_bridge_mautrix_signal_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.matrix-mautrix-signal-metrics.tls={{ matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls %}
traefik.http.routers.matrix-mautrix-signal-metrics.tls.certResolver={{ matrix_bridge_mautrix_signal_container_labels_metrics_traefik_tls_certResolver }}
{% endif %}
############################################################
# #
# /Metrics #
# #
############################################################
{% endif %}
{% if matrix_bridge_mautrix_signal_container_labels_exposure_enabled %}
############################################################
# #