From a381027bb1e3862e2251fa9e70a34a1ec5c906a7 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Tue, 7 Jul 2026 21:01:11 +0100 Subject: [PATCH] fix(telemetry): apply single rootless log path to workload stack Extend the log-mount consolidation to the phase-10 workload-validation assets, which still used the old `rippled` container path: - docker-compose.workload.yaml: mount target renamed to /var/log/xrpld, source made overridable via XRPLD_LOG_DIR (default /tmp/xrpld-validation) - otel-collector-config.grafanacloud.yaml: single glob /var/log/xrpld/*/debug.log - run-full-validation.sh sets XRPLD_LOG_DIR to its workdir Co-Authored-By: Claude Opus 4.8 --- docker/telemetry/docker-compose.workload.yaml | 6 ++++-- docker/telemetry/otel-collector-config.grafanacloud.yaml | 3 +-- docker/telemetry/workload/run-full-validation.sh | 4 +++- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/docker/telemetry/docker-compose.workload.yaml b/docker/telemetry/docker-compose.workload.yaml index cd58fa34d5..818c65f4c5 100644 --- a/docker/telemetry/docker-compose.workload.yaml +++ b/docker/telemetry/docker-compose.workload.yaml @@ -39,8 +39,10 @@ services: - "13133:13133" # Health check volumes: - ./otel-collector-config.yaml:/etc/otel-collector-config.yaml:ro - # Mount the validation workdir so filelog receiver can tail node logs. - - /tmp/xrpld-validation:/var/log/rippled:ro + # Mount the validation workdir so the filelog receiver can tail node + # logs. run-full-validation.sh sets XRPLD_LOG_DIR to its workdir; the + # default matches that workdir so a bare `docker compose up` also works. + - ${XRPLD_LOG_DIR:-/tmp/xrpld-validation}:/var/log/xrpld:ro depends_on: - tempo networks: diff --git a/docker/telemetry/otel-collector-config.grafanacloud.yaml b/docker/telemetry/otel-collector-config.grafanacloud.yaml index 40003b4ed5..060feffde1 100644 --- a/docker/telemetry/otel-collector-config.grafanacloud.yaml +++ b/docker/telemetry/otel-collector-config.grafanacloud.yaml @@ -40,8 +40,7 @@ receivers: endpoint: 0.0.0.0:4318 filelog: include: - - /var/log/rippled/*/debug.log - - /var/log/rippled-integration/*/debug.log + - /var/log/xrpld/*/debug.log operators: - type: regex_parser regex: '^(?P\S+\s+\S+)\s+\S+\s+(?:(?P\S+):)?(?P\S+)\s+(?:trace_id=(?P[a-f0-9]+)\s+span_id=(?P[a-f0-9]+)\s+)?(?P.*)$' diff --git a/docker/telemetry/workload/run-full-validation.sh b/docker/telemetry/workload/run-full-validation.sh index f32cca686b..6fc2c36ab9 100755 --- a/docker/telemetry/workload/run-full-validation.sh +++ b/docker/telemetry/workload/run-full-validation.sh @@ -179,7 +179,9 @@ mkdir -p "$WORKDIR" "$REPORT_DIR" # Step 1: Start observability stack # --------------------------------------------------------------------------- log "Step 1: Starting observability stack..." -docker compose -f "$COMPOSE_FILE" up -d +# Point the collector's log mount at this run's workdir so the filelog +# receiver tails the per-node debug.log files generated below. +XRPLD_LOG_DIR="$WORKDIR" docker compose -f "$COMPOSE_FILE" up -d log "Waiting for OTel Collector..." for attempt in $(seq 1 30); do