1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-05-20 09:18:26 +00:00

[Support] : Provided Support to Log the Current Thread name attribute as mentioned in the documentations at https://actix.rs/docs/middleware/

This commit is contained in:
Atri10 2024-04-11 22:51:17 +05:30
parent 5a5486b484
commit b075618a75

View file

@ -10,6 +10,7 @@ use std::{
pin::Pin,
rc::Rc,
task::{Context, Poll},
thread::current
};
use actix_service::{Service, Transform};
@ -512,6 +513,7 @@ impl Format {
"U" => FormatText::UrlPath,
"T" => FormatText::Time,
"D" => FormatText::TimeMillis,
"P" => FormatText::ThreadName,
_ => FormatText::Str(m.as_str().to_owned()),
});
}
@ -531,6 +533,7 @@ impl Format {
#[derive(Debug, Clone)]
enum FormatText {
Str(String),
ThreadName,
Percent,
RequestLine,
RequestTime,
@ -593,6 +596,9 @@ impl FormatText {
FormatText::Str(ref string) => fmt.write_str(string),
FormatText::Percent => "%".fmt(fmt),
FormatText::ResponseSize => size.fmt(fmt),
FormatText::ThreadName => {
fmt.write_fmt(format_args!("{}", current().name().unwrap()))
}
FormatText::Time => {
let rt = OffsetDateTime::now_utc() - entry_time;
let rt = rt.as_seconds_f64();