diff --git a/openfut-blaze-host/gate-evidence.sh b/openfut-blaze-host/gate-evidence.sh index 6ed5bfd..9247acd 100755 --- a/openfut-blaze-host/gate-evidence.sh +++ b/openfut-blaze-host/gate-evidence.sh @@ -114,6 +114,34 @@ else both " no trace configured (set OPENFUT_BLAZE_TRACE before starting the sidecar)" fi +# --------------------------------------------- python side (the other half) +# +# "Rust did not receive it" is weaker than "Python did". The redirector always +# runs on Python and is never switched, so it advertises the Blaze endpoint on +# every run; whether Python then receives the Blaze CONNECT it just advertised +# is the positive observation that says where the hop actually went. +both "" +both "--- PYTHON SIDE (positive/negative observation) ---" +PYLOG=/tmp/blaze_responder.log +if docker exec openfut-fut-backend test -f "$PYLOG" 2>/dev/null; then + docker exec openfut-fut-backend sh -c "grep -E 'REDIR SENT|BLAZE CONNECT from|closed' $PYLOG" \ + > "$DEST/python-blaze.log" 2>/dev/null || true + CLIENT="${OPENFUT_CLIENT_IP:-10.10.0.105}" + redirs="$(grep -c "REDIR SENT ('$CLIENT'" "$DEST/python-blaze.log" 2>/dev/null || echo 0)" + blazes="$(grep -c "BLAZE CONNECT from ('$CLIENT'" "$DEST/python-blaze.log" 2>/dev/null || echo 0)" + both " client $CLIENT — redirector hops served by Python: $redirs" + both " client $CLIENT — Blaze connections received by Python: $blazes" + both " most recent:" + grep -E "\('$CLIENT'" "$DEST/python-blaze.log" 2>/dev/null | tail -4 | sed 's/^/ /' \ + | tee -a "$DEST/summary.txt" || true + both "" + both " interpretation: a redirector hop with NO following Python Blaze CONNECT" + both " means the Blaze hop went elsewhere (the Rust sidecar). A Python Blaze" + both " CONNECT means it went to Python." +else + both " python blaze log not readable (container not running?)" +fi + # ----------------------------------------------------------- python health both "" both "--- PYTHON BACKEND (must stay healthy throughout) ---"