@commercetools/ts-sdk-apm 1.0.1 → 2.0.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 CHANGED
@@ -1,5 +1,24 @@
1
1
  # @commercetools/ts-sdk-apm
2
2
 
3
+ ## 2.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#564](https://github.com/commercetools/commercetools-sdk-typescript/pull/564) [`db69db1`](https://github.com/commercetools/commercetools-sdk-typescript/commit/db69db1f2a1f6ca69858c272f3905b96b6180bd2) Thanks [@ajimae](https://github.com/ajimae)! - - remove newrelic as dependency in `@commercetools/ts-sdk-apm` package
8
+ - add useragent key with a default `typescript-sdk-apm-middleware` string
9
+ - add example express app on how to add `dynatrace` monitoring in the ts sdk
10
+
11
+ ## 1.0.2
12
+
13
+ ### Patch Changes
14
+
15
+ - [#551](https://github.com/commercetools/commercetools-sdk-typescript/pull/551) [`9e7939a`](https://github.com/commercetools/commercetools-sdk-typescript/commit/9e7939a1df234fd1f4f77c60f4ff75b31d7fc3fd) Thanks [@github-actions](https://github.com/apps/github-actions)! - BREAKING CHANGE:
16
+
17
+ - fix URI parameters to be URI encoded
18
+
19
+ - [#545](https://github.com/commercetools/commercetools-sdk-typescript/pull/545) [`a6d0df2`](https://github.com/commercetools/commercetools-sdk-typescript/commit/a6d0df2034b72504db2aa2d13a8d3726d97cc881) Thanks [@ajimae](https://github.com/ajimae)! - - fix user-agent header
20
+ - remove User-Agent key from the middleware request header
21
+
3
22
  ## 1.0.1
4
23
 
5
24
  ### Patch Changes
@@ -2,67 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var packageJson = {
6
- name: "@commercetools/ts-sdk-apm",
7
- version: "1.0.1",
8
- description: "commercetools typescript SDK application performance monitoring.",
9
- main: "dist/commercetools-ts-sdk-apm.cjs.js",
10
- module: "dist/commercetools-ts-sdk-apm.esm.js",
11
- author: "Chukwuemeka Ajima <meeky.ae@gmail.com>",
12
- license: "MIT",
13
- "private": false,
14
- dependencies: {
15
- "@opentelemetry/api": "^1.4.1",
16
- "@opentelemetry/auto-instrumentations-node": "^0.38.0",
17
- "@opentelemetry/exporter-metrics-otlp-http": "^0.41.0",
18
- "@opentelemetry/sdk-node": "^0.41.0",
19
- newrelic: "^10.0.0",
20
- uuid: "9.0.0"
21
- },
22
- publishConfig: {
23
- access: "public"
24
- },
25
- engines: {
26
- node: ">=14"
27
- },
28
- keywords: [
29
- "commercetools",
30
- "composable commerce",
31
- "typescript",
32
- "sdk",
33
- "apm",
34
- "telemetry",
35
- "opentelemetry",
36
- "tracing"
37
- ],
38
- homepage: "https://github.com/commercetools/commercetools-typescript-sdks",
39
- bugs: "https://github.com/commercetools/commercetools-typescript-sdks/issues",
40
- repository: {
41
- type: "git",
42
- url: "https://github.com/commercetools/commercetools-typescript-sdks.git"
43
- },
44
- files: [
45
- "dist",
46
- "CHANGELOG.md",
47
- "opentelemetry.js"
48
- ],
49
- browser: {
50
- "./dist/commercetools-ts-sdk-apm.cjs.js": "./dist/commercetools-ts-sdk-apm.browser.cjs.js",
51
- "./dist/commercetools-ts-sdk-apm.esm.js": "./dist/commercetools-ts-sdk-apm.browser.esm.js"
52
- },
53
- scripts: {
54
- organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
55
- postbuild: "yarn organize_imports",
56
- post_process_generate: "yarn organize_imports"
57
- }
58
- };
59
-
60
5
  /**
61
6
  * default newrelic APM and
62
7
  * opentelemetry tracer modules
63
8
  */
64
9
  const defaultOptions = {
65
- apm: () => require('newrelic'),
10
+ /**
11
+ * if this is to be used with newrelic, then
12
+ * pass this (apm) as an option in the `createTelemetryMiddleware`
13
+ * function e.g createTelemetryMiddleware({ apm: () => require('newrelic'), ... })
14
+ * Note: don't forget to install newrelic agent in your project `yarn add newrelic`
15
+ */
16
+ apm: () => {},
66
17
  tracer: () => require('../opentelemetry')
67
18
  };
68
19
  function createTelemetryMiddleware(options) {
@@ -82,10 +33,6 @@ function createTelemetryMiddleware(options) {
82
33
  return next => (request, response) => {
83
34
  const nextRequest = {
84
35
  ...request,
85
- headers: {
86
- ...request.headers,
87
- 'User-Agent': `typescript-sdk-newrelic-middleware-${packageJson.version}`
88
- },
89
36
  ...options
90
37
  };
91
38
  next(nextRequest, response);
@@ -1,64 +1,15 @@
1
- var packageJson = {
2
- name: "@commercetools/ts-sdk-apm",
3
- version: "1.0.1",
4
- description: "commercetools typescript SDK application performance monitoring.",
5
- main: "dist/commercetools-ts-sdk-apm.cjs.js",
6
- module: "dist/commercetools-ts-sdk-apm.esm.js",
7
- author: "Chukwuemeka Ajima <meeky.ae@gmail.com>",
8
- license: "MIT",
9
- "private": false,
10
- dependencies: {
11
- "@opentelemetry/api": "^1.4.1",
12
- "@opentelemetry/auto-instrumentations-node": "^0.38.0",
13
- "@opentelemetry/exporter-metrics-otlp-http": "^0.41.0",
14
- "@opentelemetry/sdk-node": "^0.41.0",
15
- newrelic: "^10.0.0",
16
- uuid: "9.0.0"
17
- },
18
- publishConfig: {
19
- access: "public"
20
- },
21
- engines: {
22
- node: ">=14"
23
- },
24
- keywords: [
25
- "commercetools",
26
- "composable commerce",
27
- "typescript",
28
- "sdk",
29
- "apm",
30
- "telemetry",
31
- "opentelemetry",
32
- "tracing"
33
- ],
34
- homepage: "https://github.com/commercetools/commercetools-typescript-sdks",
35
- bugs: "https://github.com/commercetools/commercetools-typescript-sdks/issues",
36
- repository: {
37
- type: "git",
38
- url: "https://github.com/commercetools/commercetools-typescript-sdks.git"
39
- },
40
- files: [
41
- "dist",
42
- "CHANGELOG.md",
43
- "opentelemetry.js"
44
- ],
45
- browser: {
46
- "./dist/commercetools-ts-sdk-apm.cjs.js": "./dist/commercetools-ts-sdk-apm.browser.cjs.js",
47
- "./dist/commercetools-ts-sdk-apm.esm.js": "./dist/commercetools-ts-sdk-apm.browser.esm.js"
48
- },
49
- scripts: {
50
- organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
51
- postbuild: "yarn organize_imports",
52
- post_process_generate: "yarn organize_imports"
53
- }
54
- };
55
-
56
1
  /**
57
2
  * default newrelic APM and
58
3
  * opentelemetry tracer modules
59
4
  */
60
5
  const defaultOptions = {
61
- apm: () => require('newrelic'),
6
+ /**
7
+ * if this is to be used with newrelic, then
8
+ * pass this (apm) as an option in the `createTelemetryMiddleware`
9
+ * function e.g createTelemetryMiddleware({ apm: () => require('newrelic'), ... })
10
+ * Note: don't forget to install newrelic agent in your project `yarn add newrelic`
11
+ */
12
+ apm: () => {},
62
13
  tracer: () => require('../opentelemetry')
63
14
  };
64
15
  function createTelemetryMiddleware(options) {
@@ -78,10 +29,6 @@ function createTelemetryMiddleware(options) {
78
29
  return next => (request, response) => {
79
30
  const nextRequest = {
80
31
  ...request,
81
- headers: {
82
- ...request.headers,
83
- 'User-Agent': `typescript-sdk-newrelic-middleware-${packageJson.version}`
84
- },
85
32
  ...options
86
33
  };
87
34
  next(nextRequest, response);
@@ -2,67 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var packageJson = {
6
- name: "@commercetools/ts-sdk-apm",
7
- version: "1.0.1",
8
- description: "commercetools typescript SDK application performance monitoring.",
9
- main: "dist/commercetools-ts-sdk-apm.cjs.js",
10
- module: "dist/commercetools-ts-sdk-apm.esm.js",
11
- author: "Chukwuemeka Ajima <meeky.ae@gmail.com>",
12
- license: "MIT",
13
- "private": false,
14
- dependencies: {
15
- "@opentelemetry/api": "^1.4.1",
16
- "@opentelemetry/auto-instrumentations-node": "^0.38.0",
17
- "@opentelemetry/exporter-metrics-otlp-http": "^0.41.0",
18
- "@opentelemetry/sdk-node": "^0.41.0",
19
- newrelic: "^10.0.0",
20
- uuid: "9.0.0"
21
- },
22
- publishConfig: {
23
- access: "public"
24
- },
25
- engines: {
26
- node: ">=14"
27
- },
28
- keywords: [
29
- "commercetools",
30
- "composable commerce",
31
- "typescript",
32
- "sdk",
33
- "apm",
34
- "telemetry",
35
- "opentelemetry",
36
- "tracing"
37
- ],
38
- homepage: "https://github.com/commercetools/commercetools-typescript-sdks",
39
- bugs: "https://github.com/commercetools/commercetools-typescript-sdks/issues",
40
- repository: {
41
- type: "git",
42
- url: "https://github.com/commercetools/commercetools-typescript-sdks.git"
43
- },
44
- files: [
45
- "dist",
46
- "CHANGELOG.md",
47
- "opentelemetry.js"
48
- ],
49
- browser: {
50
- "./dist/commercetools-ts-sdk-apm.cjs.js": "./dist/commercetools-ts-sdk-apm.browser.cjs.js",
51
- "./dist/commercetools-ts-sdk-apm.esm.js": "./dist/commercetools-ts-sdk-apm.browser.esm.js"
52
- },
53
- scripts: {
54
- organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
55
- postbuild: "yarn organize_imports",
56
- post_process_generate: "yarn organize_imports"
57
- }
58
- };
59
-
60
5
  /**
61
6
  * default newrelic APM and
62
7
  * opentelemetry tracer modules
63
8
  */
64
9
  const defaultOptions = {
65
- apm: () => require('newrelic'),
10
+ /**
11
+ * if this is to be used with newrelic, then
12
+ * pass this (apm) as an option in the `createTelemetryMiddleware`
13
+ * function e.g createTelemetryMiddleware({ apm: () => require('newrelic'), ... })
14
+ * Note: don't forget to install newrelic agent in your project `yarn add newrelic`
15
+ */
16
+ apm: () => {},
66
17
  tracer: () => require('../opentelemetry')
67
18
  };
68
19
  function createTelemetryMiddleware(options) {
@@ -82,10 +33,6 @@ function createTelemetryMiddleware(options) {
82
33
  return next => (request, response) => {
83
34
  const nextRequest = {
84
35
  ...request,
85
- headers: {
86
- ...request.headers,
87
- 'User-Agent': `typescript-sdk-newrelic-middleware-${packageJson.version}`
88
- },
89
36
  ...options
90
37
  };
91
38
  next(nextRequest, response);
@@ -2,67 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var packageJson = {
6
- name: "@commercetools/ts-sdk-apm",
7
- version: "1.0.1",
8
- description: "commercetools typescript SDK application performance monitoring.",
9
- main: "dist/commercetools-ts-sdk-apm.cjs.js",
10
- module: "dist/commercetools-ts-sdk-apm.esm.js",
11
- author: "Chukwuemeka Ajima <meeky.ae@gmail.com>",
12
- license: "MIT",
13
- "private": false,
14
- dependencies: {
15
- "@opentelemetry/api": "^1.4.1",
16
- "@opentelemetry/auto-instrumentations-node": "^0.38.0",
17
- "@opentelemetry/exporter-metrics-otlp-http": "^0.41.0",
18
- "@opentelemetry/sdk-node": "^0.41.0",
19
- newrelic: "^10.0.0",
20
- uuid: "9.0.0"
21
- },
22
- publishConfig: {
23
- access: "public"
24
- },
25
- engines: {
26
- node: ">=14"
27
- },
28
- keywords: [
29
- "commercetools",
30
- "composable commerce",
31
- "typescript",
32
- "sdk",
33
- "apm",
34
- "telemetry",
35
- "opentelemetry",
36
- "tracing"
37
- ],
38
- homepage: "https://github.com/commercetools/commercetools-typescript-sdks",
39
- bugs: "https://github.com/commercetools/commercetools-typescript-sdks/issues",
40
- repository: {
41
- type: "git",
42
- url: "https://github.com/commercetools/commercetools-typescript-sdks.git"
43
- },
44
- files: [
45
- "dist",
46
- "CHANGELOG.md",
47
- "opentelemetry.js"
48
- ],
49
- browser: {
50
- "./dist/commercetools-ts-sdk-apm.cjs.js": "./dist/commercetools-ts-sdk-apm.browser.cjs.js",
51
- "./dist/commercetools-ts-sdk-apm.esm.js": "./dist/commercetools-ts-sdk-apm.browser.esm.js"
52
- },
53
- scripts: {
54
- organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
55
- postbuild: "yarn organize_imports",
56
- post_process_generate: "yarn organize_imports"
57
- }
58
- };
59
-
60
5
  /**
61
6
  * default newrelic APM and
62
7
  * opentelemetry tracer modules
63
8
  */
64
9
  const defaultOptions = {
65
- apm: () => require('newrelic'),
10
+ /**
11
+ * if this is to be used with newrelic, then
12
+ * pass this (apm) as an option in the `createTelemetryMiddleware`
13
+ * function e.g createTelemetryMiddleware({ apm: () => require('newrelic'), ... })
14
+ * Note: don't forget to install newrelic agent in your project `yarn add newrelic`
15
+ */
16
+ apm: () => {},
66
17
  tracer: () => require('../opentelemetry')
67
18
  };
68
19
  function createTelemetryMiddleware(options) {
@@ -82,10 +33,6 @@ function createTelemetryMiddleware(options) {
82
33
  return next => (request, response) => {
83
34
  const nextRequest = {
84
35
  ...request,
85
- headers: {
86
- ...request.headers,
87
- 'User-Agent': `typescript-sdk-newrelic-middleware-${packageJson.version}`
88
- },
89
36
  ...options
90
37
  };
91
38
  next(nextRequest, response);
@@ -1,64 +1,15 @@
1
- var packageJson = {
2
- name: "@commercetools/ts-sdk-apm",
3
- version: "1.0.1",
4
- description: "commercetools typescript SDK application performance monitoring.",
5
- main: "dist/commercetools-ts-sdk-apm.cjs.js",
6
- module: "dist/commercetools-ts-sdk-apm.esm.js",
7
- author: "Chukwuemeka Ajima <meeky.ae@gmail.com>",
8
- license: "MIT",
9
- "private": false,
10
- dependencies: {
11
- "@opentelemetry/api": "^1.4.1",
12
- "@opentelemetry/auto-instrumentations-node": "^0.38.0",
13
- "@opentelemetry/exporter-metrics-otlp-http": "^0.41.0",
14
- "@opentelemetry/sdk-node": "^0.41.0",
15
- newrelic: "^10.0.0",
16
- uuid: "9.0.0"
17
- },
18
- publishConfig: {
19
- access: "public"
20
- },
21
- engines: {
22
- node: ">=14"
23
- },
24
- keywords: [
25
- "commercetools",
26
- "composable commerce",
27
- "typescript",
28
- "sdk",
29
- "apm",
30
- "telemetry",
31
- "opentelemetry",
32
- "tracing"
33
- ],
34
- homepage: "https://github.com/commercetools/commercetools-typescript-sdks",
35
- bugs: "https://github.com/commercetools/commercetools-typescript-sdks/issues",
36
- repository: {
37
- type: "git",
38
- url: "https://github.com/commercetools/commercetools-typescript-sdks.git"
39
- },
40
- files: [
41
- "dist",
42
- "CHANGELOG.md",
43
- "opentelemetry.js"
44
- ],
45
- browser: {
46
- "./dist/commercetools-ts-sdk-apm.cjs.js": "./dist/commercetools-ts-sdk-apm.browser.cjs.js",
47
- "./dist/commercetools-ts-sdk-apm.esm.js": "./dist/commercetools-ts-sdk-apm.browser.esm.js"
48
- },
49
- scripts: {
50
- organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
51
- postbuild: "yarn organize_imports",
52
- post_process_generate: "yarn organize_imports"
53
- }
54
- };
55
-
56
1
  /**
57
2
  * default newrelic APM and
58
3
  * opentelemetry tracer modules
59
4
  */
60
5
  const defaultOptions = {
61
- apm: () => require('newrelic'),
6
+ /**
7
+ * if this is to be used with newrelic, then
8
+ * pass this (apm) as an option in the `createTelemetryMiddleware`
9
+ * function e.g createTelemetryMiddleware({ apm: () => require('newrelic'), ... })
10
+ * Note: don't forget to install newrelic agent in your project `yarn add newrelic`
11
+ */
12
+ apm: () => {},
62
13
  tracer: () => require('../opentelemetry')
63
14
  };
64
15
  function createTelemetryMiddleware(options) {
@@ -78,10 +29,6 @@ function createTelemetryMiddleware(options) {
78
29
  return next => (request, response) => {
79
30
  const nextRequest = {
80
31
  ...request,
81
- headers: {
82
- ...request.headers,
83
- 'User-Agent': `typescript-sdk-newrelic-middleware-${packageJson.version}`
84
- },
85
32
  ...options
86
33
  };
87
34
  next(nextRequest, response);
@@ -95,8 +95,9 @@ export type MethodType =
95
95
  | 'UNSUBSCRIBE'
96
96
 
97
97
  export type TelemetryMiddlewareOptions = {
98
- apm?: Function,
99
- tracer?: Function,
98
+ apm?: Function;
99
+ tracer?: Function;
100
+ userAgent?: string;
100
101
  createTelemetryMiddleware: (options?: OTelemetryMiddlewareOptions) => Middleware
101
102
  }
102
103
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commercetools/ts-sdk-apm",
3
- "version": "1.0.1",
3
+ "version": "2.0.0",
4
4
  "description": "commercetools typescript SDK application performance monitoring.",
5
5
  "main": "dist/commercetools-ts-sdk-apm.cjs.js",
6
6
  "module": "dist/commercetools-ts-sdk-apm.esm.js",
@@ -12,7 +12,6 @@
12
12
  "@opentelemetry/auto-instrumentations-node": "^0.38.0",
13
13
  "@opentelemetry/exporter-metrics-otlp-http": "^0.41.0",
14
14
  "@opentelemetry/sdk-node": "^0.41.0",
15
- "newrelic": "^10.0.0",
16
15
  "uuid": "9.0.0"
17
16
  },
18
17
  "publishConfig": {
@@ -37,7 +36,13 @@
37
36
  "type": "git",
38
37
  "url": "https://github.com/commercetools/commercetools-typescript-sdks.git"
39
38
  },
40
- "files": ["dist", "CHANGELOG.md", "opentelemetry.js"],
39
+ "files": [
40
+ "dist",
41
+ "CHANGELOG.md",
42
+ "LICENSE",
43
+ "opentelemetry.js",
44
+ "package.json"
45
+ ],
41
46
  "browser": {
42
47
  "./dist/commercetools-ts-sdk-apm.cjs.js": "./dist/commercetools-ts-sdk-apm.browser.cjs.js",
43
48
  "./dist/commercetools-ts-sdk-apm.esm.js": "./dist/commercetools-ts-sdk-apm.browser.esm.js"