@ikenxuan/amagi 1.4.8 → 1.4.9

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.
@@ -1,3 +1,3 @@
1
- import log4js from 'log4js';
2
- declare const logger: log4js.Logger;
1
+ import log from 'loglevel';
2
+ declare const logger: log.RootLogger;
3
3
  export default logger;
@@ -1,28 +1,28 @@
1
- import log4js from 'log4js';
2
- log4js.configure({
3
- appenders: {
4
- console: {
5
- type: 'stdout',
6
- layout: {
7
- type: 'pattern',
8
- pattern: '%[[amagi][%d{hh:mm:ss.SSS}][%4.4p]%] %m',
9
- },
10
- },
11
- command: {
12
- type: 'dateFile', // 可以是console,dateFile,file,Logstash等
13
- filename: 'logs/command', // 将会按照filename和pattern拼接文件名
14
- pattern: 'yyyy-MM-dd.log',
15
- numBackups: 15,
16
- alwaysIncludePattern: true,
17
- layout: {
18
- type: 'pattern',
19
- pattern: '[%d{hh:mm:ss.SSS}][%4.4p] %m',
20
- },
21
- },
1
+ import log from 'loglevel';
2
+ import prefix from 'loglevel-plugin-prefix';
3
+ import chalk from 'chalk';
4
+ const colors = {
5
+ TRACE: chalk.magenta,
6
+ DEBUG: chalk.cyan,
7
+ INFO: chalk.blue,
8
+ WARN: chalk.yellow,
9
+ ERROR: chalk.red,
10
+ };
11
+ prefix.reg(log);
12
+ log.enableAll();
13
+ prefix.apply(log, {
14
+ format(level, name, timestamp) {
15
+ const levelKey = level.toUpperCase();
16
+ if (!(levelKey in colors)) {
17
+ throw new Error(`Invalid log level: ${levelKey}`);
18
+ }
19
+ return `${chalk.gray(`[${timestamp}]`)} ${colors[levelKey](level)} ${chalk.green(`${name}:`)}`;
22
20
  },
23
- categories: {
24
- default: { appenders: ['console'], level: 'debug' },
21
+ });
22
+ prefix.apply(log.getLogger('critical'), {
23
+ format(level, name, timestamp) {
24
+ return chalk.red.bold(`[${timestamp}] ${level} ${name}:`);
25
25
  },
26
26
  });
27
- const logger = log4js.getLogger();
27
+ const logger = log;
28
28
  export default logger;
@@ -1,7 +1,7 @@
1
1
  import { logger } from '../model/index.js';
2
2
  /** 启动监听 */
3
3
  export const StartClient = async (client, options) => {
4
- return client.listen({ port: options.port, host: '[::]' }, (_err, _address) => {
4
+ return client.listen({ port: options.port, host: '::' }, (_err, _address) => {
5
5
  if (_err)
6
6
  logger.error(_err);
7
7
  logger.info(`amagi server listening on http://localhost:${options.port}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikenxuan/amagi",
3
- "version": "1.4.8",
3
+ "version": "1.4.9",
4
4
  "type": "module",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -34,7 +34,8 @@
34
34
  "chokidar": "^3.6.0",
35
35
  "fastify": "^4.28.1",
36
36
  "lodash": "4.17.21",
37
- "log4js": "^6.9.1",
37
+ "loglevel": "^1.9.1",
38
+ "loglevel-plugin-prefix": "^0.8.4",
38
39
  "md5": "^2.3.0",
39
40
  "node-fetch": "^3.3.2"
40
41
  },