Skip to content

fakelog/fastrace-betterstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installation

[dependencies]
fastrace = { version = "0.7", features = ["enable"] }
fastrace-betterstack.git = "https://github.com/fakelog/fastrace-betterstack.git"
log = "0.4"
logforth = { version = "0.24", features = ["fastrace"] }

Usage

use fastrace::{Span, collector::Config, prelude::SpanContext};
use fastrace_betterstack::BetterstackReporter;
use log::error;
use logforth::append;

fn main() {
    // Initialize Betterstack reporter with your endpoint and token
    let reporter = BetterstackReporter::new(
        "https://your-betterstack-endpoint.com", // Replace with your Betterstack URL
        "your-betterstack-token",                 // Replace with your Betterstack token
    );

    // Configure logging
    logforth::builder()
        .dispatch(|d| {
            d.filter(log::LevelFilter::Debug)
                .append(append::FastraceEvent::default())
                .append(append::Stderr::default())
        })
        .apply();

    // Set the reporter for Fastrace
    fastrace::set_reporter(reporter, Config::default());

    // Create spans and log events
    {
        let parent = SpanContext::random();
        let root = Span::root("root", parent);
        let _span_guard = root.set_local_parent();

        error!("test error message"); // This will be sent to Betterstack
    }

    // Ensure all events are flushed before exiting
    fastrace::flush();
}

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages