pub struct LogRender { /* private fields */ }Expand description
A standalone formatter for rendering log records as Rich-styled tables.
Configurable with column visibility, time format, and level width.
Produces a Table with columns for time, level, message, and path.
§Examples
use rusty_rich::log_render::LogRender;
let mut renderer = LogRender::new()
.show_time(true)
.show_level(true)
.show_path(true);
let output = renderer.render_log(
Some("2024-01-15T10:30:00"),
"INFO",
"Server started successfully",
Some("src/main.rs"),
Some(42),
);Implementations§
Source§impl LogRender
impl LogRender
Sourcepub fn show_level(self, value: bool) -> Self
pub fn show_level(self, value: bool) -> Self
Builder: show or hide the level column.
Sourcepub fn time_format(self, format: impl Into<String>) -> Self
pub fn time_format(self, format: impl Into<String>) -> Self
Builder: set the time format string (displayed as-is in column header).
Sourcepub fn level_width(self, width: usize) -> Self
pub fn level_width(self, width: usize) -> Self
Builder: set the minimum width of the level column.
Sourcepub fn omit_repeated_times(self, value: bool) -> Self
pub fn omit_repeated_times(self, value: bool) -> Self
Builder: enable or disable omitting repeated timestamps.
Sourcepub fn get_level_style(level: &str) -> Style
pub fn get_level_style(level: &str) -> Style
Get the Rich style for a given log level name.
Looks up "logging.level.<lowercase_level>" in the default theme.
Sourcepub fn get_time_style() -> Style
pub fn get_time_style() -> Style
Get the style for the time column.
Sourcepub fn get_message_style() -> Style
pub fn get_message_style() -> Style
Get the style for the message column.
Sourcepub fn get_path_style() -> Style
pub fn get_path_style() -> Style
Get the style for the path column.
Sourcepub fn render_log(
&mut self,
time: Option<&str>,
level: &str,
message: &str,
path: Option<&str>,
line_no: Option<u32>,
) -> LogRecord
pub fn render_log( &mut self, time: Option<&str>, level: &str, message: &str, path: Option<&str>, line_no: Option<u32>, ) -> LogRecord
Format a single log record and return a LogRecord renderable.
Parameters:
time: the timestamp string (orNone)level: the log level name (e.g."INFO","ERROR")message: the log message contentpath: the source file path (orNone)line_no: the source line number (orNone)
Sourcepub fn render_batch(
&mut self,
records: &[(Option<&str>, &str, &str, Option<&str>, Option<u32>)],
) -> LogTable
pub fn render_batch( &mut self, records: &[(Option<&str>, &str, &str, Option<&str>, Option<u32>)], ) -> LogTable
Render multiple log records as a single table.
Sourcepub fn reset_time_cache(&mut self)
pub fn reset_time_cache(&mut self)
Reset the last-time cache (e.g. between rendering sessions).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for LogRender
impl RefUnwindSafe for LogRender
impl Send for LogRender
impl Sync for LogRender
impl Unpin for LogRender
impl UnsafeUnpin for LogRender
impl UnwindSafe for LogRender
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read more