@opentelemetry/instrumentation-mongodb 0.24.0 → 0.28.0

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/CHANGELOG.md ADDED
@@ -0,0 +1,55 @@
1
+ # Changelog
2
+
3
+ ## [0.28.0](https://www.github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.27.0...instrumentation-mongodb-v0.28.0) (2022-01-24)
4
+
5
+
6
+ ### Features
7
+
8
+ * re-enable TAV ([#823](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/823)) ([2e14f46](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/2e14f46b3f7221ae51ffa12313997f007c300e21))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * rename lerna's --include-filtered-dependencies option ([#817](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/817)) ([cf268e7](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/cf268e7a92b7800ad6dbec9ca77466f9ee03ee1a))
14
+ * use localhost for services in CI ([#816](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/816)) ([f497313](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/f4973133e86549bbca301983085cc67788a10acd))
15
+
16
+
17
+ ### Dependencies
18
+
19
+ * The following workspace dependencies were updated
20
+ * devDependencies
21
+ * @opentelemetry/contrib-test-utils bumped from ^0.28.0 to ^0.29.0
22
+
23
+ ## [0.27.0](https://www.github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.26.0...instrumentation-mongodb-v0.27.0) (2021-11-30)
24
+
25
+
26
+ ### Features
27
+
28
+ * use latest instrumentation base ([#769](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/769)) ([7aff23e](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/7aff23ebebbe209fa3b78c2e7f513c9cd2231be4))
29
+
30
+
31
+ ### Dependencies
32
+
33
+ * The following workspace dependencies were updated
34
+ * devDependencies
35
+ * @opentelemetry/contrib-test-utils bumped from ^0.27.0 to ^0.28.0
36
+
37
+ ## [0.26.0](https://www.github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.25.0...instrumentation-mongodb-v0.26.0) (2021-10-22)
38
+
39
+
40
+ ### Features
41
+
42
+ * support API and SDK 1.0 ([#706](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/706)) ([096b694](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/096b694bbc3079f0ab4ee0462869b10eb8185202))
43
+
44
+
45
+ ### Bug Fixes
46
+
47
+ * **opentelemetry-instrumentation-mongodb:** fix span attributes with unified topology ([#663](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/663)) ([aeadca8](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/aeadca8da626164828852489ab749dfd0aa1d981))
48
+
49
+
50
+
51
+ ### Dependencies
52
+
53
+ * The following workspace dependencies were updated
54
+ * devDependencies
55
+ * @opentelemetry/contrib-test-utils bumped from ^0.26.0 to ^0.27.0
package/README.md CHANGED
@@ -8,7 +8,9 @@
8
8
  This module provides automatic instrumentation for [`mongodb`](https://github.com/mongodb/node-mongodb-native).
9
9
 
10
10
  For automatic instrumentation see the
11
- [@opentelemetry/node](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-node) package.
11
+ [@opentelemetry/sdk-trace-node](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-node) package.
12
+
13
+ Compatible with OpenTelemetry JS API and SDK `1.0+`.
12
14
 
13
15
  ## Installation
14
16
 
@@ -17,7 +19,8 @@ npm install --save @opentelemetry/instrumentation-mongodb
17
19
  ```
18
20
 
19
21
  ### Supported Versions
20
- - `'>=3.3 <4`
22
+
23
+ - `>=3.3 <4`
21
24
 
22
25
  ## Usage
23
26
 
@@ -27,7 +30,7 @@ To load a specific instrumentation (**mongodb** in this case), specify it in the
27
30
 
28
31
  ```javascript
29
32
  const { MongoDBInstrumentation } = require('@opentelemetry/instrumentation-mongodb');
30
- const { NodeTracerProvider } = require('@opentelemetry/node');
33
+ const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
31
34
  const { registerInstrumentations } = require('@opentelemetry/instrumentation');
32
35
 
33
36
  const provider = new NodeTracerProvider();
@@ -51,6 +54,7 @@ Mongodb instrumentation has few options available to choose from. You can set th
51
54
  | ------- | ---- | ----------- |
52
55
  | [`enhancedDatabaseReporting`](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-api/src/trace/instrumentation/instrumentation.ts#L91) | `string` | If true, additional information about query parameters and results will be attached (as `attributes`) to spans representing database operations |
53
56
  | `responseHook` | `MongoDBInstrumentationExecutionResponseHook` (function) | Function for adding custom attributes from db response |
57
+ | `dbStatementSerializer` | `DbStatementSerializer` (function) | Custom serializer function for the db.statement tag |
54
58
 
55
59
  ## Useful links
56
60
 
@@ -28,6 +28,7 @@ export declare class MongoDBInstrumentation extends InstrumentationBase<typeof m
28
28
  * @param topology mongodb internal representation of the network topology
29
29
  */
30
30
  private _populateAttributes;
31
+ private _defaultDbStatementSerializer;
31
32
  /**
32
33
  * Triggers the response hook in case it is defined.
33
34
  * @param span The span to add the results to.
@@ -107,7 +107,7 @@ class MongoDBInstrumentation extends instrumentation_1.InstrumentationBase {
107
107
  });
108
108
  instrumentation._populateAttributes(span, ns, server,
109
109
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
110
- operationName !== 'insert' ? ops[0] : undefined);
110
+ ops[0]);
111
111
  const patchedCallback = instrumentation._patchEnd(span, resultHandler);
112
112
  // handle when options is the callback to send the correct number of args
113
113
  if (typeof options === 'function') {
@@ -244,13 +244,25 @@ class MongoDBInstrumentation extends instrumentation_1.InstrumentationBase {
244
244
  * @param topology mongodb internal representation of the network topology
245
245
  */
246
246
  _populateAttributes(span, ns, topology, command) {
247
- var _a, _b, _c, _d, _e, _f, _g;
247
+ var _a, _b, _c, _d, _e, _f, _g, _h;
248
248
  // add network attributes to determine the remote server
249
249
  if (topology && topology.s) {
250
- span.setAttributes({
251
- [semantic_conventions_1.SemanticAttributes.NET_HOST_NAME]: `${(_b = (_a = topology.s.options) === null || _a === void 0 ? void 0 : _a.host) !== null && _b !== void 0 ? _b : topology.s.host}`,
252
- [semantic_conventions_1.SemanticAttributes.NET_HOST_PORT]: `${(_d = (_c = topology.s.options) === null || _c === void 0 ? void 0 : _c.port) !== null && _d !== void 0 ? _d : topology.s.port}`,
253
- });
250
+ let host = (_b = (_a = topology.s.options) === null || _a === void 0 ? void 0 : _a.host) !== null && _b !== void 0 ? _b : topology.s.host;
251
+ let port = (_e = ((_d = (_c = topology.s.options) === null || _c === void 0 ? void 0 : _c.port) !== null && _d !== void 0 ? _d : topology.s.port)) === null || _e === void 0 ? void 0 : _e.toString();
252
+ if (host == null || port == null) {
253
+ const address = (_f = topology.description) === null || _f === void 0 ? void 0 : _f.address;
254
+ if (address) {
255
+ const addressSegments = address.split(':');
256
+ host = addressSegments[0];
257
+ port = addressSegments[1];
258
+ }
259
+ }
260
+ if ((host === null || host === void 0 ? void 0 : host.length) && (port === null || port === void 0 ? void 0 : port.length)) {
261
+ span.setAttributes({
262
+ [semantic_conventions_1.SemanticAttributes.NET_HOST_NAME]: host,
263
+ [semantic_conventions_1.SemanticAttributes.NET_HOST_PORT]: port,
264
+ });
265
+ }
254
266
  }
255
267
  // The namespace is a combination of the database name and the name of the
256
268
  // collection or index, like so: [database-name].[collection-or-index-name].
@@ -266,14 +278,29 @@ class MongoDBInstrumentation extends instrumentation_1.InstrumentationBase {
266
278
  if (command === undefined)
267
279
  return;
268
280
  // capture parameters within the query as well if enhancedDatabaseReporting is enabled.
269
- const commandObj = (_f = (_e = command.query) !== null && _e !== void 0 ? _e : command.q) !== null && _f !== void 0 ? _f : command;
270
- const query = ((_g = this._config) === null || _g === void 0 ? void 0 : _g.enhancedDatabaseReporting) === true
281
+ const commandObj = (_h = (_g = command.query) !== null && _g !== void 0 ? _g : command.q) !== null && _h !== void 0 ? _h : command;
282
+ const dbStatementSerializer = typeof this._config.dbStatementSerializer === 'function'
283
+ ? this._config.dbStatementSerializer
284
+ : this._defaultDbStatementSerializer.bind(this);
285
+ instrumentation_1.safeExecuteInTheMiddle(() => {
286
+ const query = dbStatementSerializer(commandObj);
287
+ span.setAttribute(semantic_conventions_1.SemanticAttributes.DB_STATEMENT, query);
288
+ }, err => {
289
+ if (err) {
290
+ this._diag.error('Error running dbStatementSerializer hook', err);
291
+ }
292
+ }, true);
293
+ }
294
+ _defaultDbStatementSerializer(commandObj) {
295
+ var _a;
296
+ const enhancedDbReporting = !!((_a = this._config) === null || _a === void 0 ? void 0 : _a.enhancedDatabaseReporting);
297
+ const resultObj = enhancedDbReporting
271
298
  ? commandObj
272
299
  : Object.keys(commandObj).reduce((obj, key) => {
273
300
  obj[key] = '?';
274
301
  return obj;
275
302
  }, {});
276
- span.setAttribute(semantic_conventions_1.SemanticAttributes.DB_STATEMENT, JSON.stringify(query));
303
+ return JSON.stringify(resultObj);
277
304
  }
278
305
  /**
279
306
  * Triggers the response hook in case it is defined.
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../src/instrumentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../src/instrumentation.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,4CAO4B;AAC5B,oEAMwC;AACxC,8EAAyE;AAEzE,mCAQiB;AACjB,uCAAoC;AAEpC,MAAM,iBAAiB,GAAG,CAAC,UAAU,CAAC,CAAC;AAEvC,uDAAuD;AACvD,MAAa,sBAAuB,SAAQ,qCAE3C;IACC,YAA+B,UAAwC,EAAE;QACvE,KAAK,CAAC,wCAAwC,EAAE,iBAAO,EAAE,OAAO,CAAC,CAAC;QADrC,YAAO,GAAP,OAAO,CAAmC;IAEzE,CAAC;IAED,IAAI;QACF,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9C,OAAO;YACL,IAAI,qDAAmC,CACrC,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT;gBACE,IAAI,+CAA6B,CAC/B,wCAAwC,EACxC,iBAAiB,EACjB,KAAK,EACL,OAAO,CACR;aACF,CACF;SACF,CAAC;IACJ,CAAC;IAEO,WAAW;QACjB,OAAO;YACL,KAAK,EAAE,CAAC,aAAgB,EAAE,aAAsB,EAAE,EAAE;gBAClD,UAAI,CAAC,KAAK,CAAC,8BAA8B,aAAa,EAAE,CAAC,CAAC;gBAC1D,yBAAyB;gBACzB,IAAI,2BAAS,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;oBACnC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;iBACvC;gBACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACvE,yBAAyB;gBACzB,IAAI,2BAAS,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;oBACnC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;iBACvC;gBACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACvE,yBAAyB;gBACzB,IAAI,2BAAS,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;oBACnC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;iBACvC;gBACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACvE,sBAAsB;gBACtB,IAAI,2BAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;oBACpC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;iBACxC;gBACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;gBAC9D,cAAc;gBACd,IAAI,2BAAS,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;oBAClC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;iBACtC;gBACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;gBACzD,qCAAqC;gBACrC,IAAI,2BAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;oBACpC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;iBACxC;gBACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBAC7D,OAAO,aAAa,CAAC;YACvB,CAAC;YACD,OAAO,EAAE,CAAC,aAAiB,EAAE,aAAsB,EAAE,EAAE;gBACrD,IAAI,aAAa,KAAK,SAAS;oBAAE,OAAO;gBACxC,UAAI,CAAC,KAAK,CAAC,uCAAuC,aAAa,EAAE,CAAC,CAAC;gBACnE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACvC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACzC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,0CAA0C;IAClC,kBAAkB,CAAC,aAA6C;QACtE,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,OAAO,CAAC,QAAoD,EAAE,EAAE;YAC9D,OAAO,SAAS,oBAAoB,CAElC,MAA6B,EAC7B,EAAU,EACV,GAAc,EACd,OAA2B,EAC3B,QAAmB;gBAEnB,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpD,MAAM,aAAa,GACjB,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrD,IACE,CAAC,WAAW;oBACZ,OAAO,aAAa,KAAK,UAAU;oBACnC,OAAO,GAAG,KAAK,QAAQ,EACvB;oBACA,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;wBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;qBACtD;yBAAM;wBACL,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;qBAChE;iBACF;gBACD,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAC3C,WAAW,aAAa,EAAE,EAC1B;oBACE,IAAI,EAAE,cAAQ,CAAC,MAAM;iBACtB,CACF,CAAC;gBAEF,eAAe,CAAC,mBAAmB,CACjC,IAAI,EACJ,EAAE,EACF,MAAM;gBACN,8DAA8D;gBAC9D,GAAG,CAAC,CAAC,CAAQ,CACd,CAAC;gBACF,MAAM,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACvE,yEAAyE;gBACzE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;oBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;iBAC9D;qBAAM;oBACL,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;iBACvE;YACH,CAAC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED,0CAA0C;IAClC,gBAAgB;QACtB,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,OAAO,CAAC,QAAyC,EAAE,EAAE;YACnD,OAAO,SAAS,oBAAoB,CAElC,MAA6B,EAC7B,EAAU,EACV,GAAyB,EACzB,OAA2B,EAC3B,QAAmB;gBAEnB,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpD,MAAM,aAAa,GACjB,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrD,IACE,CAAC,WAAW;oBACZ,OAAO,aAAa,KAAK,UAAU;oBACnC,OAAO,GAAG,KAAK,QAAQ,EACvB;oBACA,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;wBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;qBACtD;yBAAM;wBACL,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;qBAChE;iBACF;gBACD,MAAM,WAAW,GAAG,eAAe,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;gBACzD,MAAM,IAAI,GACR,WAAW,KAAK,0BAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;gBACvE,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,EAAE;oBAC/D,IAAI,EAAE,cAAQ,CAAC,MAAM;iBACtB,CAAC,CAAC;gBACH,eAAe,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3D,MAAM,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACvE,yEAAyE;gBACzE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;oBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;iBAC9D;qBAAM;oBACL,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;iBACvE;YACH,CAAC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED,uCAAuC;IAC/B,aAAa;QACnB,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,OAAO,CAAC,QAAuC,EAAE,EAAE;YACjD,OAAO,SAAS,oBAAoB,CAElC,MAA6B,EAC7B,EAAU,EACV,GAAyB,EACzB,WAAwB,EACxB,OAA2B,EAC3B,QAAmB;gBAEnB,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpD,MAAM,aAAa,GACjB,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrD,IACE,CAAC,WAAW;oBACZ,OAAO,aAAa,KAAK,UAAU;oBACnC,OAAO,GAAG,KAAK,QAAQ,EACvB;oBACA,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;wBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;qBACnE;yBAAM;wBACL,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,GAAG,EACH,WAAW,EACX,OAAO,EACP,QAAQ,CACT,CAAC;qBACH;iBACF;gBACD,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE;oBAC5D,IAAI,EAAE,cAAQ,CAAC,MAAM;iBACtB,CAAC,CAAC;gBACH,eAAe,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3D,MAAM,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACvE,yEAAyE;gBACzE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;oBACjC,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,GAAG,EACH,WAAW,EACX,eAAe,CAChB,CAAC;iBACH;qBAAM;oBACL,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,GAAG,EACH,WAAW,EACX,OAAO,EACP,eAAe,CAChB,CAAC;iBACH;YACH,CAAC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED,uCAAuC;IAC/B,eAAe;QACrB,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,OAAO,CAAC,QAAyC,EAAE,EAAE;YACnD,OAAO,SAAS,oBAAoB,CAElC,MAA6B,EAC7B,EAAU,EACV,WAAwB,EACxB,SAAiB,EACjB,OAA2B,EAC3B,QAAmB;gBAEnB,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpD,MAAM,aAAa,GACjB,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrD,IAAI,CAAC,WAAW,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE;oBACvD,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;wBACjC,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,WAAW,EACX,SAAS,EACT,OAAO,CACR,CAAC;qBACH;yBAAM;wBACL,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,WAAW,EACX,SAAS,EACT,OAAO,EACP,QAAQ,CACT,CAAC;qBACH;iBACF;gBACD,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE;oBAC/D,IAAI,EAAE,cAAQ,CAAC,MAAM;iBACtB,CAAC,CAAC;gBACH,eAAe,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;gBACvE,MAAM,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACvE,yEAAyE;gBACzE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;oBACjC,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,WAAW,EACX,SAAS,EACT,eAAe,CAChB,CAAC;iBACH;qBAAM;oBACL,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,MAAM,EACN,EAAE,EACF,WAAW,EACX,SAAS,EACT,OAAO,EACP,eAAe,CAChB,CAAC;iBACH;YACH,CAAC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,OAA6B;QACnD,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE;YACvC,OAAO,0BAAkB,CAAC,cAAc,CAAC;SAC1C;aAAM,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE;YAC9C,OAAO,0BAAkB,CAAC,eAAe,CAAC;SAC3C;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;YACzC,OAAO,0BAAkB,CAAC,SAAS,CAAC;SACrC;aAAM,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;YACtC,OAAO,0BAAkB,CAAC,KAAK,CAAC;SACjC;aAAM;YACL,OAAO,0BAAkB,CAAC,OAAO,CAAC;SACnC;IACH,CAAC;IAED;;;;;;OAMG;IACK,mBAAmB,CACzB,IAAU,EACV,EAAU,EACV,QAA+B,EAC/B,OAA8B;;QAE9B,wDAAwD;QACxD,IAAI,QAAQ,IAAI,QAAQ,CAAC,CAAC,EAAE;YAC1B,IAAI,IAAI,GAAG,MAAA,MAAA,QAAQ,CAAC,CAAC,CAAC,OAAO,0CAAE,IAAI,mCAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;YACvD,IAAI,IAAI,GAAuB,MAAA,CAC7B,MAAA,MAAA,QAAQ,CAAC,CAAC,CAAC,OAAO,0CAAE,IAAI,mCAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAC5C,0CAAE,QAAQ,EAAE,CAAC;YACd,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChC,MAAM,OAAO,GAAG,MAAA,QAAQ,CAAC,WAAW,0CAAE,OAAO,CAAC;gBAC9C,IAAI,OAAO,EAAE;oBACX,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC3C,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;oBAC1B,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;iBAC3B;aACF;YACD,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA,EAAE;gBAChC,IAAI,CAAC,aAAa,CAAC;oBACjB,CAAC,yCAAkB,CAAC,aAAa,CAAC,EAAE,IAAI;oBACxC,CAAC,yCAAkB,CAAC,aAAa,CAAC,EAAE,IAAI;iBACzC,CAAC,CAAC;aACJ;SACF;QAED,0EAA0E;QAC1E,4EAA4E;QAC5E,sEAAsE;QACtE,0DAA0D;QAC1D,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAExD,kCAAkC;QAClC,IAAI,CAAC,aAAa,CAAC;YACjB,CAAC,yCAAkB,CAAC,SAAS,CAAC,EAAE,SAAS;YACzC,CAAC,yCAAkB,CAAC,OAAO,CAAC,EAAE,MAAM;YACpC,CAAC,yCAAkB,CAAC,qBAAqB,CAAC,EAAE,YAAY;SACzD,CAAC,CAAC;QAEH,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO;QAElC,uFAAuF;QACvF,MAAM,UAAU,GAAG,MAAA,MAAA,OAAO,CAAC,KAAK,mCAAI,OAAO,CAAC,CAAC,mCAAI,OAAO,CAAC;QACzD,MAAM,qBAAqB,GACzB,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,KAAK,UAAU;YACtD,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB;YACpC,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpD,wCAAsB,CACpB,GAAG,EAAE;YACH,MAAM,KAAK,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAChD,IAAI,CAAC,YAAY,CAAC,yCAAkB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,EACD,GAAG,CAAC,EAAE;YACJ,IAAI,GAAG,EAAE;gBACP,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;aACnE;QACH,CAAC,EACD,IAAI,CACL,CAAC;IACJ,CAAC;IAEO,6BAA6B,CAAC,UAAmC;;QACvE,MAAM,mBAAmB,GAAG,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,yBAAyB,CAAA,CAAC;QACtE,MAAM,SAAS,GAAG,mBAAmB;YACnC,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1C,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBACf,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,EAAgC,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAAC,IAAU,EAAE,MAAqB;QAC9D,MAAM,MAAM,GAAiC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9D,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE;YAC7C,wCAAsB,CACpB,GAAG,EAAE;gBACH,MAAM,CAAC,YAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/C,CAAC,EACD,GAAG,CAAC,EAAE;gBACJ,IAAI,GAAG,EAAE;oBACP,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;iBACtD;YACH,CAAC,EACD,IAAI,CACL,CAAC;SACH;IACH,CAAC;IAED;;;;OAIG;IACK,SAAS,CAAC,IAAU,EAAE,aAAuB;QACnD,wEAAwE;QACxE,4CAA4C;QAC5C,MAAM,aAAa,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC;QACvC,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,OAAO,SAAS,UAAU,CAAW,GAAG,IAAe;YACrD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,IAAI,CAAC,SAAS,CAAC;oBACb,IAAI,EAAE,oBAAc,CAAC,KAAK;oBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAkB,CAAC;gBACxC,eAAe,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACtD;YACD,IAAI,CAAC,GAAG,EAAE,CAAC;YAEX,OAAO,aAAO,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE;gBACtC,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC;CACF;AAvcD,wDAucC"}
@@ -3,6 +3,13 @@ import { Span } from '@opentelemetry/api';
3
3
  export interface MongoDBInstrumentationExecutionResponseHook {
4
4
  (span: Span, responseInfo: MongoResponseHookInformation): void;
5
5
  }
6
+ /**
7
+ * Function that can be used to serialize db.statement tag
8
+ * @param cmd - MongoDB command object
9
+ *
10
+ * @returns serialized string that will be used as the db.statement attribute.
11
+ */
12
+ export declare type DbStatementSerializer = (cmd: Record<string, unknown>) => string;
6
13
  export interface MongoDBInstrumentationConfig extends InstrumentationConfig {
7
14
  /**
8
15
  * If true, additional information about query parameters and
@@ -17,6 +24,10 @@ export interface MongoDBInstrumentationConfig extends InstrumentationConfig {
17
24
  * @default undefined
18
25
  */
19
26
  responseHook?: MongoDBInstrumentationExecutionResponseHook;
27
+ /**
28
+ * Custom serializer function for the db.statement tag
29
+ */
30
+ dbStatementSerializer?: DbStatementSerializer;
20
31
  }
21
32
  export declare type Func<T> = (...args: unknown[]) => T;
22
33
  export declare type MongoInternalCommand = {
@@ -60,6 +71,9 @@ export declare type MongoInternalTopology = {
60
71
  host?: string;
61
72
  port?: number;
62
73
  };
74
+ description?: {
75
+ address?: string;
76
+ };
63
77
  };
64
78
  export declare enum MongodbCommandType {
65
79
  CREATE_INDEXES = "createIndexes",
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AA6HH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,sDAAgC,CAAA;IAChC,uDAAiC,CAAA;IACjC,4CAAsB,CAAA;IACtB,qCAAe,CAAA;IACf,yCAAmB,CAAA;AACrB,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AA8IH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,sDAAgC,CAAA;IAChC,uDAAiC,CAAA;IACjC,4CAAsB,CAAA;IACtB,qCAAe,CAAA;IACf,yCAAmB,CAAA;AACrB,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B"}
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.24.0";
1
+ export declare const VERSION = "0.28.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -17,5 +17,5 @@
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.VERSION = void 0;
19
19
  // this is autogenerated file, see scripts/version-update.js
20
- exports.VERSION = '0.24.0';
20
+ exports.VERSION = '0.28.0';
21
21
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,31 +1,33 @@
1
1
  {
2
2
  "name": "@opentelemetry/instrumentation-mongodb",
3
- "version": "0.24.0",
3
+ "version": "0.28.0",
4
4
  "description": "OpenTelemetry mongodb automatic instrumentation package.",
5
5
  "main": "build/src/index.js",
6
6
  "types": "build/src/index.d.ts",
7
7
  "repository": "open-telemetry/opentelemetry-js-contrib",
8
8
  "scripts": {
9
9
  "docker:start": "docker run -e MONGODB_DB=opentelemetry-tests -e MONGODB_PORT=27017 -e MONGODB_HOST=localhost -p 27017:27017 --rm mongo",
10
- "test": "nyc ts-mocha --parallel -p tsconfig.json 'test/**/*.test.ts'",
10
+ "test": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
11
+ "test-all-versions": "tav",
11
12
  "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../",
12
13
  "tdd": "npm run test -- --watch-extensions ts --watch",
13
14
  "clean": "rimraf build/*",
14
15
  "lint": "eslint . --ext .ts",
15
16
  "lint:fix": "eslint . --ext .ts --fix",
16
- "precompile": "tsc --version",
17
+ "precompile": "tsc --version && lerna run version --scope @opentelemetry/instrumentation-mongodb --include-dependencies",
18
+ "prewatch": "npm run precompile",
17
19
  "version:update": "node ../../../scripts/version-update.js",
18
20
  "compile": "npm run version:update && tsc -p .",
19
21
  "prepare": "npm run compile",
20
22
  "watch": "tsc -w"
21
23
  },
22
24
  "keywords": [
23
- "opentelemetry",
24
25
  "mongodb",
25
26
  "nodejs",
26
- "tracing",
27
+ "opentelemetry",
28
+ "plugin",
27
29
  "profiling",
28
- "plugin"
30
+ "tracing"
29
31
  ],
30
32
  "author": "OpenTelemetry Authors",
31
33
  "license": "Apache-2.0",
@@ -44,28 +46,30 @@
44
46
  "access": "public"
45
47
  },
46
48
  "peerDependencies": {
47
- "@opentelemetry/api": "^1.0.1"
49
+ "@opentelemetry/api": "^1.0.2"
48
50
  },
49
51
  "devDependencies": {
50
- "@opentelemetry/api": "1.0.1",
51
- "@opentelemetry/context-async-hooks": "0.24.0",
52
- "@opentelemetry/node": "0.24.0",
53
- "@opentelemetry/tracing": "0.24.0",
52
+ "@opentelemetry/api": "1.0.2",
53
+ "@opentelemetry/context-async-hooks": "1.0.1",
54
+ "@opentelemetry/contrib-test-utils": "^0.29.0",
55
+ "@opentelemetry/sdk-trace-base": "1.0.1",
56
+ "@opentelemetry/sdk-trace-node": "1.0.1",
54
57
  "@types/mocha": "7.0.2",
55
- "@types/node": "14.17.5",
58
+ "@types/node": "14.17.9",
56
59
  "codecov": "3.8.3",
57
60
  "gts": "3.1.0",
58
61
  "mocha": "7.2.0",
59
- "mongodb": "3.6.10",
62
+ "mongodb": "3.6.11",
60
63
  "nyc": "15.1.0",
61
64
  "rimraf": "3.0.2",
65
+ "test-all-versions": "5.0.1",
62
66
  "ts-mocha": "8.0.0",
63
67
  "typescript": "4.3.5"
64
68
  },
65
69
  "dependencies": {
66
- "@opentelemetry/instrumentation": "^0.24.0",
67
- "@opentelemetry/semantic-conventions": "^0.24.0",
70
+ "@opentelemetry/instrumentation": "^0.27.0",
71
+ "@opentelemetry/semantic-conventions": "^1.0.0",
68
72
  "@types/mongodb": "3.6.20"
69
73
  },
70
- "gitHead": "e4757035a7b4012703a98b5609b8ac0f859e9726"
74
+ "gitHead": "edfc04cbe3e7faaa365724ddc26bf702b68cc008"
71
75
  }