Files
computer-playbook/roles/web-app-prometheus/templates/nginx/locations.conf.j2
kevinveenbirkenbachandClaude Opus 5 5137465c6f style: delete every comment the comments-valid policy rejects
3529 invalid comments in 528 files, grandfathered in while the linter
only saw the working-tree diff. Removal ran through the linter's own
collectors, so detection and deletion cannot drift: a comment whose
opener line is blank before it and whose closer line is blank after it
loses all its lines, anything else loses only the comment region, and a
line left holding a bare delimiter goes with it.

Five files keep their comments behind a nocheck marker instead. Four are
upstream configs whose inline docs are upstream's own (mautrix, systemd
journald, nextcloud-oidc-login, MediaWiki). In littlejs the
commented-out entries ARE the deactivation mechanism for an example
tile, so deleting them would delete configuration.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-18 03:22:02 +02:00

38 lines
2.0 KiB
Django/Jinja

{#
Prometheus monitoring integration — single SPOT for all nginx vhosts.
Included from basic.conf.j2, synapse.conf.j2, and any other custom vhost
that participates in the monitoring stack.
The outer guard emits this block only when:
1. The prometheus role is deployed on this host ('web-app-prometheus' in group_names), AND
2. Either this IS the prometheus vhost, OR the current app has prometheus
declared as an enabled service dependency (is_docker_service_enabled).
The service lookup cannot be used for the host-level check because
web-app-prometheus is not a registered shared-service provider in the
service registry.
$app_id — Ansible role ID attached as Lua metrics label.
$container_name — Docker container name for /healthz/live polling.
Callers may set {% set container_name = "..." %} before
this include to override the default (derived from the
canonical service key via get_entity_name).
healthz.conf.j2 — /healthz/live + /healthz/ready + /_live_probe
location.conf.j2 — log_by_lua_block per-request metrics collection
metricz.conf — /metricz scrape endpoint (prometheus domain only); no Jinja2 — lives in files/ not templates/
#}
{% if lookup('prometheus_integration_active', application_id) %}
set $app_id "{{ application_id }}";
{% if container_name is defined %}
set $container_name "{{ container_name }}";
{% else %}
{% set prometheus_service_key = application_id | get_entity_name %}
set $container_name "{{ lookup('config', application_id, 'services.' + prometheus_service_key + '.name', '') }}";
{% endif %}
{% include 'roles/web-app-prometheus/templates/nginx/healthz.conf.j2' %}
{% include 'roles/web-app-prometheus/templates/nginx/location.conf.j2' %}
{% if application_id == 'web-app-prometheus' %}
{% include 'roles/web-app-prometheus/files/nginx/metricz.conf' %}
{% endif %}
{% endif %}