mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2026-07-29 10:48:46 +10:00
Scrape ntfy metrics with the integrated Prometheus
Until now, ntfy metrics could only be collected by an external Prometheus server. Enabling the integrated Prometheus (`prometheus_enabled: true`) now also has it scrape ntfy, like it does for the other services. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -4411,7 +4411,7 @@ ntfy_container_labels_traefik_tls_certResolver: "{{ traefik_certResolver_primary
|
|||||||
# We have ntfy serve its metrics endpoint on a dedicated port, instead of on the regular HTTP port.
|
# We have ntfy serve its metrics endpoint on a dedicated port, instead of on the regular HTTP port.
|
||||||
# Were it served on the regular HTTP port, the endpoint would also become reachable at `https://ntfy.example.com/metrics`.
|
# Were it served on the regular HTTP port, the endpoint would also become reachable at `https://ntfy.example.com/metrics`.
|
||||||
# Nothing protects it there, because ntfy does not apply its own access-control rules to the metrics endpoint.
|
# Nothing protects it there, because ntfy does not apply its own access-control rules to the metrics endpoint.
|
||||||
ntfy_metrics_listen_http_port: "{{ 9090 if matrix_metrics_exposure_enabled else '' }}"
|
ntfy_metrics_listen_http_port: "{{ 9090 if (prometheus_enabled or matrix_metrics_exposure_enabled) else '' }}"
|
||||||
|
|
||||||
ntfy_container_labels_traefik_metrics_enabled: "{{ matrix_metrics_exposure_enabled }}"
|
ntfy_container_labels_traefik_metrics_enabled: "{{ matrix_metrics_exposure_enabled }}"
|
||||||
|
|
||||||
@@ -5430,6 +5430,8 @@ prometheus_container_additional_networks_auto: |
|
|||||||
([matrix_media_repo_container_network] if matrix_prometheus_services_connect_scraper_media_repo_enabled and matrix_media_repo_container_network != prometheus_container_network else [])
|
([matrix_media_repo_container_network] if matrix_prometheus_services_connect_scraper_media_repo_enabled and matrix_media_repo_container_network != prometheus_container_network else [])
|
||||||
+
|
+
|
||||||
([matrix_synapse_usage_exporter_container_network] if matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled and matrix_synapse_usage_exporter_container_network != prometheus_container_network else [])
|
([matrix_synapse_usage_exporter_container_network] if matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled and matrix_synapse_usage_exporter_container_network != prometheus_container_network else [])
|
||||||
|
+
|
||||||
|
([ntfy_container_network] if matrix_prometheus_services_connect_scraper_ntfy_enabled and ntfy_container_network != prometheus_container_network else [])
|
||||||
) | unique
|
) | unique
|
||||||
}}
|
}}
|
||||||
|
|
||||||
@@ -5456,6 +5458,8 @@ prometheus_config_scrape_configs_auto: |
|
|||||||
(matrix_prometheus_services_connect_scraper_media_repo_scrape_configs if matrix_prometheus_services_connect_scraper_media_repo_enabled else [])
|
(matrix_prometheus_services_connect_scraper_media_repo_scrape_configs if matrix_prometheus_services_connect_scraper_media_repo_enabled else [])
|
||||||
+
|
+
|
||||||
(matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_configs if matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled else [])
|
(matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_configs if matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled else [])
|
||||||
|
+
|
||||||
|
(matrix_prometheus_services_connect_scraper_ntfy_scrape_configs if matrix_prometheus_services_connect_scraper_ntfy_enabled else [])
|
||||||
}}
|
}}
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
@@ -5497,6 +5501,9 @@ matrix_prometheus_services_connect_scraper_media_repo_static_configs_target: "{{
|
|||||||
matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled: "{{ matrix_synapse_usage_exporter_enabled }}"
|
matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled: "{{ matrix_synapse_usage_exporter_enabled }}"
|
||||||
matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs_target: "{{ matrix_synapse_usage_exporter_identifier }}:{{ matrix_synapse_usage_exporter_container_port | string }}"
|
matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs_target: "{{ matrix_synapse_usage_exporter_identifier }}:{{ matrix_synapse_usage_exporter_container_port | string }}"
|
||||||
|
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_enabled: "{{ ntfy_enabled and ntfy_metrics_listen_http_port | string | length > 0 }}"
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_static_configs_target: "{{ ntfy_identifier }}:{{ ntfy_metrics_listen_http_port | string }}"
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
#
|
#
|
||||||
# /matrix-prometheus-services-connect
|
# /matrix-prometheus-services-connect
|
||||||
|
|||||||
@@ -189,3 +189,23 @@ matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_configs
|
|||||||
'static_configs': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs,
|
'static_configs': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs,
|
||||||
}]
|
}]
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
# Controls whether ntfy shall be scraped
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_enabled: false
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_job_name: ntfy
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_metrics_path: /metrics
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_scrape_interval: 15s
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_scrape_timeout: 15s
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_static_configs: "{{ [{'targets': [matrix_prometheus_services_connect_scraper_ntfy_static_configs_target]}] }}"
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_static_configs_target: ''
|
||||||
|
# The final scrape config for the ntfy scraper
|
||||||
|
matrix_prometheus_services_connect_scraper_ntfy_scrape_configs: |
|
||||||
|
{{
|
||||||
|
[{
|
||||||
|
'job_name': matrix_prometheus_services_connect_scraper_ntfy_job_name,
|
||||||
|
'metrics_path': matrix_prometheus_services_connect_scraper_ntfy_metrics_path,
|
||||||
|
'scrape_interval': matrix_prometheus_services_connect_scraper_ntfy_scrape_interval,
|
||||||
|
'scrape_timeout': matrix_prometheus_services_connect_scraper_ntfy_scrape_timeout,
|
||||||
|
'static_configs': matrix_prometheus_services_connect_scraper_ntfy_static_configs,
|
||||||
|
}]
|
||||||
|
}}
|
||||||
|
|||||||
Reference in New Issue
Block a user