feat: update dist

This commit is contained in:
Shinwoo PARK 2025-02-11 21:17:50 +09:00
parent 756dd6d8c2
commit 925d445af5
2 changed files with 21 additions and 9 deletions

View File

@ -1,4 +1,4 @@
import { ControllerOptions, ScopeOptions } from "@nestjs/common";
import { LogLevel, ControllerOptions, ScopeOptions } from "@nestjs/common";
export declare function LoggedInjectable(options?: ScopeOptions & {
verbose?: boolean;
}): (target: any) => void;
@ -8,8 +8,14 @@ export declare function LoggedController(options: ControllerOptions & {
verbose?: boolean;
}): (target: any) => void;
interface OverrideBuildOptions {
callLogLevel: LogLevel | 'skip';
returnLogLevel: LogLevel | 'skip';
errorLogLevel: LogLevel | 'skip';
/** @deprecated use `callLogLevel: 'skip'` instead */
skipCallLog: boolean;
/** @deprecated use `returnLogLevel: 'skip'` instead */
skipReturnLog: boolean;
/** @deprecated use `errorLogLevel: 'skip'` instead */
skipErrorLog: boolean;
}
export declare function LoggedFunction<F extends Array<any>, R>(options?: Partial<OverrideBuildOptions>): (_target: any, key: string, descriptor: TypedPropertyDescriptor<(...args: F) => R | Promise<R>>) => void;

22
dist/lib/logged.js vendored
View File

@ -73,13 +73,19 @@ function LoggedController(param) {
}
exports.LoggedController = LoggedController;
const defaultOverrideBuildOptions = {
callLogLevel: 'log',
returnLogLevel: 'log',
errorLogLevel: 'error',
skipCallLog: false,
skipReturnLog: false,
skipErrorLog: false,
};
class LoggedMetadata {
constructor(options) {
this.options = options ?? defaultOverrideBuildOptions;
this.options = {
...defaultOverrideBuildOptions,
...(options ?? {}),
};
}
updateOption(options) {
this.options = {
@ -101,8 +107,8 @@ function overrideBuild(originalFunction, baseLogger, metadatas, key, returnsData
}
injectedLogger = args[metadatas.scopedLoggerInjectableParam];
}
if (!logged.options.skipCallLog) {
injectedLogger.log(`${route ? "HIT HTTP" : "CALL"} ${route ? `${route.fullRoute} (${key})` : key} ${metadatas.loggedParams && metadatas.loggedParams.length > 0
if (logged.options.callLogLevel !== 'skip') {
injectedLogger[logged.options.callLogLevel](`${route ? "HIT HTTP" : "CALL"} ${route ? `${route.fullRoute} (${key})` : key} ${metadatas.loggedParams && metadatas.loggedParams.length > 0
? "WITH " +
metadatas.loggedParams.map(({ name, index, include, exclude }) => name +
"=" +
@ -114,7 +120,7 @@ function overrideBuild(originalFunction, baseLogger, metadatas, key, returnsData
}
try {
const r = originalFunction.call(this, ...args);
if (!logged.options.skipReturnLog) {
if (logged.options.returnLogLevel !== 'skip') {
if (originalFunction.constructor.name === 'AsyncFunction' ||
(r && typeof r === 'object' && typeof r['then'] === 'function')) {
return r['then']((r) => {
@ -135,7 +141,7 @@ function overrideBuild(originalFunction, baseLogger, metadatas, key, returnsData
? "WITH " + JSON.stringify(r)
: "WITH " + r
: "";
injectedLogger.log(route
injectedLogger[logged.options.returnLogLevel](route
? `RETURNED HTTP ${route.fullRoute} (${key}) ${resultLogged}`
: `RETURNED ${key} ${resultLogged}`);
return r;
@ -159,7 +165,7 @@ function overrideBuild(originalFunction, baseLogger, metadatas, key, returnsData
? "WITH " + JSON.stringify(r)
: "WITH " + r
: "";
injectedLogger.log(route
injectedLogger[logged.options.returnLogLevel](route
? `RETURNED HTTP ${route.fullRoute} (${key}) ${resultLogged}`
: `RETURNED ${key} ${resultLogged}`);
return r;
@ -170,8 +176,8 @@ function overrideBuild(originalFunction, baseLogger, metadatas, key, returnsData
}
}
catch (e) {
if (!logged.options.skipErrorLog) {
injectedLogger.error(`WHILE ${route ? `HTTP ${route.fullRoute} (${key})` : key} ERROR ${e}`);
if (logged.options.errorLogLevel !== 'skip') {
injectedLogger[logged.options.errorLogLevel](`WHILE ${route ? `HTTP ${route.fullRoute} (${key})` : key} ERROR ${e}`);
}
throw e;
}