0.4.1 • Published 7 years ago
zhike-zipkin-express v0.4.1
zipkin后端组件集合
to-do list
- express支持
- restify支持
- koa@2支持
- request支持
- rest支持
- koa@1.x支持
- mongodb支持
- sequelize支持
- proxy相关支持
更新日志
v0.4.1
- 修复了之前包装mongodb存在的隐患(实际上算是错误...)
- 加入了对find/aggregate的支持(不完善,没找到更好的方案)
v0.4.0
- 增加了对mongodb的支持
- 新增了一个过滤器,可以根据需要导出需要的包,而不需要每次导出那些不需要的包。
配置
config = {
serviceName: String; // 服务名称
zipkinServiceUrl: String; // zipkin 服务url
disableTracing: Boolean; // 禁用zipkin, default: false
remoteServiceName?: String; // 可选
}
// 示例
const zipkinConfig = {
zipkinServiceUrl: "data.smartstudy.com/api/v1/spans",
serviceName: "yourProjName",
disableTracing: false
};
过滤器可以参考下面的示例。
filter = ["mongodbWrapper", "expressMiddleware"]; // array
filter = "expressMiddleware"; // string
使用示例
注意事项
测试用例需要本地起一个数据库和一个zipkin服务,不然会报错。
// 测试
npm test
安装
npm i zhike-zipkin-backend
express中间件
const { expressMiddleware } = require("zhike-zipkin-backend")(config, ["mongodbWrapper", "expressMiddleware"]);
app.use(koaMiddleware)
restify中间件
const { restifyMiddleware } = require("zhike-zipkin-backend")(config, "restifyMiddleware");
app.use(koaMiddleware)
koa@2中间件
const { koaMiddleware } = require("zhike-zipkin-backend")(config);
app.use(koaMiddleware)
koa@1.x中间件
const { "koaMiddleware@1.x": koaMiddleware } = require("zhike-zipkin-backend")(config);
app.use(koaMiddleware)
包装request
request, request-promise都支持
const request = require("zhike-zipkin-backend")(config).requestWrapper(require("request"));
const rp = require("zhike-zipkin-backend")(config).requestWrapper(require("request-promise"));
包装rest
const rest = require("zhike-zipkin-backend")(config).restWrapper(require("rest"));
包装mongodb
// 这里建议以服务名称-mongo来命名
const mongodb = require("zhike-zipkin-backend")(config).mongodbWrapper(require("mongodb"), "service-mongo");
这里需要注意,这里的包装是全局性的,每次包装都会覆盖之前的修改,例如下面的例子
const mongodb1 = require("zhike-zipkin-backend")(config).mongodbWrapper(require("mongodb"), "firstMongo");
const mongodb2 = require("zhike-zipkin-backend")(config).mongodbWrapper(require("mongodb"), "secondMongo");
// 后面的过程实际上都是用的mongodb2
mongodb2.should.not.deep.equal(mongodb1);
0.4.1
7 years ago
0.4.0
7 years ago
0.3.2
7 years ago
0.3.1
7 years ago
0.3.0
7 years ago
0.2.5
7 years ago
0.2.4
7 years ago
0.2.3
7 years ago
0.2.2
7 years ago
0.2.1
7 years ago
0.1.8
7 years ago
0.1.7
7 years ago
0.1.6
7 years ago
0.1.5
7 years ago
0.1.4
7 years ago
0.1.3
7 years ago
0.1.2
7 years ago
0.0.9
7 years ago
0.1.1
7 years ago
0.0.6
7 years ago
0.0.5
7 years ago
0.0.4
7 years ago
0.0.3
7 years ago
0.0.2
7 years ago
0.0.1
7 years ago