@shrub/express-tracing 0.5.34 → 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 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsT0FBTyxFQUEwQixZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUMifQ==
3
+ export { IRequestTracingOptions, TraceHeaders } from "./service";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQyJ9
@@ -1,16 +1,15 @@
1
- import { IExpressTracingService } from "./service";
1
+ import { IExpressTracingService, IRequestTracingOptions } from "./service";
2
+ export { IRequestTracingOptions };
2
3
  attachErrorListener();
3
- /** Adds a span to the request context. */
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 useRequestTracing = (options) => {
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.contextBuilder.addSpan(span);
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxzQkFBc0IsRUFBMEIsTUFBTSxXQUFXLENBQUM7QUFZM0UsbUJBQW1CLEVBQUUsQ0FBQztBQUV0QiwwQ0FBMEM7QUFDMUMsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxPQUF3QixFQUFFLElBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFFdkcsMkVBQTJFO0FBQzNFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsT0FBZ0MsRUFBa0IsRUFBRTtJQUNsRixPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUN0QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsa0hBQWtILENBQUMsQ0FBQyxDQUFDO1NBQzlJO1FBRUQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDN0MsR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFakMsMEVBQTBFO1FBQzFFLGlGQUFpRjtRQUVqRixzREFBc0Q7UUFDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFekQscURBQXFEO1FBQ3JELEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtZQUNwQixJQUFJLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEdBQUcsR0FBRyxFQUFFO2dCQUMvQyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMzQyxJQUFJLFFBQVEsRUFBRTtvQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBVSxRQUFRLENBQUMsQ0FBQztpQkFDL0M7YUFDSjtZQUVELE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFDMUIsR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLFNBQVM7WUFDOUIsMkNBQTJDO1lBQzNDLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxZQUFZLEVBQUU7Z0JBQzlDLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDcEM7WUFFRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQWdCLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7UUFFRixJQUFJLEVBQUUsQ0FBQztJQUNYLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILFNBQVMsbUJBQW1CO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDO0lBQ3pDLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLFNBQVMsWUFBWSxDQUFDLEtBQVksRUFBRSxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCO1FBQzlHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDLENBQUE7QUFDTCxDQUFDIn0=
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztBQVFsQyxtQkFBbUIsRUFBRSxDQUFDO0FBRXRCLDJFQUEyRTtBQUMzRSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxPQUFnQyxFQUFrQixFQUFFO0lBQy9FLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxrSEFBa0gsQ0FBQyxDQUFDLENBQUM7U0FDOUk7UUFFRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM3QyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFFeEIsMEVBQTBFO1FBQzFFLGlGQUFpRjtRQUVqRixzREFBc0Q7UUFDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFekQscURBQXFEO1FBQ3JELEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtZQUNwQixJQUFJLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEdBQUcsR0FBRyxFQUFFO2dCQUMvQyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMzQyxJQUFJLFFBQVEsRUFBRTtvQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBVSxRQUFRLENBQUMsQ0FBQztpQkFDL0M7YUFDSjtZQUVELE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFDMUIsR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLFNBQVM7WUFDOUIsMkNBQTJDO1lBQzNDLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxZQUFZLEVBQUU7Z0JBQzlDLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDcEM7WUFFRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQWdCLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7UUFFRixJQUFJLEVBQUUsQ0FBQztJQUNYLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILFNBQVMsbUJBQW1CO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDO0lBQ3pDLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLFNBQVMsWUFBWSxDQUFDLEtBQVksRUFBRSxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCO1FBQzlHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDLENBQUE7QUFDTCxDQUFDIn0=
@@ -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 { addSpanRequestBuilder } from "./middleware";
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).useRequestBuilder("addSpan", addSpanRequestBuilder);
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFMUUsTUFBTSxPQUFPLG9CQUFvQjtJQUFqQztRQUNhLFNBQUksR0FBRyxpQkFBaUIsQ0FBQztRQUN6QixpQkFBWSxHQUFHO1lBQ3BCLGFBQWE7WUFDYixhQUFhO1NBQ2hCLENBQUM7SUFTTixDQUFDO0lBUEcsaUJBQWlCLENBQUMsWUFBa0M7UUFDaEQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQXVCO1FBQ3JDLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUMxRixDQUFDO0NBQ0oifQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFvRCxlQUFlLEVBQXdCLE1BQU0sYUFBYSxDQUFDO0FBQ3BJLE9BQU8sRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFMUUsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsWUFBWSxFQUFnQyxDQUFDO0FBU3pGLE1BQU0sT0FBTyxvQkFBb0I7SUFBakM7UUFHYSxTQUFJLEdBQUcsaUJBQWlCLENBQUM7UUFDekIsaUJBQVksR0FBRztZQUNwQixhQUFhO1lBQ2IsYUFBYTtTQUNoQixDQUFDO0lBa0JOLENBQUM7SUFoQkcsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBc0I7UUFDL0MsUUFBUSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPO1NBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELGlCQUFpQixDQUFDLFlBQWtDO1FBQ2hELFlBQVksQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQXVCO1FBQ3JELE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDeEcsaUdBQWlHO1FBQ2pHLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7Q0FDSiJ9
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBELE9BQU8sRUFBZ0MsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFrQi9FLE1BQU0sQ0FBTixJQUFZLFlBR1g7QUFIRCxXQUFZLFlBQVk7SUFDcEIsc0NBQXNCLENBQUE7SUFDdEIsb0NBQW9CLENBQUE7QUFDeEIsQ0FBQyxFQUhXLFlBQVksS0FBWixZQUFZLFFBR3ZCO0FBRUQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsYUFBYSxDQUF5Qix5QkFBeUIsQ0FBQyxDQUFDO0FBRXZHLFNBQVMscUJBQXFCLENBQUMsS0FBVTtJQUNyQyxPQUF5QixLQUFNLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBc0IsS0FBTSxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUM7QUFDekcsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLEtBQVU7SUFDOUIsT0FBaUIsS0FBTSxDQUFDLEdBQUcsS0FBSyxTQUFTLElBQWMsS0FBTSxDQUFDLE1BQU0sS0FBSyxTQUFTLENBQUM7QUFDdkYsQ0FBQztBQUdELElBQWEscUJBQXFCLEdBQWxDLE1BQWEscUJBQXFCO0lBSTlCLFlBQThDLGNBQStCO1FBQS9CLG1CQUFjLEdBQWQsY0FBYyxDQUFpQjtJQUM3RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVksRUFBRSxPQUFnQztRQUNwRCxNQUFNLE9BQU8sR0FBRyxPQUFPLElBQUksT0FBTyxDQUFDLFFBQVE7WUFDdkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFaEMsTUFBTSxJQUFJLEdBQVU7WUFDaEIsVUFBVSxFQUFFLEdBQUcsQ0FB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
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVuRSxPQUFPLEVBQWdDLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBa0IvRSxNQUFNLENBQU4sSUFBWSxZQUdYO0FBSEQsV0FBWSxZQUFZO0lBQ3BCLHNDQUFzQixDQUFBO0lBQ3RCLG9DQUFvQixDQUFBO0FBQ3hCLENBQUMsRUFIVyxZQUFZLEtBQVosWUFBWSxRQUd2QjtBQUVELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGFBQWEsQ0FBeUIsaUJBQWlCLENBQUMsQ0FBQztBQUMvRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxhQUFhLENBQXlCLHlCQUF5QixDQUFDLENBQUM7QUFFdkcsU0FBUyxxQkFBcUIsQ0FBQyxLQUFVO0lBQ3JDLE9BQXlCLEtBQU0sQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFzQixLQUFNLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQztBQUN6RyxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsS0FBVTtJQUM5QixPQUFpQixLQUFNLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBYyxLQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQztBQUN2RixDQUFDO0FBR0QsSUFBYSxxQkFBcUIsR0FBbEMsTUFBYSxxQkFBcUI7SUFJOUIsWUFBOEMsY0FBK0I7UUFBL0IsbUJBQWMsR0FBZCxjQUFjLENBQWlCO0lBQzdFLENBQUM7SUFFRCxTQUFTLENBQUMsR0FBWSxFQUFFLE9BQWdDO1FBQ3BELE1BQU0sT0FBTyxHQUFHLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUTtZQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLENBQUMsQ0FBQyxJ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
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIscUNBQWlFO0FBQWhDLHVHQUFBLFlBQVksT0FBQSJ9
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIscUNBQWlFO0FBQXhELGlIQUFBLHNCQUFzQixPQUFBO0FBQUUsdUdBQUEsWUFBWSxPQUFBIn0=
@@ -1,22 +1,11 @@
1
- import { IRequestContext } from "@shrub/express";
2
1
  import { ISpan } from "@shrub/tracing";
