diff --git a/README.md b/README.md index fe078be..6bce904 100644 --- a/README.md +++ b/README.md @@ -472,6 +472,38 @@ Wer kein sudo hat, aber in der Gruppe `docker` ist: Container-Variante aus [netbird-observability/stacks/telegraf-node](https://gitea.m-m.bio/mm/netbird-observability) (privates Repo). Dort ist `network_mode: host` gesetzt — ohne das sieht Telegraf nur `lo`+`eth0` statt der echten Interfaces. +## Alte Logs archivieren (Historie nachträglich auswertbar machen) + +`inputs.tail` liest mit `initial_read_offset = "saved-or-end"` nur **Neues** — die +vorhandene Historie bleibt unausgewertet. Dafür gibt es ein eigenes Skript, das +dieselben Zeilen parst und als Prometheus-Blöcke ablegt: + +```sh +# Auf der Node: erst messen (ändert nichts) +curl -fsSL /scripts/x22-log-archive.sh -o /root/archiv.sh +bash /root/archiv.sh # Bestandsaufnahme + +# dann archivieren +bash /root/archiv.sh --backfill # erzeugt apache-archive.openmetrics + tar.gz +``` + +Das Skript prüft seine eigene Ausgabe **vor** der Übergabe: Zeitraum, Einheit +(Sekunden) und ein **Zukunfts-Check** — Punkte nach „jetzt" werden gemeldet, weil +sie später beim Import die Zeitreferenz verschieben würden. + +Eingespielt wird **nur in die Archiv-Instanz**, nie in die Produktions-TSDB: + +```sh +scp /root/apache-archive/apache-archive.openmetrics mm@:/tmp/ +ssh mm@ 'sudo /usr/local/bin/prom-archive-import.sh --file /tmp/apache-archive.openmetrics' +``` + +Geparst werden Access- **und** Error-Logs, inklusive rotierter `.log.1`/`.log.N.gz`. +Was entsteht: `apache_archive_requests_total` (je Domain/Status/Methode/Stunde), +`_response_bytes_total`, `_unique_clients`, `_errors_total` (je Level), +`_log_lines_total`. Als Datasource in Grafana einhängen +(`http://archive-prometheus:9090`) — Live und Archiv sind dann getrennt abfragbar. + ## Archiv-Import: Schutzschichten Alte Logs lassen sich als Prometheus-Blöcke archivieren (`scripts/apache-log-archive.py`).