Skip to content

Conversation

@kayagokalp
Copy link
Member

@kayagokalp kayagokalp commented Jan 13, 2026

Re-enabling tracing, it was problematic in the past because of how we integrated this. Little bit more details:

The WorkerGuard from fuel-telemetry was stored in a static OnceLock in forc-tracing, preventing its Drop implementation from running. This caused, zombie processes remaining after CLI tool execution

Refactored init_tracing_subscriber() to return the WorkerGuard to the caller, enabling proper RAII cleanup when programs exit.

@kayagokalp kayagokalp self-assigned this Jan 13, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Jan 13, 2026

LCOV of commit 9c5d1a2 during CI #50

Summary coverage rate:
  lines......: 44.2% (1249 of 2823 lines)
  functions..: 34.0% (158 of 465 functions)
  branches...: 28.4% (63 of 222 branches)

Files changed coverage rate: n/a

@kayagokalp kayagokalp changed the title [testing] feat: init fuel-telemetry feat: init fuel-telemetry Jan 19, 2026
@kayagokalp kayagokalp marked this pull request as ready for review January 19, 2026 05:18
@cursor
Copy link

cursor bot commented Jan 19, 2026

PR Summary

Introduces telemetry support across forc crates and refactors tracing initialization for proper lifecycle handling.

  • Bumps forc-tracing to 0.72.0 and adds a telemetry layer backed by fuel-telemetry (default feature), with HideTelemetryFilter, JSON-mode handling, regex/env filters, and an option to disable via FORC_DISABLE_TELEMETRY or TracingSubscriberOptions.disable_telemetry
  • Changes init_tracing_subscriber to return an optional WorkerGuard; callers (forc-crypto and forc-wallet) now hold and drop the guard to ensure clean shutdown; forc-node uses the new initializer
  • Adds telemetry feature plumbing to forc-crypto, forc-node, and forc-wallet (default-enabled), and wires fuel-telemetry into the workspace dependencies

Written by Cursor Bugbot for commit 9c5d1a2. This will update automatically on new commits. Configure here.

@kayagokalp kayagokalp requested a review from zees-dev January 19, 2026 05:18
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

.and_then(|silent| silent.then_some(LevelFilter::OFF))
});
})
.unwrap_or(LevelFilter::INFO);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RUST_LOG level settings overridden by default INFO filter

Medium Severity

The level_filter now defaults to LevelFilter::INFO via .unwrap_or(LevelFilter::INFO) and is always applied via .with_filter(level_filter). Previously, when no CLI verbosity options were set, level_filter was None and with_max_level was not called, allowing RUST_LOG to control log levels. Now, setting RUST_LOG=debug without CLI flags results in only INFO+ logs since both filters are ANDed together and the stricter one wins.

Additional Locations (1)

Fix in Cursor Fix in Web

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good one will address

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