3
2
  import { RequestHandler } from "express";
4
3
  import { IRequestTracingOptions } from "./service";
4
+ export { IRequestTracingOptions };
5
5
  declare module "@shrub/express/dist/request-context" {
6
6
  interface IRequestContext {
7
- readonly span?: ISpan;
8
- }
9
- interface IRequestContextBuilder {
10
- addSpan(span: ISpan): IRequestContextBuilder;
7
+ span?: ISpan;
11
8
  }
12
9
  }
13
- /** Adds a span to the request context. */
14
- export declare const addSpanRequestBuilder: (context: IRequestContext, span: ISpan) => {
15
- span: ISpan;
16
- bag: {
17
- [key: string]: any;
18
- };
19
- services: import("@shrub/core").IServiceCollection;
20
- };
21
10
  /** Request tracing middleware that will start a new span for a request. */
22
- export declare const useRequestTracing: (options?: IRequestTracingOptions | undefined) => RequestHandler;
11
+ export declare const requestTracing: (options?: IRequestTracingOptions | undefined) => RequestHandler;
@@ -1,20 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useRequestTracing = exports.addSpanRequestBuilder = void 0;
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
- /** Adds a span to the request context. */
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 useRequestTracing = (options) => {
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.contextBuilder.addSpan(span);
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.useRequestTracing = useRequestTracing;
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLHVDQUEyRTtBQVkzRSxtQkFBbUIsRUFBRSxDQUFDO0FBRXRCLDBDQUEwQztBQUNuQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsT0FBd0IsRUFBRSxJQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQTFGLFFBQUEscUJBQXFCLHlCQUFxRTtBQUV2RywyRUFBMkU7QUFDcEUsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE9BQWdDLEVBQWtCLEVBQUU7SUFDbEYsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdEIsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGdDQUFzQixDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLGtIQUFrSCxDQUFDLENBQUMsQ0FBQztTQUM5STtRQUVELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLEdBQUcsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWpDLDBFQUEwRTtRQUMxRSxpRkFBaUY7UUFFakYsc0RBQXNEO1FBQ3RELEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXpELHFEQUFxRDtRQUNyRCxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDcEIsSUFBSSxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRTtnQkFDL0MsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxRQUFRLEVBQUU7b0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQVUsUUFBUSxDQUFDLENBQUM7aUJBQy9DO2FBQ0o7WUFFRCxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxTQUFTO1lBQzlCLDJDQUEyQztZQUMzQyxJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEtBQUssWUFBWSxFQUFFO2dCQUM5QyxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3BDO1lBRUQsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxTQUFnQixDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDO1FBRUYsSUFBSSxFQUFFLENBQUM7SUFDWCxDQUFDLENBQUM7QUFDTixDQUFDLENBQUM7QUF4Q1csUUFBQSxpQkFBaUIscUJBd0M1QjtBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILFNBQVMsbUJBQW1CO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDO0lBQ3pDLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLFNBQVMsWUFBWSxDQUFDLEtBQVksRUFBRSxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCO1FBQzlHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDLENBQUE7QUFDTCxDQUFDIn0=
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).useRequestBuilder("addSpan", middleware_1.addSpanRequestBuilder);
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSw0Q0FBc0U7QUFDdEUsNENBQStDO0FBQy9DLDZDQUFxRDtBQUNyRCx1Q0FBMEU7QUFFMUUsTUFBYSxvQkFBb0I7SUFBakM7UUFDYSxTQUFJLEdBQUcsaUJBQWlCLENBQUM7UUFDekIsaUJBQVksR0FBRztZQUNwQix1QkFBYTtZQUNiLHVCQUFhO1NBQ2hCLENBQUM7SUFTTixDQUFDO0lBUEcsaUJBQWlCLENBQUMsWUFBa0M7UUFDaEQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxnQ0FBc0IsRUFBRSwrQkFBcUIsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQXVCO1FBQ3JDLE1BQU0sQ0FBQyxHQUFHLENBQUMsK0JBQXFCLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsa0NBQXFCLENBQUMsQ0FBQztJQUMxRixDQUFDO0NBQ0o7QUFkRCxvREFjQyJ9
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLHNDQUFvRDtBQUVwRCw0Q0FBK0U7QUFrQi9FLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNwQixzQ0FBc0IsQ0FBQTtJQUN0QixvQ0FBb0IsQ0FBQTtBQUN4QixDQUFDLEVBSFcsWUFBWSxHQUFaLG9CQUFZLEtBQVosb0JBQVksUUFHdkI7QUFFWSxRQUFBLHNCQUFzQixHQUFHLG9CQUFhLENBQXlCLHlCQUF5QixDQUFDLENBQUM7QUFFdkcsU0FBUyxxQkFBcUIsQ0FBQyxLQUFVO0lBQ3JDLE9BQXlCLEtBQU0sQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFzQixLQUFNLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQztBQUN6RyxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsS0FBVTtJQUM5QixPQUFpQixLQUFNLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBYyxLQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQztBQUN2RixDQUFDO0FBR0QsSUFBYSxxQkFBcUIsR0FBbEMsTUFBYSxxQkFBcUI7SUFJOUIsWUFBOEMsY0FBK0I7UUFBL0IsbUJBQWMsR0FBZCxjQUFjLENBQWlCO0lBQzdFLENBQUM7SUFFRCxTQUFTLENBQUMsR0FBWSxFQUFFLE9BQWdDO1FBQ3BELE1BQU0sT0FBTyxHQUFHLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUTtZQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUVoQyxNQUFNLElBQUksR0FBVTtZQUNoQixVQUFVLEVBQUUsR0FBRyxDQUFDLFdBQVc7WUFDM0IsYUFBYSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1NBQzVCLENBQUM7UUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMs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
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.34",
4
+ "version": "0.5.35",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -29,11 +29,11 @@
29
29
  "@types/express": "4.17.9"
30
30
  },
31
31
  "dependencies": {
32
- "@shrub/core": "0.5.34",
33
- "@shrub/express": "0.5.34",
34
- "@shrub/logging": "0.5.34",
35
- "@shrub/tracing": "0.5.34",
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": "c3cd05161eafc19d4c3e5a21f5440249c231eccf"
38
+ "gitHead": "c10d4d9a1aa5f28454b4921e1bb5887abd9447b1"
39
39
  }