Skip to content

Commit 40dd7e0

Browse files
committed
optionally use JSON format for logs
1 parent a6435f1 commit 40dd7e0

File tree

2 files changed

+17
-9
lines changed

2 files changed

+17
-9
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ sentry-tower = { version = "0.34.0", features = ["http"] }
2727
sentry-anyhow = { version = "0.34.0", features = ["backtrace"] }
2828
log = "0.4"
2929
tracing = "0.1.37"
30-
tracing-subscriber = { version = "0.3.16", default-features = false, features = ["ansi", "fmt", "env-filter", "tracing-log"] }
30+
tracing-subscriber = { version = "0.3.16", default-features = false, features = ["ansi", "fmt", "json", "env-filter", "tracing-log"] }
3131
tracing-log = "0.2.0"
3232
regex = "1"
3333
clap = { version = "4.0.22", features = [ "derive" ] }

src/bin/cratesfyi.rs

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,22 @@ fn main() {
3333
// through rustwide.
3434
rustwide::logging::init_with(LogTracer::new());
3535

36-
let tracing_registry = tracing_subscriber::registry()
37-
.with(tracing_subscriber::fmt::layer())
38-
.with(
39-
EnvFilter::builder()
40-
.with_default_directive(Directive::from_str("docs_rs=info").unwrap())
41-
.with_env_var("DOCSRS_LOG")
42-
.from_env_lossy(),
43-
);
36+
let log_formatter = {
37+
let log_format = env::var("DOCSRS_LOG_FORMAT").unwrap_or_default();
38+
39+
if log_format == "json" {
40+
tracing_subscriber::fmt::layer().json().boxed()
41+
} else {
42+
tracing_subscriber::fmt::layer().boxed()
43+
}
44+
};
45+
46+
let tracing_registry = tracing_subscriber::registry().with(log_formatter).with(
47+
EnvFilter::builder()
48+
.with_default_directive(Directive::from_str("docs_rs=info").unwrap())
49+
.with_env_var("DOCSRS_LOG")
50+
.from_env_lossy(),
51+
);
4452

4553
let _sentry_guard = if let Ok(sentry_dsn) = env::var("SENTRY_DSN") {
4654
tracing::subscriber::set_global_default(tracing_registry.with(

0 commit comments

Comments
 (0)