fix: sync logs via stderr for docker compose visibility
This commit is contained in:
parent
7612385ed6
commit
8f3a342108
1 changed files with 11 additions and 7 deletions
|
|
@ -98,7 +98,8 @@ result = run(str(data_dir / "extracts" / "keboola"), configs, url, token)
|
||||||
print(json.dumps(result))
|
print(json.dumps(result))
|
||||||
"""]
|
"""]
|
||||||
|
|
||||||
logger.info("Starting extractor subprocess for %d tables", len(table_configs))
|
import sys as _sys
|
||||||
|
print(f"[SYNC] Starting extractor subprocess for {len(table_configs)} tables", file=_sys.stderr, flush=True)
|
||||||
|
|
||||||
result = subprocess.run(
|
result = subprocess.run(
|
||||||
cmd, input=_json.dumps(serializable), capture_output=True, text=True,
|
cmd, input=_json.dumps(serializable), capture_output=True, text=True,
|
||||||
|
|
@ -107,22 +108,25 @@ print(json.dumps(result))
|
||||||
)
|
)
|
||||||
|
|
||||||
if result.stdout:
|
if result.stdout:
|
||||||
logger.info("Extractor result: %s", result.stdout.strip()[-500:])
|
print(f"[SYNC] Extractor stdout: {result.stdout.strip()[-500:]}", file=_sys.stderr, flush=True)
|
||||||
if result.stderr:
|
if result.stderr:
|
||||||
logger.warning("Extractor stderr: %s", result.stderr[-500:])
|
print(f"[SYNC] Extractor stderr: {result.stderr[-500:]}", file=_sys.stderr, flush=True)
|
||||||
if result.returncode != 0:
|
if result.returncode != 0:
|
||||||
logger.error("Extractor failed (exit %d)", result.returncode)
|
print(f"[SYNC] Extractor FAILED (exit {result.returncode})", file=_sys.stderr, flush=True)
|
||||||
|
else:
|
||||||
|
print(f"[SYNC] Extractor OK", file=_sys.stderr, flush=True)
|
||||||
|
|
||||||
# Rebuild master views (reads extract.duckdb files, no write conflict)
|
# Rebuild master views (reads extract.duckdb files, no write conflict)
|
||||||
from src.orchestrator import SyncOrchestrator
|
from src.orchestrator import SyncOrchestrator
|
||||||
orch = SyncOrchestrator()
|
orch = SyncOrchestrator()
|
||||||
views = orch.rebuild()
|
views = orch.rebuild()
|
||||||
logger.info("Orchestrator rebuild: %s", {k: len(v) for k, v in views.items()})
|
print(f"[SYNC] Orchestrator rebuild: {{{', '.join(f'{k}: {len(v)}' for k, v in views.items())}}}", file=_sys.stderr, flush=True)
|
||||||
|
|
||||||
except subprocess.TimeoutExpired:
|
except subprocess.TimeoutExpired:
|
||||||
logger.error("Extractor timed out after 1800s")
|
print("[SYNC] Extractor timed out after 1800s", file=_sys.stderr, flush=True)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"Data sync failed: {e}\n{traceback.format_exc()}")
|
print(f"[SYNC] FAILED: {e}", file=_sys.stderr, flush=True)
|
||||||
|
traceback.print_exc()
|
||||||
|
|
||||||
|
|
||||||
# ---- Manifest ----
|
# ---- Manifest ----
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue