mirror of
https://github.com/farcasclaudiu/openclaw.git
synced 2026-06-29 07:01:40 +03:00
refactor(logging): add subsystem console formatting
This commit is contained in:
+30
-1
@@ -6,15 +6,34 @@ import {
|
||||
success,
|
||||
warn,
|
||||
} from "./globals.js";
|
||||
import { getLogger } from "./logging.js";
|
||||
import { createSubsystemLogger, getLogger } from "./logging.js";
|
||||
import { defaultRuntime, type RuntimeEnv } from "./runtime.js";
|
||||
|
||||
const subsystemPrefixRe = /^([a-z][a-z0-9-]{1,20}):\s+(.*)$/i;
|
||||
|
||||
function splitSubsystem(message: string) {
|
||||
const match = message.match(subsystemPrefixRe);
|
||||
if (!match) return null;
|
||||
const [, subsystem, rest] = match;
|
||||
return { subsystem, rest };
|
||||
}
|
||||
|
||||
export function logInfo(message: string, runtime: RuntimeEnv = defaultRuntime) {
|
||||
const parsed = runtime === defaultRuntime ? splitSubsystem(message) : null;
|
||||
if (parsed) {
|
||||
createSubsystemLogger(parsed.subsystem).info(parsed.rest);
|
||||
return;
|
||||
}
|
||||
runtime.log(info(message));
|
||||
getLogger().info(message);
|
||||
}
|
||||
|
||||
export function logWarn(message: string, runtime: RuntimeEnv = defaultRuntime) {
|
||||
const parsed = runtime === defaultRuntime ? splitSubsystem(message) : null;
|
||||
if (parsed) {
|
||||
createSubsystemLogger(parsed.subsystem).warn(parsed.rest);
|
||||
return;
|
||||
}
|
||||
runtime.log(warn(message));
|
||||
getLogger().warn(message);
|
||||
}
|
||||
@@ -23,6 +42,11 @@ export function logSuccess(
|
||||
message: string,
|
||||
runtime: RuntimeEnv = defaultRuntime,
|
||||
) {
|
||||
const parsed = runtime === defaultRuntime ? splitSubsystem(message) : null;
|
||||
if (parsed) {
|
||||
createSubsystemLogger(parsed.subsystem).info(parsed.rest);
|
||||
return;
|
||||
}
|
||||
runtime.log(success(message));
|
||||
getLogger().info(message);
|
||||
}
|
||||
@@ -31,6 +55,11 @@ export function logError(
|
||||
message: string,
|
||||
runtime: RuntimeEnv = defaultRuntime,
|
||||
) {
|
||||
const parsed = runtime === defaultRuntime ? splitSubsystem(message) : null;
|
||||
if (parsed) {
|
||||
createSubsystemLogger(parsed.subsystem).error(parsed.rest);
|
||||
return;
|
||||
}
|
||||
runtime.error(danger(message));
|
||||
getLogger().error(message);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user