@be-link/shield-for-tcb-node-sdk 1.0.10 → 1.0.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.
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
* const manager = new ShieldConfigManager({
|
|
19
19
|
* serviceName: 'BackendBff',
|
|
20
20
|
* env: 'local',
|
|
21
|
+
* enableInfoLog: true, // 可选,默认 false
|
|
21
22
|
* })
|
|
22
23
|
*
|
|
23
24
|
* await manager.setup()
|
|
@@ -34,6 +35,8 @@ export interface ShieldConfigManagerOptions {
|
|
|
34
35
|
refreshIntervalMs?: number;
|
|
35
36
|
/** 请求超时(ms),默认 10000 */
|
|
36
37
|
fetchTimeoutMs?: number;
|
|
38
|
+
/** 是否打印 info 级别日志,默认 true */
|
|
39
|
+
enableInfoLog?: boolean;
|
|
37
40
|
/** 自定义日志函数,默认 console */
|
|
38
41
|
logger?: Logger;
|
|
39
42
|
}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* const manager = new ShieldConfigManager({
|
|
20
20
|
* serviceName: 'BackendBff',
|
|
21
21
|
* env: 'local',
|
|
22
|
+
* enableInfoLog: true, // 可选,默认 false
|
|
22
23
|
* })
|
|
23
24
|
*
|
|
24
25
|
* await manager.setup()
|
|
@@ -70,7 +71,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
70
71
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
71
72
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
72
73
|
};
|
|
73
|
-
var _ShieldConfigManager_instances, _ShieldConfigManager_serviceName, _ShieldConfigManager_env, _ShieldConfigManager_refreshIntervalMs, _ShieldConfigManager_fetchTimeoutMs, _ShieldConfigManager_logger, _ShieldConfigManager_config, _ShieldConfigManager_refreshTimer, _ShieldConfigManager_isSetup, _ShieldConfigManager_setupPromise, _ShieldConfigManager_doSetup, _ShieldConfigManager_startRefreshTimer;
|
|
74
|
+
var _ShieldConfigManager_instances, _ShieldConfigManager_serviceName, _ShieldConfigManager_env, _ShieldConfigManager_refreshIntervalMs, _ShieldConfigManager_fetchTimeoutMs, _ShieldConfigManager_enableInfoLog, _ShieldConfigManager_logger, _ShieldConfigManager_config, _ShieldConfigManager_refreshTimer, _ShieldConfigManager_isSetup, _ShieldConfigManager_setupPromise, _ShieldConfigManager_doSetup, _ShieldConfigManager_startRefreshTimer;
|
|
74
75
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
75
76
|
exports.ShieldConfigManager = void 0;
|
|
76
77
|
const serviceV2_1 = require("./serviceV2");
|
|
@@ -100,6 +101,7 @@ class ShieldConfigManager {
|
|
|
100
101
|
_ShieldConfigManager_env.set(this, void 0);
|
|
101
102
|
_ShieldConfigManager_refreshIntervalMs.set(this, void 0);
|
|
102
103
|
_ShieldConfigManager_fetchTimeoutMs.set(this, void 0);
|
|
104
|
+
_ShieldConfigManager_enableInfoLog.set(this, void 0);
|
|
103
105
|
_ShieldConfigManager_logger.set(this, void 0);
|
|
104
106
|
_ShieldConfigManager_config.set(this, null);
|
|
105
107
|
_ShieldConfigManager_refreshTimer.set(this, null);
|
|
@@ -112,7 +114,9 @@ class ShieldConfigManager {
|
|
|
112
114
|
__classPrivateFieldSet(this, _ShieldConfigManager_env, options.env || process.env.NODE_ENV, "f");
|
|
113
115
|
__classPrivateFieldSet(this, _ShieldConfigManager_refreshIntervalMs, options.refreshIntervalMs ?? DEFAULT_REFRESH_INTERVAL_MS, "f");
|
|
114
116
|
__classPrivateFieldSet(this, _ShieldConfigManager_fetchTimeoutMs, options.fetchTimeoutMs ?? DEFAULT_FETCH_TIMEOUT_MS, "f");
|
|
115
|
-
__classPrivateFieldSet(this,
|
|
117
|
+
__classPrivateFieldSet(this, _ShieldConfigManager_enableInfoLog, options.enableInfoLog ?? false, "f");
|
|
118
|
+
const baseLogger = options.logger ?? defaultLogger;
|
|
119
|
+
__classPrivateFieldSet(this, _ShieldConfigManager_logger, __classPrivateFieldGet(this, _ShieldConfigManager_enableInfoLog, "f") ? baseLogger : { ...baseLogger, info: () => { } }, "f");
|
|
116
120
|
}
|
|
117
121
|
/** 当前缓存的配置副本(原始 Record) */
|
|
118
122
|
get config() {
|
|
@@ -151,14 +155,14 @@ class ShieldConfigManager {
|
|
|
151
155
|
const config = await withTimeout(serviceV2_1.backendConfigServiceV2.fetchAllConfigs(__classPrivateFieldGet(this, _ShieldConfigManager_serviceName, "f"), __classPrivateFieldGet(this, _ShieldConfigManager_env, "f")), __classPrivateFieldGet(this, _ShieldConfigManager_fetchTimeoutMs, "f"));
|
|
152
156
|
if (config && Object.keys(config).length > 0) {
|
|
153
157
|
__classPrivateFieldSet(this, _ShieldConfigManager_config, config, "f");
|
|
154
|
-
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").info(
|
|
158
|
+
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").info(`ShieldConfigManager config refreshed (keys: ${JSON.stringify(Object.keys(config))})`);
|
|
155
159
|
}
|
|
156
160
|
else {
|
|
157
161
|
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").warn('ShieldConfigManager fetched empty config');
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
164
|
catch (error) {
|
|
161
|
-
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(
|
|
165
|
+
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(`ShieldConfigManager refresh error: ${error}`);
|
|
162
166
|
}
|
|
163
167
|
// 兼容旧的逻辑
|
|
164
168
|
try {
|
|
@@ -168,9 +172,9 @@ class ShieldConfigManager {
|
|
|
168
172
|
}
|
|
169
173
|
}
|
|
170
174
|
catch (error) {
|
|
171
|
-
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(
|
|
175
|
+
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(`fetch dynamic config error: ${error}`);
|
|
172
176
|
}
|
|
173
|
-
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").info(
|
|
177
|
+
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").info(`ShieldConfigManager config refreshed finally (config: ${__classPrivateFieldGet(this, _ShieldConfigManager_config, "f")})`);
|
|
174
178
|
}
|
|
175
179
|
/**
|
|
176
180
|
* 获取类型化的配置
|
|
@@ -193,12 +197,12 @@ class ShieldConfigManager {
|
|
|
193
197
|
}
|
|
194
198
|
}
|
|
195
199
|
exports.ShieldConfigManager = ShieldConfigManager;
|
|
196
|
-
_ShieldConfigManager_serviceName = new WeakMap(), _ShieldConfigManager_env = new WeakMap(), _ShieldConfigManager_refreshIntervalMs = new WeakMap(), _ShieldConfigManager_fetchTimeoutMs = new WeakMap(), _ShieldConfigManager_logger = new WeakMap(), _ShieldConfigManager_config = new WeakMap(), _ShieldConfigManager_refreshTimer = new WeakMap(), _ShieldConfigManager_isSetup = new WeakMap(), _ShieldConfigManager_setupPromise = new WeakMap(), _ShieldConfigManager_instances = new WeakSet(), _ShieldConfigManager_doSetup = async function _ShieldConfigManager_doSetup() {
|
|
200
|
+
_ShieldConfigManager_serviceName = new WeakMap(), _ShieldConfigManager_env = new WeakMap(), _ShieldConfigManager_refreshIntervalMs = new WeakMap(), _ShieldConfigManager_fetchTimeoutMs = new WeakMap(), _ShieldConfigManager_enableInfoLog = new WeakMap(), _ShieldConfigManager_logger = new WeakMap(), _ShieldConfigManager_config = new WeakMap(), _ShieldConfigManager_refreshTimer = new WeakMap(), _ShieldConfigManager_isSetup = new WeakMap(), _ShieldConfigManager_setupPromise = new WeakMap(), _ShieldConfigManager_instances = new WeakSet(), _ShieldConfigManager_doSetup = async function _ShieldConfigManager_doSetup() {
|
|
197
201
|
try {
|
|
198
202
|
await this.refresh();
|
|
199
203
|
}
|
|
200
204
|
catch (error) {
|
|
201
|
-
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(
|
|
205
|
+
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(`ShieldConfigManager initial refresh failed: ${error}`);
|
|
202
206
|
}
|
|
203
207
|
if (!__classPrivateFieldGet(this, _ShieldConfigManager_config, "f")) {
|
|
204
208
|
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error('ShieldConfigManager config is empty after initial refresh');
|
|
@@ -209,7 +213,7 @@ _ShieldConfigManager_serviceName = new WeakMap(), _ShieldConfigManager_env = new
|
|
|
209
213
|
}, _ShieldConfigManager_startRefreshTimer = function _ShieldConfigManager_startRefreshTimer() {
|
|
210
214
|
__classPrivateFieldSet(this, _ShieldConfigManager_refreshTimer, setInterval(() => {
|
|
211
215
|
this.refresh().catch((error) => {
|
|
212
|
-
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(
|
|
216
|
+
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").error(`ShieldConfigManager timer refresh error: ${error}`);
|
|
213
217
|
});
|
|
214
218
|
}, __classPrivateFieldGet(this, _ShieldConfigManager_refreshIntervalMs, "f")), "f");
|
|
215
219
|
__classPrivateFieldGet(this, _ShieldConfigManager_logger, "f").info(`ShieldConfigManager refresh timer started (interval: ${__classPrivateFieldGet(this, _ShieldConfigManager_refreshIntervalMs, "f")}ms)`);
|