Skip to content

feat(otel): tracing helpers and header propagation (restack) - #915

Merged
lmeyerov merged 9 commits into
masterfrom
restack/otel
Mar 2, 2026
Merged

lmeyerov merged 9 commits into
masterfrom
restack/otel

Conversation

@lmeyerov

@lmeyerov lmeyerov commented Feb 5, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • add optional OpenTelemetry helper for client tracing
  • propagate trace headers through plot/upload/remote GFQL paths
  • add focused tests for header propagation

Status

Testing

  • uv run pytest graphistry/tests/test_arrow_uploader.py
  • uv run pytest graphistry/tests/test_chain_remote_auth.py
  • uv run pytest graphistry/tests/test_trace_headers_behavior.py

lmeyerov and others added 8 commits March 1, 2026 21:41
- Add @otel_traced decorator to chain(), hop(), gfql() functions
- Add otel_span() calls around DFSamePathExecutor stages
- Capture key attributes: chain_len, where_len, engine, node/edge counts
- All instrumentation is no-op when GRAPHISTRY_OTEL is not enabled

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
The graphistry.ArrowFileUploader module is shadowed by the class re-export
in graphistry/__init__.py, causing mock.patch() with a string path to fail.
Use sys.modules lookup and patch.object to correctly patch the module-level
inject_trace_headers function.
@lmeyerov
lmeyerov merged commit 7451231 into master Mar 2, 2026
64 checks passed
@lmeyerov
lmeyerov deleted the restack/otel branch March 2, 2026 06:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant