@shrub/express-tracing 0.5.31 → 0.5.35
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/dist/esm/index.js +2 -2
- package/dist/esm/middleware.js +5 -6
- package/dist/esm/module.js +14 -4
- package/dist/esm/service.js +3 -2
- package/dist/index.js +3 -2
- package/dist/middleware.d.ts +3 -5
- package/dist/middleware.js +6 -8
- package/dist/module.d.ts +13 -2
- package/dist/module.js +14 -4
- package/dist/service.d.ts +1 -0
- package/dist/service.js +3 -2
- package/package.json +7 -7
package/dist/esm/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export * from "./middleware";
|
|
2
2
|
export * from "./module";
|
|
3
|
-
export { TraceHeaders } from "./service";
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
export { IRequestTracingOptions, TraceHeaders } from "./service";
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQyJ9
|
package/dist/esm/middleware.js
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import { IExpressTracingService } from "./service";
|
|
1
|
+
import { IExpressTracingService, IRequestTracingOptions } from "./service";
|
|
2
|
+
export { IRequestTracingOptions };
|
|
2
3
|
attachErrorListener();
|
|
3
|
-
/** @internal */
|
|
4
|
-
export const addSpanRequestBuilder = (context, span) => ({ ...context, span });
|
|
5
4
|
/** Request tracing middleware that will start a new span for a request. */
|
|
6
|
-
export const
|
|
5
|
+
export const requestTracing = (options) => {
|
|
7
6
|
return (req, res, next) => {
|
|
8
7
|
const service = req.context.services.tryGet(IExpressTracingService);
|
|
9
8
|
if (!service) {
|
|
10
9
|
return next(new Error("express-tracing-service not registered, make sure the ExpressTracingModule is loaded when using request tracing."));
|
|
11
10
|
}
|
|
12
11
|
const span = service.startSpan(req, options);
|
|
13
|
-
req.
|
|
12
|
+
req.context.span = span;
|
|
14
13
|
// if a request connection is 'keep-alive' the response will never finish;
|
|
15
14
|
// so instead, listen for the close event for when the connection has been closed
|
|
16
15
|
// https://nodejs.org/api/http.html#http_event_close_1
|
|
@@ -54,4 +53,4 @@ function attachErrorListener() {
|
|
|
54
53
|
return ref.call(this, error, req, res, next);
|
|
55
54
|
};
|
|
56
55
|
}
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztBQVFsQyxtQkFBbUIsRUFBRSxDQUFDO0FBRXRCLDJFQUEyRTtBQUMzRSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxPQUFnQyxFQUFrQixFQUFFO0lBQy9FLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxrSEFBa0gsQ0FBQyxDQUFDLENBQUM7U0FDOUk7UUFFRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM3QyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFFeEIsMEVBQTBFO1FBQzFFLGlGQUFpRjtRQUVqRixzREFBc0Q7UUFDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFekQscURBQXFEO1FBQ3JELEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtZQUNwQixJQUFJLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEdBQUcsR0FBRyxFQUFFO2dCQUMvQyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMzQyxJQUFJLFFBQVEsRUFBRTtvQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBVSxRQUFRLENBQUMsQ0FBQztpQkFDL0M7YUFDSjtZQUVELE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFDMUIsR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLFNBQVM7WUFDOUIsMkNBQTJDO1lBQzNDLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxZQUFZLEVBQUU7Z0JBQzlDLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDcEM7WUFFRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQWdCLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7UUFFRixJQUFJLEVBQUUsQ0FBQztJQUNYLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILFNBQVMsbUJBQW1CO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDO0lBQ3pDLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLFNBQVMsWUFBWSxDQUFDLEtBQVksRUFBRSxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCO1FBQzlHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDLENBQUE7QUFDTCxDQUFDIn0=
|
package/dist/esm/module.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { createConfig, IOptionsService } from "@shrub/core";
|
|
1
2
|
import { ExpressModule, IExpressConfiguration } from "@shrub/express";
|
|
2
3
|
import { TracingModule } from "@shrub/tracing";
|
|
3
|
-
import {
|
|
4
|
+
import { IRequestTracingOptions, requestTracing } from "./middleware";
|
|
4
5
|
import { ExpressTracingService, IExpressTracingService } from "./service";
|
|
6
|
+
export const IExpressSessionConfiguration = createConfig();
|
|
5
7
|
export class ExpressTracingModule {
|
|
6
8
|
constructor() {
|
|
7
9
|
this.name = "express-tracing";
|
|
@@ -10,11 +12,19 @@ export class ExpressTracingModule {
|
|
|
10
12
|
TracingModule
|
|
11
13
|
];
|
|
12
14
|
}
|
|
15
|
+
initialize({ config, settings }) {
|
|
16
|
+
settings.bindToOptions(IRequestTracingOptions);
|
|
17
|
+
config(IExpressSessionConfiguration).register(() => ({
|
|
18
|
+
useRequestTracing: options => this.options = options
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
13
21
|
configureServices(registration) {
|
|
14
22
|
registration.register(IExpressTracingService, ExpressTracingService);
|
|
15
23
|
}
|
|
16
|
-
configure({ config }) {
|
|
17
|
-
config.get(IExpressConfiguration).
|
|
24
|
+
configure({ config, next, services }) {
|
|
25
|
+
config.get(IExpressConfiguration).use((req, res, next) => requestTracing(this.options)(req, res, next));
|
|
26
|
+
// invoke next to allow modules downstream the ability to configure the request racing middleware
|
|
27
|
+
next().then(() => this.options = this.options || services.get(IOptionsService).getOptions(IRequestTracingOptions));
|
|
18
28
|
}
|
|
19
29
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFvRCxlQUFlLEVBQXdCLE1BQU0sYUFBYSxDQUFDO0FBQ3BJLE9BQU8sRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFMUUsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsWUFBWSxFQUFnQyxDQUFDO0FBU3pGLE1BQU0sT0FBTyxvQkFBb0I7SUFBakM7UUFHYSxTQUFJLEdBQUcsaUJBQWlCLENBQUM7UUFDekIsaUJBQVksR0FBRztZQUNwQixhQUFhO1lBQ2IsYUFBYTtTQUNoQixDQUFDO0lBa0JOLENBQUM7SUFoQkcsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBc0I7UUFDL0MsUUFBUSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPO1NBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELGlCQUFpQixDQUFDLFlBQWtDO1FBQ2hELFlBQVksQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQXVCO1FBQ3JELE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDeEcsaUdBQWlHO1FBQ2pHLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7Q0FDSiJ9
|
package/dist/esm/service.js
CHANGED
|
@@ -7,13 +7,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
8
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
9
|
};
|
|
10
|
-
import { createService, Scoped } from "@shrub/core";
|
|
10
|
+
import { createOptions, createService, Scoped } from "@shrub/core";
|
|
11
11
|
import { ITracingService } from "@shrub/tracing";
|
|
12
12
|
export var TraceHeaders;
|
|
13
13
|
(function (TraceHeaders) {
|
|
14
14
|
TraceHeaders["traceId"] = "X-Trace-ID";
|
|
15
15
|
TraceHeaders["spanId"] = "X-Span-ID";
|
|
16
16
|
})(TraceHeaders || (TraceHeaders = {}));
|
|
17
|
+
export const IRequestTracingOptions = createOptions("request-tracing");
|
|
17
18
|
export const IExpressTracingService = createService("express-tracing-service");
|
|
18
19
|
function isRequestContextScope(scope) {
|
|
19
20
|
return scope.bag !== undefined && scope.services !== undefined;
|
|
@@ -82,4 +83,4 @@ ExpressTracingService = __decorate([
|
|
|
82
83
|
__param(0, ITracingService)
|
|
83
84
|
], ExpressTracingService);
|
|
84
85
|
export { ExpressTracingService };
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVuRSxPQUFPLEVBQWdDLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBa0IvRSxNQUFNLENBQU4sSUFBWSxZQUdYO0FBSEQsV0FBWSxZQUFZO0lBQ3BCLHNDQUFzQixDQUFBO0lBQ3RCLG9DQUFvQixDQUFBO0FBQ3hCLENBQUMsRUFIVyxZQUFZLEtBQVosWUFBWSxRQUd2QjtBQUVELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGFBQWEsQ0FBeUIsaUJBQWlCLENBQUMsQ0FBQztBQUMvRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxhQUFhLENBQXlCLHlCQUF5QixDQUFDLENBQUM7QUFFdkcsU0FBUyxxQkFBcUIsQ0FBQyxLQUFVO0lBQ3JDLE9BQXlCLEtBQU0sQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFzQixLQUFNLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQztBQUN6RyxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsS0FBVTtJQUM5QixPQUFpQixLQUFNLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBYyxLQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQztBQUN2RixDQUFDO0FBR0QsSUFBYSxxQkFBcUIsR0FBbEMsTUFBYSxxQkFBcUI7SUFJOUIsWUFBOEMsY0FBK0I7UUFBL0IsbUJBQWMsR0FBZCxjQUFjLENBQWlCO0lBQzdFLENBQUM7SUFFRCxTQUFTLENBQUMsR0FBWSxFQUFFLE9BQWdDO1FBQ3BELE1BQU0sT0FBTyxHQUFHLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUTtZQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUVoQyxNQUFNLElBQUksR0FBVTtZQUNoQixVQUFVLEVBQUUsR0FBRyxDQUFDLFdBQVc7WUFDM0IsYUFBYSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1NBQzVCLENBQUM7UUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDN0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFXLEVBQUUsR0FBWSxFQUFFLEdBQWE7UUFDNUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLGtCQUFrQjtRQUN0QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoRixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDaEMsQ0FBQztJQUVPLGtCQUFrQjtRQUN0QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztZQUMvRixjQUFjLEVBQUUsS0FBSyxDQUFDLEVBQUU7Z0JBQ3BCLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFO29CQUN2QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDaEQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBRS9DLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRTt3QkFDcEIsT0FBTzs0QkFDSCxlQUFlLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTzs0QkFDOUIsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU87eUJBQzVCLENBQUE7cUJBQ0o7aUJBQ0o7cUJBQ0ksSUFBSSxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFO29CQUNqRCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDOUIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7b0JBQ25DLE9BQU87d0JBQ0gsZUFBZSxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU87d0JBQzlCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPO3FCQUM1QixDQUFBO2lCQUNKO2dCQUVELE9BQU8sU0FBUyxDQUFDO1lBQ3JCLENBQUM7U0FDSixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDaEMsQ0FBQztJQUVPLGlCQUFpQixDQUFDLElBQW9CLEVBQUUsR0FBWSxFQUFFLE9BQWUsRUFBRSxVQUFrQjtRQUM3RixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xDLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztDQUNKLENBQUE7QUFuRVkscUJBQXFCO0lBRGpDLE1BQU07SUFLVSxXQUFBLGVBQWUsQ0FBQTtHQUpuQixxQkFBcUIsQ0FtRWpDO1NBbkVZLHFCQUFxQiJ9
|
package/dist/index.js
CHANGED
|
@@ -10,9 +10,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.TraceHeaders = void 0;
|
|
13
|
+
exports.TraceHeaders = exports.IRequestTracingOptions = void 0;
|
|
14
14
|
__exportStar(require("./middleware"), exports);
|
|
15
15
|
__exportStar(require("./module"), exports);
|
|
16
16
|
var service_1 = require("./service");
|
|
17
|
+
Object.defineProperty(exports, "IRequestTracingOptions", { enumerable: true, get: function () { return service_1.IRequestTracingOptions; } });
|
|
17
18
|
Object.defineProperty(exports, "TraceHeaders", { enumerable: true, get: function () { return service_1.TraceHeaders; } });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIscUNBQWlFO0FBQXhELGlIQUFBLHNCQUFzQixPQUFBO0FBQUUsdUdBQUEsWUFBWSxPQUFBIn0=
|
package/dist/middleware.d.ts
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { ISpan } from "@shrub/tracing";
|
|
2
2
|
import { RequestHandler } from "express";
|
|
3
3
|
import { IRequestTracingOptions } from "./service";
|
|
4
|
+
export { IRequestTracingOptions };
|
|
4
5
|
declare module "@shrub/express/dist/request-context" {
|
|
5
6
|
interface IRequestContext {
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
interface IRequestContextBuilder {
|
|
9
|
-
addSpan(span: ISpan): IRequestContextBuilder;
|
|
7
|
+
span?: ISpan;
|
|
10
8
|
}
|
|
11
9
|
}
|
|
12
10
|
/** Request tracing middleware that will start a new span for a request. */
|
|
13
|
-
export declare const
|
|
11
|
+
export declare const requestTracing: (options?: IRequestTracingOptions | undefined) => RequestHandler;
|
package/dist/middleware.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.requestTracing = exports.IRequestTracingOptions = void 0;
|
|
4
4
|
const service_1 = require("./service");
|
|
5
|
+
Object.defineProperty(exports, "IRequestTracingOptions", { enumerable: true, get: function () { return service_1.IRequestTracingOptions; } });
|
|
5
6
|
attachErrorListener();
|
|
6
|
-
/** @internal */
|
|
7
|
-
const addSpanRequestBuilder = (context, span) => ({ ...context, span });
|
|
8
|
-
exports.addSpanRequestBuilder = addSpanRequestBuilder;
|
|
9
7
|
/** Request tracing middleware that will start a new span for a request. */
|
|
10
|
-
const
|
|
8
|
+
const requestTracing = (options) => {
|
|
11
9
|
return (req, res, next) => {
|
|
12
10
|
const service = req.context.services.tryGet(service_1.IExpressTracingService);
|
|
13
11
|
if (!service) {
|
|
14
12
|
return next(new Error("express-tracing-service not registered, make sure the ExpressTracingModule is loaded when using request tracing."));
|
|
15
13
|
}
|
|
16
14
|
const span = service.startSpan(req, options);
|
|
17
|
-
req.
|
|
15
|
+
req.context.span = span;
|
|
18
16
|
// if a request connection is 'keep-alive' the response will never finish;
|
|
19
17
|
// so instead, listen for the close event for when the connection has been closed
|
|
20
18
|
// https://nodejs.org/api/http.html#http_event_close_1
|
|
@@ -40,7 +38,7 @@ const useRequestTracing = (options) => {
|
|
|
40
38
|
next();
|
|
41
39
|
};
|
|
42
40
|
};
|
|
43
|
-
exports.
|
|
41
|
+
exports.requestTracing = requestTracing;
|
|
44
42
|
/**
|
|
45
43
|
* Overrides the express internal handle_error function that gets invoked when an error has occurred.
|
|
46
44
|
* There are no global error events exposed by express and the only way to handle errors is via express middleware.
|
|
@@ -59,4 +57,4 @@ function attachErrorListener() {
|
|
|
59
57
|
return ref.call(this, error, req, res, next);
|
|
60
58
|
};
|
|
61
59
|
}
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLHVDQUEyRTtBQUVsRSx1R0FGd0IsZ0NBQXNCLE9BRXhCO0FBUS9CLG1CQUFtQixFQUFFLENBQUM7QUFFdEIsMkVBQTJFO0FBQ3BFLE1BQU0sY0FBYyxHQUFHLENBQUMsT0FBZ0MsRUFBa0IsRUFBRTtJQUMvRSxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUN0QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsZ0NBQXNCLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsa0hBQWtILENBQUMsQ0FBQyxDQUFDO1NBQzlJO1FBRUQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDN0MsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRXhCLDBFQUEwRTtRQUMxRSxpRkFBaUY7UUFFakYsc0RBQXNEO1FBQ3RELEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXpELHFEQUFxRDtRQUNyRCxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDcEIsSUFBSSxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRTtnQkFDL0MsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxRQUFRLEVBQUU7b0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQVUsUUFBUSxDQUFDLENBQUM7aUJBQy9DO2FBQ0o7WUFFRCxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxTQUFTO1lBQzlCLDJDQUEyQztZQUMzQyxJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEtBQUssWUFBWSxFQUFFO2dCQUM5QyxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3BDO1lBRUQsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxTQUFnQixDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDO1FBRUYsSUFBSSxFQUFFLENBQUM7SUFDWCxDQUFDLENBQUM7QUFDTixDQUFDLENBQUM7QUF4Q1csUUFBQSxjQUFjLGtCQXdDekI7QUFFRjs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFTLG1CQUFtQjtJQUN4QixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUNsRCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQztJQUN6QyxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksR0FBRyxTQUFTLFlBQVksQ0FBQyxLQUFZLEVBQUUsR0FBWSxFQUFFLEdBQWEsRUFBRSxJQUFrQjtRQUM5RyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQyxDQUFBO0FBQ0wsQ0FBQyJ9
|
package/dist/module.d.ts
CHANGED
|
@@ -1,9 +1,20 @@
|
|
|
1
|
-
import { IModule, IModuleConfigurator, IServiceRegistration } from "@shrub/core";
|
|
1
|
+
import { IModule, IModuleConfigurator, IModuleInitializer, IServiceRegistration } from "@shrub/core";
|
|
2
2
|
import { ExpressModule } from "@shrub/express";
|
|
3
3
|
import { TracingModule } from "@shrub/tracing";
|
|
4
|
+
import { IRequestTracingOptions } from "./middleware";
|
|
5
|
+
export declare const IExpressSessionConfiguration: import("@shrub/core").IModuleConfigurationType<IExpressSessionConfiguration>;
|
|
6
|
+
export interface IExpressSessionConfiguration {
|
|
7
|
+
/**
|
|
8
|
+
* Enables request tracing with the specified options. Note: if options are not explicitly provided
|
|
9
|
+
* the module will attempt to fetch options from the options service.
|
|
10
|
+
*/
|
|
11
|
+
useRequestTracing(options: IRequestTracingOptions): void;
|
|
12
|
+
}
|
|
4
13
|
export declare class ExpressTracingModule implements IModule {
|
|
14
|
+
private options?;
|
|
5
15
|
readonly name = "express-tracing";
|
|
6
16
|
readonly dependencies: (typeof ExpressModule | typeof TracingModule)[];
|
|
17
|
+
initialize({ config, settings }: IModuleInitializer): void;
|
|
7
18
|
configureServices(registration: IServiceRegistration): void;
|
|
8
|
-
configure({ config }: IModuleConfigurator): void;
|
|
19
|
+
configure({ config, next, services }: IModuleConfigurator): void;
|
|
9
20
|
}
|
package/dist/module.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ExpressTracingModule = void 0;
|
|
3
|
+
exports.ExpressTracingModule = exports.IExpressSessionConfiguration = void 0;
|
|
4
|
+
const core_1 = require("@shrub/core");
|
|
4
5
|
const express_1 = require("@shrub/express");
|
|
5
6
|
const tracing_1 = require("@shrub/tracing");
|
|
6
7
|
const middleware_1 = require("./middleware");
|
|
7
8
|
const service_1 = require("./service");
|
|
9
|
+
exports.IExpressSessionConfiguration = core_1.createConfig();
|
|
8
10
|
class ExpressTracingModule {
|
|
9
11
|
constructor() {
|
|
10
12
|
this.name = "express-tracing";
|
|
@@ -13,12 +15,20 @@ class ExpressTracingModule {
|
|
|
13
15
|
tracing_1.TracingModule
|
|
14
16
|
];
|
|
15
17
|
}
|
|
18
|
+
initialize({ config, settings }) {
|
|
19
|
+
settings.bindToOptions(middleware_1.IRequestTracingOptions);
|
|
20
|
+
config(exports.IExpressSessionConfiguration).register(() => ({
|
|
21
|
+
useRequestTracing: options => this.options = options
|
|
22
|
+
}));
|
|
23
|
+
}
|
|
16
24
|
configureServices(registration) {
|
|
17
25
|
registration.register(service_1.IExpressTracingService, service_1.ExpressTracingService);
|
|
18
26
|
}
|
|
19
|
-
configure({ config }) {
|
|
20
|
-
config.get(express_1.IExpressConfiguration).
|
|
27
|
+
configure({ config, next, services }) {
|
|
28
|
+
config.get(express_1.IExpressConfiguration).use((req, res, next) => middleware_1.requestTracing(this.options)(req, res, next));
|
|
29
|
+
// invoke next to allow modules downstream the ability to configure the request racing middleware
|
|
30
|
+
next().then(() => this.options = this.options || services.get(core_1.IOptionsService).getOptions(middleware_1.IRequestTracingOptions));
|
|
21
31
|
}
|
|
22
32
|
}
|
|
23
33
|
exports.ExpressTracingModule = ExpressTracingModule;
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzQ0FBb0k7QUFDcEksNENBQXNFO0FBQ3RFLDRDQUErQztBQUMvQyw2Q0FBc0U7QUFDdEUsdUNBQTBFO0FBRTdELFFBQUEsNEJBQTRCLEdBQUcsbUJBQVksRUFBZ0MsQ0FBQztBQVN6RixNQUFhLG9CQUFvQjtJQUFqQztRQUdhLFNBQUksR0FBRyxpQkFBaUIsQ0FBQztRQUN6QixpQkFBWSxHQUFHO1lBQ3BCLHVCQUFhO1lBQ2IsdUJBQWE7U0FDaEIsQ0FBQztJQWtCTixDQUFDO0lBaEJHLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQXNCO1FBQy9DLFFBQVEsQ0FBQyxhQUFhLENBQUMsbUNBQXNCLENBQUMsQ0FBQztRQUMvQyxNQUFNLENBQUMsb0NBQTRCLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNqRCxpQkFBaUIsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTztTQUN2RCxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxZQUFrQztRQUNoRCxZQUFZLENBQUMsUUFBUSxDQUFDLGdDQUFzQixFQUFFLCtCQUFxQixDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUF1QjtRQUNyRCxNQUFNLENBQUMsR0FBRyxDQUFDLCtCQUFxQixDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLDJCQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4RyxpR0FBaUc7UUFDakcsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLHNCQUFlLENBQUMsQ0FBQyxVQUFVLENBQUMsbUNBQXNCLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7Q0FDSjtBQXpCRCxvREF5QkMifQ==
|
package/dist/service.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export declare enum TraceHeaders {
|
|
|
16
16
|
traceId = "X-Trace-ID",
|
|
17
17
|
spanId = "X-Span-ID"
|
|
18
18
|
}
|
|
19
|
+
export declare const IRequestTracingOptions: import("@shrub/core").IOptions<IRequestTracingOptions>;
|
|
19
20
|
export declare const IExpressTracingService: import("@shrub/core").IService<IExpressTracingService>;
|
|
20
21
|
export declare class ExpressTracingService implements IExpressTracingService {
|
|
21
22
|
private readonly tracingService;
|
package/dist/service.js
CHANGED
|
@@ -9,7 +9,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
9
9
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.ExpressTracingService = exports.IExpressTracingService = exports.TraceHeaders = void 0;
|
|
12
|
+
exports.ExpressTracingService = exports.IExpressTracingService = exports.IRequestTracingOptions = exports.TraceHeaders = void 0;
|
|
13
13
|
const core_1 = require("@shrub/core");
|
|
14
14
|
const tracing_1 = require("@shrub/tracing");
|
|
15
15
|
var TraceHeaders;
|
|
@@ -17,6 +17,7 @@ var TraceHeaders;
|
|
|
17
17
|
TraceHeaders["traceId"] = "X-Trace-ID";
|
|
18
18
|
TraceHeaders["spanId"] = "X-Span-ID";
|
|
19
19
|
})(TraceHeaders = exports.TraceHeaders || (exports.TraceHeaders = {}));
|
|
20
|
+
exports.IRequestTracingOptions = core_1.createOptions("request-tracing");
|
|
20
21
|
exports.IExpressTracingService = core_1.createService("express-tracing-service");
|
|
21
22
|
function isRequestContextScope(scope) {
|
|
22
23
|
return scope.bag !== undefined && scope.services !== undefined;
|
|
@@ -85,4 +86,4 @@ ExpressTracingService = __decorate([
|
|
|
85
86
|
__param(0, tracing_1.ITracingService)
|
|
86
87
|
], ExpressTracingService);
|
|
87
88
|
exports.ExpressTracingService = ExpressTracingService;
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLHNDQUFtRTtBQUVuRSw0Q0FBK0U7QUFrQi9FLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNwQixzQ0FBc0IsQ0FBQTtJQUN0QixvQ0FBb0IsQ0FBQTtBQUN4QixDQUFDLEVBSFcsWUFBWSxHQUFaLG9CQUFZLEtBQVosb0JBQVksUUFHdkI7QUFFWSxRQUFBLHNCQUFzQixHQUFHLG9CQUFhLENBQXlCLGlCQUFpQixDQUFDLENBQUM7QUFDbEYsUUFBQSxzQkFBc0IsR0FBRyxvQkFBYSxDQUF5Qix5QkFBeUIsQ0FBQyxDQUFDO0FBRXZHLFNBQVMscUJBQXFCLENBQUMsS0FBVTtJQUNyQyxPQUF5QixLQUFNLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBc0IsS0FBTSxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUM7QUFDekcsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLEtBQVU7SUFDOUIsT0FBaUIsS0FBTSxDQUFDLEdBQUcsS0FBSyxTQUFTLElBQWMsS0FBTSxDQUFDLE1BQU0sS0FBSyxTQUFTLENBQUM7QUFDdkYsQ0FBQztBQUdELElBQWEscUJBQXFCLEdBQWxDLE1BQWEscUJBQXFCO0lBSTlCLFlBQThDLGNBQStCO1FBQS9CLG1CQUFjLEdBQWQsY0FBYyxDQUFpQjtJQUM3RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVksRUFBRSxPQUFnQztRQUNwRCxNQUFNLE9BQU8sR0FBRyxPQUFPLElBQUksT0FBTyxDQUFDLFFBQVE7WUFDdkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFaEMsTUFBTSxJQUFJLEdBQVU7WUFDaEIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzNCLGFBQWEsRUFBRSxH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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shrub/express-tracing",
|
|
3
3
|
"description": "A module that provides middleware for tracing express requests.",
|
|
4
|
-
"version": "0.5.
|
|
4
|
+
"version": "0.5.35",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -25,15 +25,15 @@
|
|
|
25
25
|
"test": "jest"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@sprig/event-emitter": "^0.1.
|
|
28
|
+
"@sprig/event-emitter": "^0.1.71",
|
|
29
29
|
"@types/express": "4.17.9"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@shrub/core": "0.5.
|
|
33
|
-
"@shrub/express": "0.5.
|
|
34
|
-
"@shrub/logging": "0.5.
|
|
35
|
-
"@shrub/tracing": "0.5.
|
|
32
|
+
"@shrub/core": "0.5.35",
|
|
33
|
+
"@shrub/express": "0.5.35",
|
|
34
|
+
"@shrub/logging": "0.5.35",
|
|
35
|
+
"@shrub/tracing": "0.5.35",
|
|
36
36
|
"express": "^4.17.1"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "c10d4d9a1aa5f28454b4921e1bb5887abd9447b1"
|
|
39
39
|
}
|