Skip to content

Commit edd559a

Browse files
author
Aaron Blankstein
authored
Merge pull request #1944 from blockstack/feat/slogging
Discussion: Structured logging via `slog`
2 parents 13e1648 + a3463ef commit edd559a

File tree

12 files changed

+306
-112
lines changed

12 files changed

+306
-112
lines changed

Cargo.lock

Lines changed: 141 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,9 @@ percent-encoding = "2.1.0"
5858
sha2 = "0.8.0"
5959
prometheus = { version = "0.9", optional = true }
6060
integer-sqrt = "0.1.3"
61+
slog = "2.5.2"
62+
slog-term = "2.6.0"
63+
slog-json = { version = "2.3.0", optional = true }
6164

6265
[dependencies.serde_json]
6366
version = "1.0"
@@ -88,10 +91,11 @@ assert-json-diff = "1.0.0"
8891
criterion = "0.3"
8992

9093
[features]
91-
developer-mode = []
9294
default = ["developer-mode"]
95+
developer-mode = []
9396
monitoring_prom = ["prometheus"]
9497
tx_log = []
98+
slog_json = ["slog-json"]
9599

96100
[target.'cfg(all(target_arch = "x86_64", not(target_env = "msvc")))'.dependencies]
97101
sha2-asm = "0.5.3"

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ RUN apk add --no-cache musl-dev
88

99
RUN mkdir /out
1010

11-
RUN cd testnet/stacks-node && cargo build --features "monitoring_prom" --release
11+
RUN cd testnet/stacks-node && cargo build --features monitoring_prom,slog_json --release
1212
RUN cd testnet/bitcoin-neon-controller && cargo build --release
1313

1414
RUN cp target/release/stacks-node /out

Dockerfile.stretch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ COPY . .
66

77
RUN mkdir /out
88

9-
RUN cd testnet/stacks-node && cargo build --features "monitoring_prom" --release
9+
RUN cd testnet/stacks-node && cargo build --features monitoring_prom,slog_json --release
1010
RUN cd testnet/bitcoin-neon-controller && cargo build --release
1111

1212
RUN cp target/release/stacks-node /out

src/blockstack_cli.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -609,7 +609,6 @@ fn decode_block(args: &[String], _version: TransactionVersion) -> Result<String,
609609
}
610610

611611
fn main() {
612-
log::set_loglevel(log::LOG_DEBUG).unwrap();
613612
let mut argv: Vec<String> = env::args().collect();
614613

615614
argv.remove(0);

src/chainstate/stacks/index/marf.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ impl<'a, T: MarfTrieId> MarfTransaction<'a, T> {
213213
if !is_parent_sentinel {
214214
debug!("Extending off of existing node {}", chain_tip);
215215
} else {
216-
info!("First-ever block {}", next_chain_tip);
216+
info!("First-ever block {}", next_chain_tip; "block" => %next_chain_tip);
217217
}
218218

219219
self.storage.open_block(chain_tip)?;

src/clarity_cli.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ use blockstack_lib::{clarity, util::log};
2626
use std::env;
2727

2828
fn main() {
29-
log::set_loglevel(log::LOG_DEBUG).unwrap();
3029
let argv: Vec<String> = env::args().collect();
3130

3231
clarity::invoke_command(&argv[0], &argv[1..]);

src/lib.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@ extern crate sha3;
4141
extern crate time;
4242
extern crate url;
4343

44+
#[macro_use(o, slog_log, slog_trace, slog_debug, slog_info, slog_warn, slog_error)]
45+
extern crate slog;
46+
#[cfg(feature = "slog_json")]
47+
extern crate slog_json;
48+
extern crate slog_term;
49+
4450
#[macro_use]
4551
extern crate serde_derive;
4652
#[macro_use]

src/main.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
extern crate blockstack_lib;
2525
extern crate rusqlite;
2626

27+
#[macro_use(o, slog_log, slog_trace, slog_debug, slog_info, slog_warn, slog_error)]
28+
extern crate slog;
29+
2730
use blockstack_lib::burnchains::db::BurnchainBlockData;
2831
use blockstack_lib::*;
2932

@@ -54,8 +57,6 @@ use rusqlite::Connection;
5457
use rusqlite::OpenFlags;
5558

5659
fn main() {
57-
log::set_loglevel(log::LOG_INFO).unwrap();
58-
5960
let mut argv: Vec<String> = env::args().collect();
6061
if argv.len() < 2 {
6162
eprintln!("Usage: {} command [args...]", argv[0]);

0 commit comments

Comments
 (0)