refactor: 替换服务端 console.log/error 为 winston logger
- folder-action.ts: 18处 console.log -> log.error - auth-action.ts: 4处 console.error -> log.error - dictionary-action/service.ts: 3处 -> log.error - translator-action/service.ts: 3处 -> log.error - bigmodel/translator/orchestrator.ts: console -> log.debug/info/error - bigmodel/tts.ts: console -> log.error/warn - bigmodel/dictionary/*.ts: console -> log.error/debug/info 客户端代码(browser、page.tsx)保留 console.error
This commit is contained in:
@@ -4,6 +4,7 @@ import { auth } from "@/auth";
|
||||
import { headers } from "next/headers";
|
||||
import { redirect } from "next/navigation";
|
||||
import { ValidateError } from "@/lib/errors";
|
||||
import { createLogger } from "@/lib/logger";
|
||||
import {
|
||||
ActionInputGetUserProfileByUsername,
|
||||
ActionInputSignIn,
|
||||
@@ -23,6 +24,8 @@ import {
|
||||
// Re-export types for use in components
|
||||
export type { ActionOutputAuth, ActionOutputUserProfile } from "./auth-action-dto";
|
||||
|
||||
const log = createLogger("auth-action");
|
||||
|
||||
/**
|
||||
* Sign up action
|
||||
* Creates a new user account
|
||||
@@ -68,7 +71,7 @@ export async function actionSignUp(prevState: ActionOutputAuth | undefined, form
|
||||
message: e.message,
|
||||
};
|
||||
}
|
||||
console.error("Sign up error:", e);
|
||||
log.error("Sign up failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: "Registration failed. Please try again later.",
|
||||
@@ -121,7 +124,7 @@ export async function actionSignIn(_prevState: ActionOutputAuth | undefined, for
|
||||
message: e.message,
|
||||
};
|
||||
}
|
||||
console.error("Sign in error:", e);
|
||||
log.error("Sign in failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: "Sign in failed. Please check your credentials.",
|
||||
@@ -144,7 +147,7 @@ export async function signOutAction() {
|
||||
if (e instanceof Error && e.message.includes('NEXT_REDIRECT')) {
|
||||
throw e;
|
||||
}
|
||||
console.error("Sign out error:", e);
|
||||
log.error("Sign out failed", { error: e });
|
||||
redirect("/login");
|
||||
}
|
||||
}
|
||||
@@ -170,7 +173,7 @@ export async function actionGetUserProfileByUsername(dto: ActionInputGetUserProf
|
||||
data: userProfile,
|
||||
};
|
||||
} catch (e) {
|
||||
console.error("Get user profile error:", e);
|
||||
log.error("Get user profile failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: "Failed to retrieve user profile",
|
||||
|
||||
@@ -2,8 +2,11 @@
|
||||
|
||||
import { ActionInputLookUpDictionary, ActionOutputLookUpDictionary, validateActionInputLookUpDictionary } from "./dictionary-action-dto";
|
||||
import { ValidateError } from "@/lib/errors";
|
||||
import { createLogger } from "@/lib/logger";
|
||||
import { serviceLookUp } from "./dictionary-service";
|
||||
|
||||
const log = createLogger("dictionary-action");
|
||||
|
||||
export const actionLookUpDictionary = async (dto: ActionInputLookUpDictionary): Promise<ActionOutputLookUpDictionary> => {
|
||||
try {
|
||||
return {
|
||||
@@ -18,7 +21,7 @@ export const actionLookUpDictionary = async (dto: ActionInputLookUpDictionary):
|
||||
message: e.message
|
||||
};
|
||||
}
|
||||
console.log(e);
|
||||
log.error("Dictionary lookup failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
import { executeDictionaryLookup } from "@/lib/bigmodel/dictionary/orchestrator";
|
||||
import { repoCreateLookUp, repoCreateLookUpWithItemAndEntries, repoSelectLastLookUpResult } from "./dictionary-repository";
|
||||
import { ServiceInputLookUp } from "./dictionary-service-dto";
|
||||
import { createLogger } from "@/lib/logger";
|
||||
|
||||
const log = createLogger("dictionary-service");
|
||||
|
||||
export const serviceLookUp = async (dto: ServiceInputLookUp) => {
|
||||
const {
|
||||
@@ -39,7 +42,7 @@ export const serviceLookUp = async (dto: ServiceInputLookUp) => {
|
||||
},
|
||||
response.entries
|
||||
).catch(error => {
|
||||
console.error('Failed to save dictionary data:', error);
|
||||
log.error("Failed to save dictionary data", { error });
|
||||
});
|
||||
|
||||
return response;
|
||||
@@ -51,7 +54,7 @@ export const serviceLookUp = async (dto: ServiceInputLookUp) => {
|
||||
definitionLang: definitionLang,
|
||||
dictionaryItemId: lastLookUpResult.id
|
||||
}).catch(error => {
|
||||
console.error('Failed to save dictionary data:', error);
|
||||
log.error("Failed to save dictionary data", { error });
|
||||
});
|
||||
return {
|
||||
standardForm: lastLookUpResult.standardForm,
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
import { auth } from "@/auth";
|
||||
import { headers } from "next/headers";
|
||||
import { ValidateError } from "@/lib/errors";
|
||||
import { createLogger } from "@/lib/logger";
|
||||
|
||||
const log = createLogger("folder-action");
|
||||
import {
|
||||
ActionInputCreatePair,
|
||||
ActionInputUpdatePairById,
|
||||
@@ -68,7 +71,7 @@ export async function actionGetPairsByFolderId(folderId: number) {
|
||||
data: await repoGetPairsByFolderId(folderId)
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -93,7 +96,7 @@ export async function actionUpdatePairById(id: number, dto: ActionInputUpdatePai
|
||||
message: 'success',
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -109,7 +112,7 @@ export async function actionGetUserIdByFolderId(folderId: number) {
|
||||
data: await repoGetUserIdByFolderId(folderId)
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -125,7 +128,7 @@ export async function actionGetFolderVisibility(folderId: number) {
|
||||
data: await repoGetFolderVisibility(folderId)
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -149,7 +152,7 @@ export async function actionDeleteFolderById(folderId: number) {
|
||||
message: 'success',
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -173,7 +176,7 @@ export async function actionDeletePairById(id: number) {
|
||||
message: 'success'
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -189,7 +192,7 @@ export async function actionGetFoldersWithTotalPairsByUserId(id: string): Promis
|
||||
data: await repoGetFoldersWithTotalPairsByUserId(id)
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -205,7 +208,7 @@ export async function actionGetFoldersByUserId(userId: string) {
|
||||
data: await repoGetFoldersByUserId(userId)
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -236,7 +239,7 @@ export async function actionCreatePair(dto: ActionInputCreatePair) {
|
||||
message: e.message
|
||||
};
|
||||
}
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -266,7 +269,7 @@ export async function actionCreateFolder(userId: string, folderName: string) {
|
||||
message: e.message
|
||||
};
|
||||
}
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -302,7 +305,7 @@ export async function actionRenameFolderById(id: number, newName: string) {
|
||||
message: e.message
|
||||
};
|
||||
}
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.'
|
||||
@@ -332,7 +335,7 @@ export async function actionSetFolderVisibility(
|
||||
message: 'success',
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.',
|
||||
@@ -352,7 +355,7 @@ export async function actionGetPublicFolders(): Promise<ActionOutputGetPublicFol
|
||||
})),
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.',
|
||||
@@ -372,7 +375,7 @@ export async function actionSearchPublicFolders(query: string): Promise<ActionOu
|
||||
})),
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.',
|
||||
@@ -411,7 +414,7 @@ export async function actionToggleFavorite(
|
||||
},
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.',
|
||||
@@ -449,7 +452,7 @@ export async function actionCheckFavorite(
|
||||
},
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.',
|
||||
@@ -487,7 +490,7 @@ export async function actionGetUserFavorites(): Promise<ActionOutputGetUserFavor
|
||||
})),
|
||||
};
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
log.error("Operation failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: 'Unknown error occured.',
|
||||
|
||||
@@ -6,9 +6,12 @@ import {
|
||||
validateActionInputTranslateText,
|
||||
} from "./translator-action-dto";
|
||||
import { ValidateError } from "@/lib/errors";
|
||||
import { createLogger } from "@/lib/logger";
|
||||
import { serviceTranslateText } from "./translator-service";
|
||||
import { getAnswer } from "@/lib/bigmodel/zhipu";
|
||||
|
||||
const log = createLogger("translator-action");
|
||||
|
||||
export const actionTranslateText = async (
|
||||
dto: ActionInputTranslateText
|
||||
): Promise<ActionOutputTranslateText> => {
|
||||
@@ -25,7 +28,7 @@ export const actionTranslateText = async (
|
||||
message: e.message,
|
||||
};
|
||||
}
|
||||
console.log(e);
|
||||
log.error("Translation action failed", { error: e });
|
||||
return {
|
||||
success: false,
|
||||
message: "Unknown error occurred.",
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
import { executeTranslation } from "@/lib/bigmodel/translator/orchestrator";
|
||||
import { repoCreateTranslationHistory, repoSelectLatestTranslation } from "./translator-repository";
|
||||
import { ServiceInputTranslateText, ServiceOutputTranslateText } from "./translator-service-dto";
|
||||
import { createLogger } from "@/lib/logger";
|
||||
|
||||
const log = createLogger("translator-service");
|
||||
|
||||
export const serviceTranslateText = async (
|
||||
dto: ServiceInputTranslateText
|
||||
@@ -31,7 +34,7 @@ export const serviceTranslateText = async (
|
||||
sourceIpa: needIpa ? response.sourceIpa : undefined,
|
||||
targetIpa: needIpa ? response.targetIpa : undefined,
|
||||
}).catch((error) => {
|
||||
console.error("Failed to save translation data:", error);
|
||||
log.error("Failed to save translation data", { error });
|
||||
});
|
||||
|
||||
return {
|
||||
@@ -54,7 +57,7 @@ export const serviceTranslateText = async (
|
||||
sourceIpa: lastTranslation.sourceIpa || undefined,
|
||||
targetIpa: lastTranslation.targetIpa || undefined,
|
||||
}).catch((error) => {
|
||||
console.error("Failed to save translation data:", error);
|
||||
log.error("Failed to save translation data", { error });
|
||||
});
|
||||
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user