@zhin.js/logger 0.1.9 → 0.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -30
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ pnpm add @zhin.js/logger
|
|
|
25
25
|
### 基础用法
|
|
26
26
|
|
|
27
27
|
```typescript
|
|
28
|
-
import {
|
|
28
|
+
import { getLogger, info, success, warn, error } from '@zhin.js/logger'
|
|
29
29
|
|
|
30
30
|
// 使用便捷函数(默认 logger)
|
|
31
31
|
info('应用启动')
|
|
@@ -34,7 +34,7 @@ warn('警告信息')
|
|
|
34
34
|
error('错误信息')
|
|
35
35
|
|
|
36
36
|
// 创建命名空间 Logger
|
|
37
|
-
const logger =
|
|
37
|
+
const logger = getLogger('MyApp')
|
|
38
38
|
logger.info('这是来自 MyApp 的日志')
|
|
39
39
|
```
|
|
40
40
|
|
|
@@ -55,9 +55,9 @@ logger.info('这是来自 MyApp 的日志')
|
|
|
55
55
|
### 1. 日志级别
|
|
56
56
|
|
|
57
57
|
```typescript
|
|
58
|
-
import {
|
|
58
|
+
import { getLogger, LogLevel } from '@zhin.js/logger'
|
|
59
59
|
|
|
60
|
-
const logger =
|
|
60
|
+
const logger = getLogger('Test')
|
|
61
61
|
|
|
62
62
|
logger.debug('调试信息') // 灰色
|
|
63
63
|
logger.info('一般信息') // 蓝色
|
|
@@ -72,7 +72,7 @@ logger.setLevel(LogLevel.WARN) // 只显示 WARN 和 ERROR
|
|
|
72
72
|
### 2. 命名空间和子 Logger
|
|
73
73
|
|
|
74
74
|
```typescript
|
|
75
|
-
const appLogger =
|
|
75
|
+
const appLogger = getLogger('App')
|
|
76
76
|
const dbLogger = appLogger.getLogger('Database') // 自动继承父级配置
|
|
77
77
|
const apiLogger = appLogger.getLogger('API')
|
|
78
78
|
|
|
@@ -90,7 +90,7 @@ routerLogger.info('路由就绪') // [App:API:HTTP:Router]: ...
|
|
|
90
90
|
### 3. 参数格式化
|
|
91
91
|
|
|
92
92
|
```typescript
|
|
93
|
-
const logger =
|
|
93
|
+
const logger = getLogger('Format')
|
|
94
94
|
|
|
95
95
|
// 支持 printf 风格的格式化,与 console.info 行为一致
|
|
96
96
|
logger.info('用户 %s 登录成功,ID: %d', 'John', 123)
|
|
@@ -101,7 +101,7 @@ logger.error('操作失败:%o', { code: 500, message: 'Server Error' })
|
|
|
101
101
|
### 4. 性能监控
|
|
102
102
|
|
|
103
103
|
```typescript
|
|
104
|
-
const logger =
|
|
104
|
+
const logger = getLogger('Performance')
|
|
105
105
|
|
|
106
106
|
// 方式1:使用返回的 Timer
|
|
107
107
|
const timer = logger.time('数据处理')
|
|
@@ -117,7 +117,7 @@ logger.timeEnd('API调用') // 输出: API调用 took 67.89ms
|
|
|
117
117
|
### 5. 配置继承与覆盖
|
|
118
118
|
|
|
119
119
|
```typescript
|
|
120
|
-
const appLogger =
|
|
120
|
+
const appLogger = getLogger('App')
|
|
121
121
|
|
|
122
122
|
// 子 Logger 自动继承父级配置
|
|
123
123
|
const dbLogger = appLogger.getLogger('Database')
|
|
@@ -141,11 +141,11 @@ console.log(appLogger.getChildLoggerNames()) // ['Database', 'Debug']
|
|
|
141
141
|
|
|
142
142
|
```typescript
|
|
143
143
|
import fs from 'node:fs'
|
|
144
|
-
import {
|
|
144
|
+
import { getLogger, FileTransport, ConsoleTransport } from '@zhin.js/logger'
|
|
145
145
|
|
|
146
146
|
const logFile = fs.createWriteStream('./app.log', { flags: 'a' })
|
|
147
147
|
|
|
148
|
-
const logger =
|
|
148
|
+
const logger = getLogger('FileApp', {
|
|
149
149
|
transports: [
|
|
150
150
|
new ConsoleTransport(), // 控制台输出(带颜色)
|
|
151
151
|
new FileTransport(logFile) // 文件输出(无颜色)
|
|
@@ -161,7 +161,7 @@ logger.addTransport(new FileTransport(logFile), true)
|
|
|
161
161
|
### 7. 自定义格式化器
|
|
162
162
|
|
|
163
163
|
```typescript
|
|
164
|
-
import {
|
|
164
|
+
import { getLogger, LogFormatter } from '@zhin.js/logger'
|
|
165
165
|
|
|
166
166
|
class CustomFormatter implements LogFormatter {
|
|
167
167
|
format(entry) {
|
|
@@ -170,7 +170,7 @@ class CustomFormatter implements LogFormatter {
|
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
const logger =
|
|
173
|
+
const logger = getLogger('Custom', {
|
|
174
174
|
formatter: new CustomFormatter()
|
|
175
175
|
})
|
|
176
176
|
|
|
@@ -183,9 +183,9 @@ logger.info('自定义格式的日志')
|
|
|
183
183
|
### 8. 流输出
|
|
184
184
|
|
|
185
185
|
```typescript
|
|
186
|
-
import {
|
|
186
|
+
import { getLogger, StreamTransport } from '@zhin.js/logger'
|
|
187
187
|
|
|
188
|
-
const logger =
|
|
188
|
+
const logger = getLogger('StreamApp', {
|
|
189
189
|
transports: [
|
|
190
190
|
new StreamTransport(process.stdout, false), // 保留颜色
|
|
191
191
|
new StreamTransport(process.stderr, true) // 移除颜色
|
|
@@ -298,19 +298,19 @@ const child2 = parent.getLogger('Child2', {
|
|
|
298
298
|
### 设置全局日志级别
|
|
299
299
|
|
|
300
300
|
```typescript
|
|
301
|
-
import {
|
|
301
|
+
import { setLevel, LogLevel } from '@zhin.js/logger'
|
|
302
302
|
|
|
303
|
-
//
|
|
304
|
-
|
|
303
|
+
// 设置默认 logger 的日志级别
|
|
304
|
+
setLevel(LogLevel.WARN)
|
|
305
305
|
```
|
|
306
306
|
|
|
307
307
|
### 设置全局格式化器
|
|
308
308
|
|
|
309
309
|
```typescript
|
|
310
|
-
import {
|
|
310
|
+
import { setFormatter, DefaultFormatter } from '@zhin.js/logger'
|
|
311
311
|
|
|
312
312
|
const customFormatter = new DefaultFormatter()
|
|
313
|
-
|
|
313
|
+
setFormatter(customFormatter)
|
|
314
314
|
```
|
|
315
315
|
|
|
316
316
|
### 添加全局输出器
|
|
@@ -378,17 +378,18 @@ class Logger {
|
|
|
378
378
|
|
|
379
379
|
```typescript
|
|
380
380
|
// Logger 管理(新架构)
|
|
381
|
-
function
|
|
381
|
+
function getLogger(name: string, options?: LoggerOptions): Logger
|
|
382
382
|
function getDefaultLogger(): Logger
|
|
383
|
-
function
|
|
384
|
-
|
|
385
|
-
// 全局设置(递归应用)
|
|
386
|
-
function setGlobalLogLevel(level: LogLevel): void
|
|
383
|
+
function getLogger(name: string, options?: LoggerOptions, parent?: Logger): Logger
|
|
384
|
+
function setLogger(name: string, options?: LoggerOptions, parent?: Logger): Logger
|
|
387
385
|
|
|
388
|
-
//
|
|
389
|
-
function
|
|
390
|
-
function
|
|
391
|
-
function
|
|
386
|
+
// 全局设置(应用到默认 logger)
|
|
387
|
+
function setLevel(level: LogLevel, logger?: Logger): void
|
|
388
|
+
function setFormatter(formatter: LogFormatter, logger?: Logger): void
|
|
389
|
+
function addTransport(transport: LogTransport, logger?: Logger): void
|
|
390
|
+
function removeTransport(transport: LogTransport, logger?: Logger): void
|
|
391
|
+
function setOptions(options: LoggerOptions, logger?: Logger): void
|
|
392
|
+
function getLoggerNames(logger?: Logger): string[]
|
|
392
393
|
|
|
393
394
|
// 便捷日志方法(使用默认 logger)
|
|
394
395
|
function debug(message: string, ...args: any[]): void
|
|
@@ -404,10 +405,10 @@ function timeEnd(label: string): void
|
|
|
404
405
|
|
|
405
406
|
```typescript
|
|
406
407
|
import { Plugin } from 'zhin.js'
|
|
407
|
-
import {
|
|
408
|
+
import { getLogger } from '@zhin.js/logger'
|
|
408
409
|
|
|
409
410
|
export default class MyPlugin extends Plugin {
|
|
410
|
-
private logger =
|
|
411
|
+
private logger = getLogger(`Plugin:${this.name}`)
|
|
411
412
|
|
|
412
413
|
async onMounted() {
|
|
413
414
|
this.logger.success('插件加载成功')
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhin.js/logger",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.11",
|
|
4
4
|
"description": "Structured logging system for Zhin.js bot framework",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@types/node": "^24.3.0",
|
|
31
31
|
"typescript": "^5.7.2",
|
|
32
|
-
"zhin.js": "1.0.
|
|
32
|
+
"zhin.js": "1.0.27"
|
|
33
33
|
},
|
|
34
34
|
"files": [
|
|
35
35
|
"lib"
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"directory": "basic/logger"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
|
-
"zhin.js": "1.0.
|
|
46
|
+
"zhin.js": "1.0.27"
|
|
47
47
|
},
|
|
48
48
|
"scripts": {
|
|
49
49
|
"build": "tsc",
|