fix(obs): wire Prometheus metrics and Loki job label for Grafana dashboards

Three root causes confirmed via live server investigation (issue #604):

1. ManagementWebSecurityAutoConfiguration applied HTTP Basic auth to the
   management port (8081), causing Prometheus to receive 401 HTML responses
   instead of metrics. Excluded the auto-config — the Docker network
   (archiv-net) provides the security boundary for this internal port.

2. promtail-config.yml had no `job` relabel rule. Grafana's Loki dashboards
   query {job="$app"} which matched nothing; logs were in Loki under
   compose_service but invisible to every dashboard panel.

3. prometheus.yml had a stale comment claiming the spring-boot target would
   be DOWN until micrometer-registry-prometheus was added — it has been
   present in pom.xml for some time.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Marcel
2026-05-16 11:20:59 +02:00
parent 7712180f3a
commit 5dd74df293
3 changed files with 5 additions and 3 deletions

View File

@@ -1,9 +1,11 @@
package org.raddatz.familienarchiv;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
// Excluded: management port (8081) is network-isolated inside archiv-net; no app-level auth needed.
@SpringBootApplication(exclude = {ManagementWebSecurityAutoConfiguration.class})
public class FamilienarchivApplication {
public static void main(String[] args) {