debug: change logging format
This commit is contained in:
parent
2f46a36255
commit
e3bdc24731
@ -33,6 +33,7 @@ use crate::{
|
|||||||
object::KObject,
|
object::KObject,
|
||||||
},
|
},
|
||||||
task::{process::Process, thread::Thread},
|
task::{process::Process, thread::Thread},
|
||||||
|
time::monotonic_time,
|
||||||
};
|
};
|
||||||
|
|
||||||
const MAX_DEBUG_SINKS: usize = 8;
|
const MAX_DEBUG_SINKS: usize = 8;
|
||||||
@ -160,7 +161,6 @@ impl log::Log for DebugSinkWrapper {
|
|||||||
let level = LogLevel::from(record.level());
|
let level = LogLevel::from(record.level());
|
||||||
let sink = self.sink();
|
let sink = self.sink();
|
||||||
let cpu = Cpu::try_local().map(|c| c.id());
|
let cpu = Cpu::try_local().map(|c| c.id());
|
||||||
let file = record.file().unwrap_or("<???>");
|
|
||||||
let line = record.line().unwrap_or(0);
|
let line = record.line().unwrap_or(0);
|
||||||
let args = record.args();
|
let args = record.args();
|
||||||
|
|
||||||
@ -171,25 +171,30 @@ impl log::Log for DebugSinkWrapper {
|
|||||||
};
|
};
|
||||||
|
|
||||||
let mut writer = SinkWriter { sink };
|
let mut writer = SinkWriter { sink };
|
||||||
|
let now = monotonic_time();
|
||||||
|
let s = now.seconds();
|
||||||
|
|
||||||
match record.target() {
|
match record.target() {
|
||||||
"program" => {
|
":program" => {
|
||||||
write!(writer, "{args}").ok();
|
write!(writer, "{prefix}{s:06}:").ok();
|
||||||
}
|
|
||||||
"raw" => {
|
|
||||||
write!(writer, "{prefix}{args}{suffix}").ok();
|
|
||||||
}
|
|
||||||
"io" => {
|
|
||||||
writeln!(writer, "[io] {args}").ok();
|
|
||||||
}
|
|
||||||
_ => {
|
|
||||||
write!(writer, "{prefix}").ok();
|
|
||||||
if let Some(cpu) = cpu {
|
if let Some(cpu) = cpu {
|
||||||
write!(writer, "{cpu}:").ok();
|
write!(writer, "{cpu}:").ok();
|
||||||
} else {
|
} else {
|
||||||
write!(writer, "?:").ok();
|
write!(writer, "?:").ok();
|
||||||
}
|
}
|
||||||
writeln!(writer, "{file}:{line}: {args}{suffix}").ok();
|
write!(writer, "ptrace:{args}").ok();
|
||||||
|
}
|
||||||
|
":raw" => {
|
||||||
|
write!(writer, "{prefix}{args}{suffix}").ok();
|
||||||
|
}
|
||||||
|
target => {
|
||||||
|
write!(writer, "{prefix}{s:06}:").ok();
|
||||||
|
if let Some(cpu) = cpu {
|
||||||
|
write!(writer, "{cpu}:").ok();
|
||||||
|
} else {
|
||||||
|
write!(writer, "?:").ok();
|
||||||
|
}
|
||||||
|
writeln!(writer, "{target}:{line}: {args}{suffix}").ok();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -429,11 +434,10 @@ pub fn disable_early_sinks() {
|
|||||||
/// Print a trace message coming from a process
|
/// Print a trace message coming from a process
|
||||||
pub fn program_trace(process: &Process, thread: &Thread, message: &str) {
|
pub fn program_trace(process: &Process, thread: &Thread, message: &str) {
|
||||||
log::debug!(
|
log::debug!(
|
||||||
target: "program",
|
target: ":program",
|
||||||
"[trace {}:{}:{:?}] {message}\n",
|
"{} ({}) {message}\n",
|
||||||
|
process.name,
|
||||||
process.id,
|
process.id,
|
||||||
thread.id,
|
|
||||||
*thread.name.read()
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -134,7 +134,7 @@ impl ProcessId {
|
|||||||
|
|
||||||
impl fmt::Display for ProcessId {
|
impl fmt::Display for ProcessId {
|
||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
write!(f, "<Process {}>", self.0)
|
write!(f, "{}", self.0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user