Simplify logging
This commit is contained in:
28
Cargo.lock
generated
28
Cargo.lock
generated
@@ -340,6 +340,7 @@ dependencies = [
|
|||||||
"tokio",
|
"tokio",
|
||||||
"tracing",
|
"tracing",
|
||||||
"tracing-actix-web",
|
"tracing-actix-web",
|
||||||
|
"tracing-bunyan-formatter",
|
||||||
"tracing-log",
|
"tracing-log",
|
||||||
"tracing-subscriber",
|
"tracing-subscriber",
|
||||||
"uuid",
|
"uuid",
|
||||||
@@ -562,6 +563,16 @@ dependencies = [
|
|||||||
"version_check",
|
"version_check",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "gethostname"
|
||||||
|
version = "0.2.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "4addc164932852d066774c405dbbdb7914742d2b39e39e1a7ca949c856d054d1"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"winapi",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "getrandom"
|
name = "getrandom"
|
||||||
version = "0.2.3"
|
version = "0.2.3"
|
||||||
@@ -1530,6 +1541,23 @@ dependencies = [
|
|||||||
"syn",
|
"syn",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tracing-bunyan-formatter"
|
||||||
|
version = "0.3.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bd99ff040622c69c0fc4bd3ea5fe16630ce46400a79bd41339391b2d416ea24c"
|
||||||
|
dependencies = [
|
||||||
|
"gethostname",
|
||||||
|
"log",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
"time 0.3.5",
|
||||||
|
"tracing",
|
||||||
|
"tracing-core",
|
||||||
|
"tracing-log",
|
||||||
|
"tracing-subscriber",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tracing-core"
|
name = "tracing-core"
|
||||||
version = "0.1.21"
|
version = "0.1.21"
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ tracing-log = "0.1.0"
|
|||||||
tracing-actix-web = "=0.5.0-beta.9"
|
tracing-actix-web = "=0.5.0-beta.9"
|
||||||
regex = "1.5.0"
|
regex = "1.5.0"
|
||||||
lazy_static = "1.4.0"
|
lazy_static = "1.4.0"
|
||||||
|
tracing-bunyan-formatter = "0.3.2"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
once_cell = "1.0"
|
once_cell = "1.0"
|
||||||
|
|||||||
@@ -1,33 +1,19 @@
|
|||||||
use tracing::Level;
|
|
||||||
use tracing::{subscriber::set_global_default, Subscriber};
|
use tracing::{subscriber::set_global_default, Subscriber};
|
||||||
|
use tracing_bunyan_formatter::{BunyanFormattingLayer, JsonStorageLayer};
|
||||||
use tracing_log::LogTracer;
|
use tracing_log::LogTracer;
|
||||||
use tracing_subscriber::{filter, fmt, fmt::format, layer::SubscriberExt, EnvFilter, Layer};
|
use tracing_subscriber::fmt::TestWriter;
|
||||||
|
use tracing_subscriber::{layer::SubscriberExt, EnvFilter};
|
||||||
|
|
||||||
pub fn get_subscriber(env_filter_str: String) -> impl Subscriber + Send + Sync {
|
pub fn get_subscriber(env_filter_str: String) -> impl Subscriber + Send + Sync {
|
||||||
let fmt_layer = fmt::layer()
|
let formatting_layer = BunyanFormattingLayer::new("contextswitch-api".into(), TestWriter::new);
|
||||||
.event_format(format::Format::default().json())
|
|
||||||
.fmt_fields(format::JsonFields::new())
|
|
||||||
.flatten_event(true)
|
|
||||||
.with_test_writer();
|
|
||||||
|
|
||||||
let access_log_layer = fmt::layer()
|
|
||||||
.event_format(format::Format::default().json())
|
|
||||||
.fmt_fields(format::JsonFields::new())
|
|
||||||
.flatten_event(true)
|
|
||||||
.with_test_writer()
|
|
||||||
.with_span_events(format::FmtSpan::CLOSE)
|
|
||||||
.with_span_list(false)
|
|
||||||
.with_filter(
|
|
||||||
filter::Targets::new().with_target("tracing_actix_web::root_span_builder", Level::INFO),
|
|
||||||
);
|
|
||||||
|
|
||||||
let env_filter =
|
let env_filter =
|
||||||
EnvFilter::try_from_default_env().unwrap_or_else(|_| EnvFilter::new(env_filter_str));
|
EnvFilter::try_from_default_env().unwrap_or_else(|_| EnvFilter::new(env_filter_str));
|
||||||
|
|
||||||
tracing_subscriber::registry()
|
tracing_subscriber::registry()
|
||||||
.with(fmt_layer)
|
|
||||||
.with(access_log_layer)
|
|
||||||
.with(env_filter)
|
.with(env_filter)
|
||||||
|
.with(JsonStorageLayer)
|
||||||
|
.with(formatting_layer)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn init_subscriber(subscriber: impl Subscriber + Send + Sync) {
|
pub fn init_subscriber(subscriber: impl Subscriber + Send + Sync) {
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
pub mod test_helper;
|
pub mod test_helper;
|
||||||
|
|
||||||
use contextswitch_api::{taskwarrior, TaskDefinition};
|
use contextswitch_api::taskwarrior;
|
||||||
use contextswitch_types::Task;
|
use contextswitch_types::Task;
|
||||||
|
use contextswitch_types::TaskDefinition;
|
||||||
|
|
||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
async fn list_tasks() {
|
async fn list_tasks() {
|
||||||
|
|||||||
Reference in New Issue
Block a user