Was ist der richtige REGEX für die allowlist in app.yml?

Wie ist das korrekte Format für _REGEX in der Datei app.yml?

Ist dies richtig?

  DISCOURSE_PROMETHEUS_TRUSTED_IP_ALLOWLIST_REGEX: "(35.247.25.222|34.83.69.98|35.192.150.184)"

Ich werde versuchen, alle von grafana.com für das Scraping verwendeten IP-Adressen aufzulisten (https://grafana.com/api/hosted-grafana/source-ips.txt).

Sieht mehr oder weniger richtig aus. Du solltest die .-Zeichen jedoch vielleicht escapen und ^ sowie $ hinzufügen.

Ich hätte wahrscheinlich erwähnen sollen, dass es nicht funktioniert…

Ich habe versucht, die IP-Adresse meines Rechners hinzuzufügen, und es kann nicht auf die Metriken zugreifen, ohne sich bei Discourse anzumelden.

Ich verstehe deinen Punkt bezüglich der Escape-Zeichen für den Punkt. In diesem Fall wird dem regulären Ausdruck nur IP-Adressen übergeben, sodass das Escape des Punkts das Ergebnis nicht ändert, aber die Lesbarkeit erschwert. Außerdem verwendet grafana.com bis zu 100 IP-Adressen, um Daten abzurufen, sodass diese Zeile möglicherweise zu lang wird…

Es scheint, als würde $ bei der Übersetzung von containers/<container>.conf in die Container-Umgebung escapet werden.

Container-Konfiguration:

  ## Erlaubte IPs für Prometheus-Metriken
  DISCOURSE_PROMETHEUS_TRUSTED_IP_ALLOWLIST_REGEX: "^10.20.20.5$"

Container-Umgebung:

declare -x DISCOURSE_PROMETHEUS_TRUSTED_IP_ALLOWLIST_REGEX="^10.20.20.5\$"