UNPKG

@nexe/config-manager

Version:

Nexe Config Manager - A flexible configuration management solution with multiple sources and hot reload support

53 lines 1.94 kB
import { createLogger } from '@nexe/logger'; import { ConsulConfigSource } from '../sources/consul-config-source'; const logger = createLogger('ConsulDebug'); /** * 调试Consul配置的工具函数 */ async function debugConsulConfig() { const consulConfig = new ConsulConfigSource({ host: '127.0.0.1', port: 8500, secure: false, defaultKeyPrefix: 'app/config', }); try { // 1. 加载所有配置 logger.info('=== 调试:加载所有配置 ==='); const allConfig = await consulConfig.load(); logger.info('所有配置:', JSON.stringify(allConfig, null, 2)); // 2. 尝试加载特定的registrationMethod配置 logger.info('=== 调试:加载registrationMethod配置 ==='); const registrationMethod = await consulConfig.load('registrationMethod'); logger.info('registrationMethod配置:', registrationMethod); // 3. 测试订阅 logger.info('=== 调试:测试配置订阅 ==='); consulConfig.subscribe('registrationMethod', (newValue) => { logger.info('🔄 配置变更回调被触发'); logger.info('新值类型:', typeof newValue); logger.info('新值内容:', JSON.stringify(newValue, null, 2)); }); // 等待一些时间来观察变更 await new Promise(resolve => { setTimeout(() => { logger.info('调试完成,清理资源...'); resolve(); }, 10000); }); } catch (error) { logger.error('调试失败:', error); } finally { consulConfig.dispose(); } } // 如果直接运行此文件,执行调试 if (require.main === module) { debugConsulConfig().catch(error => { logger.error('调试执行失败:', error); process.exit(1); }); } export { debugConsulConfig }; //# sourceMappingURL=consul-debug.js.map