Appearance
日志模块(logger)
logger.setLoggerLevel - 设置输出级别
typescript
function logger.setLoggerLevel(
level: 'error' | 'warn' | 'info' | 'debug' | 'off',
): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| level | string | 是 | - | error / warn / info / debug / off;仅输出不低于当前级别的日志;off 关闭全部 |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.setLoggerLevel('debug');
logger.debug('仅 debug 及以上可见');
logger.setLoggerLevel('off');logger.setVerbose - 详细日志开关
typescript
function logger.setVerbose(enabled: boolean): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| enabled | boolean | 是 | - | true 允许 log / debug / info 输出;正式包默认 false(仅 warn / error 与宿主异常) |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.setVerbose(true);
logger.log('调试细节可见');
logger.setVerbose(false);logger.isVerbose - 是否开启详细日志
typescript
function logger.isVerbose(): boolean;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| (无) | - | - | - | 无参数 |
返回值:
| 类型 | 描述 |
|---|---|
| boolean | 当前详细日志是否开启(同步) |
示例:
javascript
if (!logger.isVerbose()) {
logger.setVerbose(true);
}logger.setLogToFile - 是否写入文件
typescript
function logger.setLogToFile(enabled: boolean): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| enabled | boolean | 是 | true | true 写入 Documents/Logger/;false 仅控制台 |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.setLogToFile(false);
logger.info('仅 VS Code / PiP,不落盘');
logger.setLogToFile(true);logger.setMaxLogFileCount - 最大日志文件数
typescript
function logger.setMaxLogFileCount(count: number): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| count | number | 是 | 10 | 保留的日志文件个数上限;无效值按 10 处理;须在其它日志输出前调用 |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.setMaxLogFileCount(5);
logger.info('最多保留 5 个日志文件');logger.setMaxLogFileSize - 单文件大小上限
typescript
function logger.setMaxLogFileSize(sizeMb: number): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| sizeMb | number | 是 | 10 | 单个日志文件最大体积(MB);无效值按 10 处理;须在其它日志输出前调用 |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.setMaxLogFileSize(20);
logger.warn('单文件超过 20MB 将滚动');logger.resetLogFile - 重置日志文件
typescript
function logger.resetLogFile(): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| (无) | - | - | - | 关闭当前日志文件并创建新文件 |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.resetLogFile();
logger.info('新日志文件已创建');logger.log - 调试输出(不写文件)
typescript
function logger.log(...args: unknown[]): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| args | unknown[] | 否 | - | 任意参数;上报 VS Code「Auto Click E」与 PiP(level: log);受 setVerbose 控制;不写日志文件;原 auto.log 的替代 API |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logger.setVerbose(true);
logger.log('步骤完成', { x: 10, y: 20 });logger.debug / info / warn / error - 分级输出
typescript
function logger.debug(...args: unknown[]): void;
function logger.info(...args: unknown[]): void;
function logger.warn(...args: unknown[]): void;
function logger.error(...args: unknown[]): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| args | unknown[] | 否 | - | 任意参数;对象会尝试 JSON.stringify;受 setLoggerLevel 与 setVerbose 过滤(正式包默认屏蔽 debug / info) |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步);同时上报控制台并按需写文件 |
示例:
javascript
logger.debug('调试', { step: 1 });
logger.info('流程开始');
logger.warn('重试', 2);
logger.error('失败', new Error('timeout'));logd / logi / logw / loge - 全局快捷函数
typescript
function logd(...args: unknown[]): void;
function logi(...args: unknown[]): void;
function logw(...args: unknown[]): void;
function loge(...args: unknown[]): void;参数说明:
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| args | unknown[] | 否 | - | 分别等价于 logger.debug / info / warn / error |
返回值:
| 类型 | 描述 |
|---|---|
| void | 无(同步) |
示例:
javascript
logd('debug 快捷');
logi('info 快捷');
logw('warn 快捷');
loge('error 快捷');综合示例(配置 → 输出 → 重置)
示例:
javascript
logger.setLoggerLevel('info');
logger.setVerbose(true);
logger.setMaxLogFileCount(8);
logger.setMaxLogFileSize(15);
logger.setLogToFile(true);
logger.log('仅控制台 / PiP');
logger.info('任务开始', { id: 1 });
logw('可能较慢');
logger.debug('debug 在 info 级别下不会输出');
logger.resetLogFile();
logi('新文件继续记录');