-
Notifications
You must be signed in to change notification settings - Fork 8
feat(telemetry): core-node observability foundation — OTLP logs + traces + metrics #1317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Bojan131
wants to merge
20
commits into
main
Choose a base branch
from
feat/core-node-log-collection
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 19 commits
Commits
Show all changes
20 commits
Select commit
Hold shift + click to select a range
6cc97d0
feat(telemetry): opt-in OTLP log collection for core nodes (PoC)
Bojan131 ab56bf7
feat(telemetry): per-node Grafana selection + dashboard
Bojan131 4cdeef6
feat(telemetry): production ingest path for existing Loki (Alloy bridge)
Bojan131 242c54f
docs(telemetry): production deploy bundle + manager handoff
Bojan131 a3c5257
docs(telemetry): exact Cloudflare WAF expression + real-Grafana verif…
Bojan131 9a76a4a
feat(telemetry): fleet dashboard + operator guide + example alerts
Bojan131 d9b557b
chore: drop accidentally-committed localhost hardhat deploy artifacts
Bojan131 10da035
chore: restore tracked localhost_contracts.json (only the untracked l…
Bojan131 a30318d
feat(telemetry): OTel SDK foundation — traces+metrics providers, log …
Bojan131 80e536d
feat(telemetry): instrument spans + metrics across agent/publisher/ch…
Bojan131 a841d00
chore(telemetry): collector traces+metrics pipelines + mock OTLP coll…
Bojan131 2aa31f7
feat(telemetry): add protocol_router.send span + P2P send-duration me…
Bojan131 414936b
fix(telemetry): address bug-bot review (1 bug + 3 issues + 2 nits)
Bojan131 9f3625d
Merge remote-tracking branch 'origin/main' into feat/core-node-log-co…
Bojan131 f78d06f
fix(telemetry): two CI regressions from instrumentation
Bojan131 908e298
Merge remote-tracking branch 'origin/main' into feat/core-node-log-co…
Bojan131 0bfdadd
chore: drop accidentally-committed localhost Hardhat deploy artifacts…
Bojan131 6a8c971
feat(telemetry): address #1317 review — unify log resource attrs + fu…
Bojan131 66ef5b7
Merge remote-tracking branch 'origin/main' into feat/core-node-log-co…
Bojan131 2771d2e
fix(telemetry): tie OTel traces/metrics to the master gate + prove in…
Bojan131 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🟡 Issue: Publish telemetry is duplicated across both publish entry points
What's wrong
The same cross-cutting observability sequence is pasted into two very busy publish flows in a 4.5k-line file. That makes future telemetry changes easy to apply to one path and miss in the other, and it makes the publish logic less direct without adding a real abstraction.
Example
The direct path at lines 1296-1304 and 1440-1459 mirrors the SWM path at lines 4143-4150 and 4282-4380: derive chain id, start a timer, set publish status, mark failed spans, and emit
publishTotal/publishDuration.Suggested direction
Use a helper such as
withPublishTelemetry({ spanName, source, contextGraphId, chainId, attributes }, fn)that records status and metrics around the existing publish body. Let each method supply only the attributes that differ.For Agents
In
packages/agent/src/dkg-agent-publish.ts, factor the added publish telemetry into a small helper used by_publishandpublishFromSharedMemory. Preserve span names (agent.publish,agent.publish_from_swm), source labels (direct,swm), status handling, and metric attributes.