55 lines
1.8 KiB
JavaScript
55 lines
1.8 KiB
JavaScript
import util from 'node:util';
|
|
const defaultFormatArgs = (args) => args;
|
|
const log = ({ formatArgs = defaultFormatArgs, } = { formatArgs: defaultFormatArgs }) => (...args) => console.log('[mcp-superassistant-proxy]', ...formatArgs(args));
|
|
const logStderr = ({ formatArgs = defaultFormatArgs, } = { formatArgs: defaultFormatArgs }) => (...args) => console.error('[mcp-superassistant-proxy]', ...formatArgs(args));
|
|
const noneLogger = {
|
|
info: () => { },
|
|
error: () => { },
|
|
debug: () => { },
|
|
warn: () => { },
|
|
};
|
|
const infoLogger = {
|
|
info: log(),
|
|
error: logStderr(),
|
|
debug: () => { },
|
|
warn: logStderr(),
|
|
};
|
|
const infoLoggerStdio = {
|
|
info: logStderr(),
|
|
error: logStderr(),
|
|
debug: () => { },
|
|
warn: logStderr(),
|
|
};
|
|
const debugFormatArgs = (args) => args.map((arg) => {
|
|
if (typeof arg === 'object') {
|
|
return util.inspect(arg, {
|
|
depth: null,
|
|
colors: process.stderr.isTTY,
|
|
compact: false,
|
|
});
|
|
}
|
|
return arg;
|
|
});
|
|
const debugLogger = {
|
|
info: log({ formatArgs: debugFormatArgs }),
|
|
error: logStderr({ formatArgs: debugFormatArgs }),
|
|
debug: log({ formatArgs: debugFormatArgs }),
|
|
warn: logStderr({ formatArgs: debugFormatArgs }),
|
|
};
|
|
const debugLoggerStdio = {
|
|
info: logStderr({ formatArgs: debugFormatArgs }),
|
|
error: logStderr({ formatArgs: debugFormatArgs }),
|
|
debug: logStderr({ formatArgs: debugFormatArgs }),
|
|
warn: logStderr({ formatArgs: debugFormatArgs }),
|
|
};
|
|
export const getLogger = ({ logLevel, outputTransport, }) => {
|
|
if (logLevel === 'none') {
|
|
return noneLogger;
|
|
}
|
|
if (logLevel === 'debug') {
|
|
return outputTransport === 'stdio' ? debugLoggerStdio : debugLogger;
|
|
}
|
|
// info logLevel
|
|
return outputTransport === 'stdio' ? infoLoggerStdio : infoLogger;
|
|
};
|
|
//# sourceMappingURL=getLogger.js.map
|