@fastcar/core 0.2.60 → 0.2.61
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/package.json +2 -4
- package/src/model/WinstonLogger.ts +4 -3
- package/src/utils/ClassLoader.ts +1 -1
- package/src/utils/ValidationUtil.ts +10 -1
- package/target/FastCarApplication.js +692 -692
- package/target/annotation/Application.js +45 -45
- package/target/annotation/ExceptionMonitor.js +16 -16
- package/target/annotation/bind/AddRequireModule.js +21 -21
- package/target/annotation/bind/AliasInjection.js +23 -23
- package/target/annotation/bind/Autowired.js +13 -13
- package/target/annotation/bind/CallDependency.js +23 -23
- package/target/annotation/data/DBType.js +11 -11
- package/target/annotation/data/DS.js +54 -54
- package/target/annotation/data/DSIndex.js +9 -9
- package/target/annotation/data/Entity.js +10 -10
- package/target/annotation/data/Field.js +18 -18
- package/target/annotation/data/PrimaryKey.js +9 -9
- package/target/annotation/data/SqlSession.js +9 -9
- package/target/annotation/data/Table.js +35 -35
- package/target/annotation/data/Transactional.js +52 -52
- package/target/annotation/env/ApplicationSetting.js +25 -25
- package/target/annotation/env/BaseFilePath.js +14 -14
- package/target/annotation/env/BaseName.js +9 -9
- package/target/annotation/env/BasePath.js +14 -14
- package/target/annotation/env/ENV.js +10 -10
- package/target/annotation/env/ResourcePath.js +9 -9
- package/target/annotation/lifeCycle/AddLifeCycleItem.js +18 -18
- package/target/annotation/lifeCycle/ApplicationDestory.js +15 -15
- package/target/annotation/lifeCycle/ApplicationInit.js +15 -15
- package/target/annotation/lifeCycle/ApplicationRunner.js +7 -7
- package/target/annotation/lifeCycle/ApplicationStart.js +24 -24
- package/target/annotation/lifeCycle/ApplicationStop.js +20 -20
- package/target/annotation/property/Deprecate.js +19 -19
- package/target/annotation/property/NotImplemented.js +8 -8
- package/target/annotation/property/Override.js +7 -7
- package/target/annotation/property/Readonly.js +16 -16
- package/target/annotation/scan/ComponentInjection.js +21 -21
- package/target/annotation/scan/ComponentScan.js +9 -9
- package/target/annotation/scan/ComponentScanExclusion.js +25 -25
- package/target/annotation/scan/ComponentScanMust.js +25 -25
- package/target/annotation/scan/Hotter.js +8 -8
- package/target/annotation/stereotype/BeanName.js +11 -11
- package/target/annotation/stereotype/Component.js +8 -8
- package/target/annotation/stereotype/Configure.js +14 -14
- package/target/annotation/stereotype/Controller.js +9 -9
- package/target/annotation/stereotype/Injection.js +12 -12
- package/target/annotation/stereotype/Log.js +17 -17
- package/target/annotation/stereotype/Repository.js +9 -9
- package/target/annotation/stereotype/Service.js +9 -9
- package/target/annotation/valid/AddChildValid.js +56 -56
- package/target/annotation/valid/CustomType.js +11 -11
- package/target/annotation/valid/DefaultVal.js +10 -10
- package/target/annotation/valid/NotNull.js +8 -8
- package/target/annotation/valid/Rule.js +100 -100
- package/target/annotation/valid/Size.js +10 -10
- package/target/annotation/valid/Type.js +10 -10
- package/target/annotation/valid/ValidCustom.js +17 -17
- package/target/annotation/valid/ValidForm.js +133 -133
- package/target/annotation.js +108 -108
- package/target/config/ApplicationConfig.js +2 -2
- package/target/config/SysConfig.js +19 -19
- package/target/constant/AppStatusEnum.js +9 -9
- package/target/constant/BootPriority.js +11 -11
- package/target/constant/CommonConstant.js +18 -18
- package/target/constant/ComponentKind.js +11 -11
- package/target/constant/DataTypes.js +19 -19
- package/target/constant/FastCarMetaData.js +31 -31
- package/target/constant/LifeCycleModule.js +9 -9
- package/target/db.js +49 -48
- package/target/index.js +21 -21
- package/target/interface/ApplicationHook.js +2 -2
- package/target/interface/ApplicationInterface.js +2 -2
- package/target/interface/ApplicationRunnerService.js +2 -2
- package/target/interface/DataSourceManager.js +2 -2
- package/target/interface/Logger.js +5 -5
- package/target/model/BaseMapper.js +98 -98
- package/target/model/DataMap.js +87 -87
- package/target/model/FormRuleModel.js +2 -2
- package/target/model/ValidError.js +5 -5
- package/target/model/WinstonLogger.js +96 -95
- package/target/src/FastCarApplication.js +704 -0
- package/target/src/annotation/Application.js +45 -0
- package/target/src/annotation/ExceptionMonitor.js +16 -0
- package/target/src/annotation/bind/AddRequireModule.js +21 -0
- package/target/src/annotation/bind/AliasInjection.js +23 -0
- package/target/src/annotation/bind/Autowired.js +13 -0
- package/target/src/annotation/bind/CallDependency.js +23 -0
- package/target/src/annotation/data/DBType.js +11 -0
- package/target/src/annotation/data/DS.js +54 -0
- package/target/src/annotation/data/DSIndex.js +9 -0
- package/target/src/annotation/data/Entity.js +10 -0
- package/target/src/annotation/data/Field.js +18 -0
- package/target/src/annotation/data/PrimaryKey.js +9 -0
- package/target/src/annotation/data/SqlSession.js +9 -0
- package/target/src/annotation/data/Table.js +35 -0
- package/target/src/annotation/data/Transactional.js +52 -0
- package/target/src/annotation/env/ApplicationSetting.js +25 -0
- package/target/src/annotation/env/BaseFilePath.js +14 -0
- package/target/src/annotation/env/BaseName.js +9 -0
- package/target/src/annotation/env/BasePath.js +14 -0
- package/target/src/annotation/env/ENV.js +10 -0
- package/target/src/annotation/env/ResourcePath.js +9 -0
- package/target/src/annotation/lifeCycle/AddLifeCycleItem.js +18 -0
- package/target/src/annotation/lifeCycle/ApplicationDestory.js +15 -0
- package/target/src/annotation/lifeCycle/ApplicationInit.js +15 -0
- package/target/src/annotation/lifeCycle/ApplicationRunner.js +7 -0
- package/target/src/annotation/lifeCycle/ApplicationStart.js +24 -0
- package/target/src/annotation/lifeCycle/ApplicationStop.js +20 -0
- package/target/src/annotation/property/Deprecate.js +19 -0
- package/target/src/annotation/property/NotImplemented.js +8 -0
- package/target/src/annotation/property/Override.js +7 -0
- package/target/src/annotation/property/Readonly.js +16 -0
- package/target/src/annotation/scan/ComponentInjection.js +21 -0
- package/target/src/annotation/scan/ComponentScan.js +9 -0
- package/target/src/annotation/scan/ComponentScanExclusion.js +25 -0
- package/target/src/annotation/scan/ComponentScanMust.js +25 -0
- package/target/src/annotation/scan/Hotter.js +8 -0
- package/target/src/annotation/stereotype/BeanName.js +11 -0
- package/target/src/annotation/stereotype/Component.js +8 -0
- package/target/src/annotation/stereotype/Configure.js +14 -0
- package/target/src/annotation/stereotype/Controller.js +9 -0
- package/target/src/annotation/stereotype/Injection.js +12 -0
- package/target/src/annotation/stereotype/Log.js +22 -0
- package/target/src/annotation/stereotype/Repository.js +9 -0
- package/target/src/annotation/stereotype/Service.js +9 -0
- package/target/src/annotation/valid/AddChildValid.js +56 -0
- package/target/src/annotation/valid/CustomType.js +11 -0
- package/target/src/annotation/valid/DefaultVal.js +10 -0
- package/target/src/annotation/valid/NotNull.js +8 -0
- package/target/src/annotation/valid/Rule.js +100 -0
- package/target/src/annotation/valid/Size.js +10 -0
- package/target/src/annotation/valid/Type.js +10 -0
- package/target/src/annotation/valid/ValidCustom.js +17 -0
- package/target/src/annotation/valid/ValidForm.js +133 -0
- package/target/src/annotation.js +108 -0
- package/target/src/config/ApplicationConfig.js +2 -0
- package/target/src/config/SysConfig.js +19 -0
- package/target/src/constant/AppStatusEnum.js +9 -0
- package/target/src/constant/BootPriority.js +11 -0
- package/target/src/constant/CommonConstant.js +18 -0
- package/target/src/constant/ComponentKind.js +11 -0
- package/target/src/constant/DataTypes.js +19 -0
- package/target/src/constant/FastCarMetaData.js +31 -0
- package/target/src/constant/LifeCycleModule.js +9 -0
- package/target/src/db.js +49 -0
- package/target/src/index.js +21 -0
- package/target/src/interface/ApplicationHook.js +2 -0
- package/target/src/interface/ApplicationInterface.js +2 -0
- package/target/src/interface/ApplicationRunnerService.js +2 -0
- package/target/src/interface/DataSourceManager.js +2 -0
- package/target/src/interface/Logger.js +5 -0
- package/target/src/model/BaseMapper.js +103 -0
- package/target/src/model/DataMap.js +87 -0
- package/target/src/model/FormRuleModel.js +2 -0
- package/target/src/model/ValidError.js +5 -0
- package/target/src/model/WinstonLogger.js +97 -0
- package/target/src/type/ComponentDesc.js +2 -0
- package/target/src/type/DesignMeta.js +15 -0
- package/target/src/type/FileHotterDesc.js +2 -0
- package/target/src/type/MapperType.js +2 -0
- package/target/src/type/ProcessType.js +2 -0
- package/target/src/type/SqlError.js +5 -0
- package/target/src/type/WinstonLoggerType.js +9 -0
- package/target/src/utils/ClassLoader.js +65 -0
- package/target/src/utils/ClassUtils.js +35 -0
- package/target/src/utils/CryptoUtil.js +86 -0
- package/target/src/utils/DataFormat.js +88 -0
- package/target/src/utils/DateUtil.js +71 -0
- package/target/src/utils/FileUtil.js +153 -0
- package/target/src/utils/FormatStr.js +14 -0
- package/target/src/utils/IPUtils.js +34 -0
- package/target/src/utils/Id.js +9 -0
- package/target/src/utils/Mix.js +62 -0
- package/target/src/utils/ReflectUtil.js +22 -0
- package/target/src/utils/TypeUtil.js +53 -0
- package/target/src/utils/ValidationUtil.js +118 -0
- package/target/src/utils.js +25 -0
- package/target/test/example/simple/app-test.js +57 -0
- package/target/test/example/simple/app.js +116 -0
- package/target/test/example/simple/component/StartRunner.js +19 -0
- package/target/test/example/simple/component/StopRunner.js +23 -0
- package/target/test/example/simple/config/EnvConfig.js +16 -0
- package/target/test/example/simple/config/HelloConfig.js +16 -0
- package/target/test/example/simple/config/HotConfig.js +18 -0
- package/target/test/example/simple/controller/AliasController.js +17 -0
- package/target/test/example/simple/controller/HelloController.js +55 -0
- package/target/test/example/simple/controller/NotFoundController.js +36 -0
- package/target/test/example/simple/noclude/excludeApp.js +17 -0
- package/target/test/example/simple/service/CallService.js +24 -0
- package/target/test/example/simple/service/HelloService.js +18 -0
- package/target/test/example/simple/service/LogService.js +32 -0
- package/target/test/multi/app.js +29 -0
- package/target/test/multi/service/aService.js +33 -0
- package/target/test/multi/service/bService.js +35 -0
- package/target/test/multi/service/cService.js +40 -0
- package/target/test/unit/dataMap-test.js +35 -0
- package/target/test/unit/decorators-test.js +59 -0
- package/target/test/unit/ds-test.js +58 -0
- package/target/test/unit/reflectMetadata-test.js +27 -0
- package/target/test/unit/valid-test.js +99 -0
- package/target/test/unit/winston-test.js +15 -0
- package/target/type/ComponentDesc.js +2 -2
- package/target/type/DesignMeta.js +15 -15
- package/target/type/FileHotterDesc.js +2 -2
- package/target/type/MapperType.js +2 -2
- package/target/type/ProcessType.js +2 -2
- package/target/type/SqlError.js +5 -5
- package/target/type/WinstonLoggerType.js +9 -9
- package/target/utils/ClassLoader.js +65 -65
- package/target/utils/ClassUtils.js +35 -35
- package/target/utils/CryptoUtil.js +86 -86
- package/target/utils/DataFormat.js +88 -88
- package/target/utils/DateUtil.js +71 -71
- package/target/utils/FileUtil.js +153 -153
- package/target/utils/FormatStr.js +14 -14
- package/target/utils/IPUtils.js +34 -34
- package/target/utils/Id.js +9 -9
- package/target/utils/Mix.js +62 -62
- package/target/utils/ReflectUtil.js +22 -22
- package/target/utils/TypeUtil.js +53 -53
- package/target/utils/ValidationUtil.js +124 -118
- package/target/utils.js +25 -25
- package/test/unit/decorators-test.ts +3 -3
- package/test/unit/logs/sys.log +0 -24
|
@@ -1,95 +1,96 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const winston = require("winston");
|
|
4
|
-
const WinstonLoggerType_1 = require("../type/WinstonLoggerType");
|
|
5
|
-
const path = require("path");
|
|
6
|
-
const utils_1 = require("../utils");
|
|
7
|
-
const util = require("util");
|
|
8
|
-
const SPLAT = Symbol.for("splat");
|
|
9
|
-
class WinstonLogger {
|
|
10
|
-
constructor(config) {
|
|
11
|
-
this.config = config;
|
|
12
|
-
this.categoryMap = new Map();
|
|
13
|
-
}
|
|
14
|
-
//控制台着色
|
|
15
|
-
colorize(str, level) {
|
|
16
|
-
let colorStyle = Reflect.get(WinstonLoggerType_1.ColorLevelType, level);
|
|
17
|
-
if (!colorStyle) {
|
|
18
|
-
return str;
|
|
19
|
-
}
|
|
20
|
-
return `\x1B[${colorStyle[0]}m ${str} \x1B[${colorStyle[1]}m`;
|
|
21
|
-
}
|
|
22
|
-
//数据着色为白色
|
|
23
|
-
colorizeData(data) {
|
|
24
|
-
let msg = utils_1.ValidationUtil.isObject(data) ? JSON.stringify(data) : data;
|
|
25
|
-
return `\x1B[37m ${msg} \x1B[39m`;
|
|
26
|
-
}
|
|
27
|
-
setConfig(config) {
|
|
28
|
-
this.config = config;
|
|
29
|
-
}
|
|
30
|
-
hasLogger(category) {
|
|
31
|
-
return winston.loggers.has(category);
|
|
32
|
-
}
|
|
33
|
-
getLogger(category) {
|
|
34
|
-
return this.categoryMap.get(category);
|
|
35
|
-
}
|
|
36
|
-
addLogger(category) {
|
|
37
|
-
if (this.categoryMap.has(category)) {
|
|
38
|
-
winston.loggers.close(category);
|
|
39
|
-
}
|
|
40
|
-
let newLogger = winston.loggers.add(category, {
|
|
41
|
-
format: winston.format.combine(winston.format.label({ label: category }), winston.format.printf(info => {
|
|
42
|
-
//debug模式等级时仅为控制台输出
|
|
43
|
-
let level = info.level.toUpperCase();
|
|
44
|
-
let timestamp = utils_1.DateUtil.toDateTimeMS();
|
|
45
|
-
let content = {
|
|
46
|
-
timestamp,
|
|
47
|
-
level,
|
|
48
|
-
label: info.label,
|
|
49
|
-
message: info.message,
|
|
50
|
-
};
|
|
51
|
-
if (Reflect.has(info, SPLAT)) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
text
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
splatMsg.
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
}
|
|
95
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const winston = require("winston");
|
|
4
|
+
const WinstonLoggerType_1 = require("../type/WinstonLoggerType");
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
const util = require("util");
|
|
8
|
+
const SPLAT = Symbol.for("splat");
|
|
9
|
+
class WinstonLogger {
|
|
10
|
+
constructor(config) {
|
|
11
|
+
this.config = config;
|
|
12
|
+
this.categoryMap = new Map();
|
|
13
|
+
}
|
|
14
|
+
//控制台着色
|
|
15
|
+
colorize(str, level) {
|
|
16
|
+
let colorStyle = Reflect.get(WinstonLoggerType_1.ColorLevelType, level);
|
|
17
|
+
if (!colorStyle) {
|
|
18
|
+
return str;
|
|
19
|
+
}
|
|
20
|
+
return `\x1B[${colorStyle[0]}m ${str} \x1B[${colorStyle[1]}m`;
|
|
21
|
+
}
|
|
22
|
+
//数据着色为白色
|
|
23
|
+
colorizeData(data) {
|
|
24
|
+
let msg = utils_1.ValidationUtil.isObject(data) ? JSON.stringify(data) : data;
|
|
25
|
+
return `\x1B[37m ${msg} \x1B[39m`;
|
|
26
|
+
}
|
|
27
|
+
setConfig(config) {
|
|
28
|
+
this.config = config;
|
|
29
|
+
}
|
|
30
|
+
hasLogger(category) {
|
|
31
|
+
return winston.loggers.has(category);
|
|
32
|
+
}
|
|
33
|
+
getLogger(category) {
|
|
34
|
+
return this.categoryMap.get(category);
|
|
35
|
+
}
|
|
36
|
+
addLogger(category) {
|
|
37
|
+
if (this.categoryMap.has(category)) {
|
|
38
|
+
winston.loggers.close(category);
|
|
39
|
+
}
|
|
40
|
+
let newLogger = winston.loggers.add(category, {
|
|
41
|
+
format: winston.format.combine(winston.format.label({ label: category }), winston.format.printf((info) => {
|
|
42
|
+
//debug模式等级时仅为控制台输出
|
|
43
|
+
let level = info.level.toUpperCase();
|
|
44
|
+
let timestamp = utils_1.DateUtil.toDateTimeMS();
|
|
45
|
+
let content = {
|
|
46
|
+
timestamp,
|
|
47
|
+
level,
|
|
48
|
+
label: info.label,
|
|
49
|
+
message: info.message,
|
|
50
|
+
};
|
|
51
|
+
if (Reflect.has(info, SPLAT)) {
|
|
52
|
+
let splat = Reflect.get(info, SPLAT);
|
|
53
|
+
Reflect.set(content, "splat", typeof splat == "string" ? splat : JSON.stringify(splat));
|
|
54
|
+
}
|
|
55
|
+
if (info.stack) {
|
|
56
|
+
Reflect.set(content, "stack", info.stack);
|
|
57
|
+
}
|
|
58
|
+
Reflect.set(info, "timestamp", content.timestamp);
|
|
59
|
+
//新增打印控制台
|
|
60
|
+
if (this.config.printConsole) {
|
|
61
|
+
let text = this.colorize(util.format("[%s] [%s] %s - ", timestamp, level, info.label), info.level);
|
|
62
|
+
text += this.colorizeData(content.message);
|
|
63
|
+
if (Reflect.has(info, SPLAT)) {
|
|
64
|
+
let splatMsg = Reflect.get(info, SPLAT);
|
|
65
|
+
splatMsg.forEach((item) => {
|
|
66
|
+
text += " " + this.colorizeData(item);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
if (info.stack) {
|
|
70
|
+
text += this.colorizeData(`\nstatck: ${info.stack}`);
|
|
71
|
+
}
|
|
72
|
+
let fn = console.info;
|
|
73
|
+
if (Reflect.has(console, info.level)) {
|
|
74
|
+
fn = Reflect.get(console, info.level);
|
|
75
|
+
}
|
|
76
|
+
Reflect.apply(fn, console, [text]);
|
|
77
|
+
}
|
|
78
|
+
return util.format("%j", content);
|
|
79
|
+
})),
|
|
80
|
+
transports: [
|
|
81
|
+
new winston.transports.File({
|
|
82
|
+
level: this.config.fileLevel,
|
|
83
|
+
filename: path.join(this.config.rootPath, `${category}.log`),
|
|
84
|
+
maxsize: this.config.maxsize,
|
|
85
|
+
maxFiles: this.config.maxFiles,
|
|
86
|
+
}),
|
|
87
|
+
],
|
|
88
|
+
});
|
|
89
|
+
this.categoryMap.set(category, newLogger);
|
|
90
|
+
return newLogger;
|
|
91
|
+
}
|
|
92
|
+
getLoggerList() {
|
|
93
|
+
return [...this.categoryMap.values()];
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.default = WinstonLogger;
|