fix: 日志系统

This commit is contained in:
wangzhongjie 2025-06-23 16:44:52 +08:00
parent 47fb785c9a
commit 4226dbf1f2

View File

@ -1,16 +1,19 @@
// 日志向外暴露的方法 // 日志向外暴露的方法
import dayTs from './Date'; import dayTs from './Date';
import worker from '@ohos.worker'; import worker from '@ohos.worker';
import { EnvironmentConfigurationType, LogWorkerMessage, WorkerMessageType } from '../model/index'; import { LogWorkerMessage, WorkerMessageType } from '../model/index';
import Prompt from '@system.prompt';
const MAX_MESSAGE_LENGTH = 300; const MAX_MESSAGE_LENGTH = 300;
const LOG_CHUNK_PREFIX = '[切割消息序号'; const LOG_CHUNK_PREFIX = '[切割消息序号';
class logWorker { class logWorker {
private workerInstance = new worker.ThreadWorker("entry/ets/workers/Log.ets") private workerInstance = new worker.ThreadWorker("entry/ets/workers/Log.ets")
// 是否开启日志 // 是否开启日志 1开启
private isLogEnabled: boolean = true; private isLogEnabled: string = "0";
constructor() {
console.log("当前环境配置单例模式")
}
// 正常日志 // 正常日志
log(...args: ESObject[]) { log(...args: ESObject[]) {
@ -33,16 +36,10 @@ class logWorker {
} }
// 初始化板子,需要判断duolun是否存在,不存在则创建 // 初始化板子,需要判断duolun是否存在,不存在则创建
init() { init(isOpenLog: string) {
const config = AppStorage.get<EnvironmentConfigurationType>("EnvironmentConfiguration"); console.log(`当前环境配置初始化: ${isOpenLog}`);
if (!config) { this.isLogEnabled = isOpenLog;
Prompt.showToast({ if (this.isLogEnabled === "1") {
message: "请先配置环境变量"
})
return;
}
this.isLogEnabled = config.isOpenLog === "1" ? true : false;
if (this.isLogEnabled) {
this.workerInstance = new worker.ThreadWorker("entry/ets/workers/Log.ets"); this.workerInstance = new worker.ThreadWorker("entry/ets/workers/Log.ets");
let data: LogWorkerMessage = { let data: LogWorkerMessage = {
type: WorkerMessageType.Init type: WorkerMessageType.Init
@ -61,7 +58,8 @@ class logWorker {
// 通用日志方法 // 通用日志方法
private logWithLevel(level: 'log' | 'info' | 'error', ...args: ESObject[]): void { private logWithLevel(level: 'log' | 'info' | 'error', ...args: ESObject[]): void {
if (this.isLogEnabled) { console.log("当前环境查看", this.isLogEnabled, "日志级别:", level)
if (this.isLogEnabled === "1") {
const message = this.formatMessage(...args); const message = this.formatMessage(...args);
if (message.length > MAX_MESSAGE_LENGTH) { if (message.length > MAX_MESSAGE_LENGTH) {
this.logLongMessage(level, message); this.logLongMessage(level, message);