log_init

Crates.iolog_init
lib.rslog_init
version0.1.25
created_at2025-08-29 03:51:00.675504+00
updated_at2025-09-02 06:01:02.197806+00
descriptionlog_init
homepagehttps://github.com/i18n-site/rust/tree/dev/log_init
repositoryhttps://github.com/i18n-site/rust.git
max_upload_size
id1815306
size35,838
i18n.site (i18nsite)

documentation

README

log_init

#![feature(doc_auto_cfg)]
#![feature(doc_cfg)]

mod kv;
use kv::Kv;
pub mod layout;
use logforth::filter::EnvFilter;
use path_end::path_end;
use workspace_root::get_workspace_root_directory;

#[static_init::dynamic]
pub static TZ: jiff::tz::TimeZone = jiff::tz::TimeZone::try_system().unwrap();

#[static_init::dynamic]
pub static ROOT: String = {
  path_end(
    get_workspace_root_directory()
      .unwrap_or_default()
      .to_str()
      .unwrap_or_default(),
  )
};

#[static_init::dynamic]
pub static HOME_DIR: String = path_end(
  dirs::home_dir()
    .unwrap_or_default()
    .to_str()
    .unwrap_or_default(),
);

pub fn init() {
  use logforth::append;
  logforth::builder()
    .dispatch(|d| {
      let d = d.filter(EnvFilter::from_default_env());
      #[cfg(feature = "stdout")]
      d.append(append::Stdout::default().with_layout(layout::Text::default()))
    })
    .apply();
}

About

This project is an open-source component of i18n.site ⋅ Internationalization Solution.

关于

本项目为 i18n.site ⋅ 国际化解决方案 的开源组件。

Commit count: 68

cargo fmt