1*242960d3S猫头猫import {logger, fileAsyncTransport} from 'react-native-logs'; 2*242960d3S猫头猫import RNFS from 'react-native-fs'; 3*242960d3S猫头猫import pathConst from '@/constants/pathConst'; 4*242960d3S猫头猫import {getConfig} from '../core/localConfigManager'; 5*242960d3S猫头猫 6*242960d3S猫头猫const config = { 7*242960d3S猫头猫 transport: fileAsyncTransport, 8*242960d3S猫头猫 transportOptions: { 9*242960d3S猫头猫 FS: RNFS, 10*242960d3S猫头猫 filePath: pathConst.logPath, 11*242960d3S猫头猫 fileName: `error-log-{date-today}.log`, 12*242960d3S猫头猫 }, 13*242960d3S猫头猫 dateFormat: 'local', 14*242960d3S猫头猫}; 15*242960d3S猫头猫 16*242960d3S猫头猫const traceConfig = { 17*242960d3S猫头猫 transport: fileAsyncTransport, 18*242960d3S猫头猫 transportOptions: { 19*242960d3S猫头猫 FS: RNFS, 20*242960d3S猫头猫 filePath: pathConst.logPath, 21*242960d3S猫头猫 fileName: `trace-log.log`, 22*242960d3S猫头猫 }, 23*242960d3S猫头猫 dateFormat: 'local', 24*242960d3S猫头猫}; 25*242960d3S猫头猫 26*242960d3S猫头猫const log = logger.createLogger(config); 27*242960d3S猫头猫const traceLogger = logger.createLogger(traceConfig); 28*242960d3S猫头猫 29*242960d3S猫头猫export function trace( 30*242960d3S猫头猫 desc: string, 31*242960d3S猫头猫 message: any, 32*242960d3S猫头猫 level: 'info' | 'error' = 'info', 33*242960d3S猫头猫) { 34*242960d3S猫头猫 if (__DEV__) { 35*242960d3S猫头猫 console.log(desc, message); 36*242960d3S猫头猫 } 37*242960d3S猫头猫 // 特殊情况记录操作路径 38*242960d3S猫头猫 if (getConfig('setting.basic.debug.traceLog')) { 39*242960d3S猫头猫 traceLogger[level]({ 40*242960d3S猫头猫 desc, 41*242960d3S猫头猫 message, 42*242960d3S猫头猫 }); 43*242960d3S猫头猫 } 44*242960d3S猫头猫} 45*242960d3S猫头猫 46*242960d3S猫头猫export function errorLog(desc: string, message: any) { 47*242960d3S猫头猫 if (getConfig('setting.basic.debug.errorLog')) { 48*242960d3S猫头猫 log.error({ 49*242960d3S猫头猫 desc, 50*242960d3S猫头猫 message, 51*242960d3S猫头猫 }); 52*242960d3S猫头猫 trace(desc, message, 'error'); 53*242960d3S猫头猫 } 54*242960d3S猫头猫} 55*242960d3S猫头猫 56*242960d3S猫头猫export {log}; 57