Skip to content

Allow passing environment variables through to the agave process #7474

@SEJeff

Description

@SEJeff

The metrics logging is a bit out of control and excessively logs.

# grep solana_metrics::metrics firedancer-since-09:30.log | grep -c 09:30:01
1328

With an agave instance, I can do RUST_LOG=info,solana_metrics=warn to suppress this, but I am unable to do the same for firedancer as the sandbox seems to be clearing them:

void FD_FN_SENSITIVE
fd_sandbox_private_explicit_clear_environment_variables( void ) {
if( !environ ) return;
for( char * const * env = environ; *env; env++ ) {
ulong len = strlen( *env );
explicit_bzero( *env, len );
}
if( clearenv() ) FD_LOG_ERR(( "clearenv failed" ));
}

Can we add support for setting the env variables RUST_LOG and RUST_BACKTRACE to frankendancer for the agave bits until the full client is live?

I set that variable in the firedancer systemd unit and it didn't seem to be working. I confirmed this behaviour via:

# cat /proc/$(pgrep -f 'fdctl.*run-agave')/environ
#

This is an example of a single one of the log lines:

firedancer[20839]: INFO    2025-11-29 09:30:00.015801548 GMT+00  20838:7      firedancer:[${HOSTNAME_HERE}] :f10  fd1:[group]:0    metrics/src/metrics.rs(331)[solana_metrics::metrics]: datapoint: slot_stats_tracking_complete slot=128572897i last_index=63i num_repaired=0i num_recovered=0i min_turbine_fec_set_count=64i is_full=true is_rooted=true is_dead=false

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions