@tdit/node-shutter
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

安装

首选需要指定 npm仓库为内部仓库 registry.npm.tongdun.cn 然后执行npm install @td/node-shutter 或 yarn add @td/node-shutter

配置说明

  • hostList shutter服务地址,多个用逗号隔开,可选值见shutter首页
  • application 配置所属应用
  • group 配置所属分组
  • environment 配置所属环境,默认dev,可选值见shutter首页
  • SecretKey 密钥,申请入口见https://my.tongdun.cn/#/accesskey
  • AccessKey 密钥,申请入口见https://my.tongdun.cn/#/accesskey
  • watchIntervalTime 定时更新配置间隔时间,单位ms, 默认30000ms,开启监听远端配置文件时生效

API说明

  • addProperties(app: string, locations: string[]) 添加需要读取的shutter配置,locations指文件名
  • addWatch(app: string, handle: () => void) 监听文件变化
  • getProperty(key: string) 根据key值获取shutter配置项值
  • fetchRemoteData() 读取远端配置,通常在addProperties添加完所有需要读取的配置后,一次获取远端配置即可

使用示例

const Shutter = require('@td/node-shutter').default;
const shutter = new Shutter({
    hostList: '10.57.17.39:8188',
    application: 'test',
    group: 'DEFAULT_GROUP',
    environment: 'dev',
    SecretKey: 'SecretKey',
    AccessKey: 'AccessKey'
});
// 添加需要读取的配置
shutter.addProperties('jdbc', ['jdbc.octopus-box.properties', 'jdbc.octopus-gaea.properties']);
shutter.addProperties('redis', ['redis.octopus-screen.properties']);
// 读取远端配置,应用启动后只需要调用一次即可
shutter.fetchRemoteData();
// 监听远端配置变化
shutter.addWatch('jdbc'); // 目前仅支持监听整个应用的所有文件
// 取出某个配置的值
shutter.getProperty('octopus-screen.redis.namespace') // 值为shutter上配置的octopus-screen

说明 配置文件会在本地缓存一份,当shutter服务端不可用时,会使用本地缓存

Readme

Keywords

none

Package Sidebar

Install

npm i @tdit/node-shutter

Weekly Downloads

1

Version

1.0.0

License

MIT

Unpacked Size

174 kB

Total Files

16

Last publish

Collaborators

  • lingjie