@vendure/sentry-plugin 3.4.3-master-202509260228 → 3.5.0-minor-202509261210
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/{lib → dist}/index.js +1 -1
- package/dist/index.js.map +1 -0
- package/dist/instrument.d.ts +1 -0
- package/dist/instrument.js +66 -0
- package/dist/instrument.js.map +1 -0
- package/{lib → dist}/src/api/admin-test.resolver.js +2 -1
- package/dist/src/api/admin-test.resolver.js.map +1 -0
- package/{lib → dist}/src/sentry-plugin.d.ts +34 -15
- package/{lib → dist}/src/sentry-plugin.js +35 -20
- package/dist/src/sentry-plugin.js.map +1 -0
- package/dist/src/sentry.service.d.ts +25 -0
- package/{lib → dist}/src/sentry.service.js +17 -13
- package/dist/src/sentry.service.js.map +1 -0
- package/dist/src/types.d.ts +14 -0
- package/package.json +21 -11
- package/lib/index.js.map +0 -1
- package/lib/src/api/admin-test.resolver.js.map +0 -1
- package/lib/src/sentry-apollo-plugin.d.ts +0 -11
- package/lib/src/sentry-apollo-plugin.js +0 -51
- package/lib/src/sentry-apollo-plugin.js.map +0 -1
- package/lib/src/sentry-context.middleware.d.ts +0 -10
- package/lib/src/sentry-context.middleware.js +0 -41
- package/lib/src/sentry-context.middleware.js.map +0 -1
- package/lib/src/sentry-plugin.js.map +0 -1
- package/lib/src/sentry.service.d.ts +0 -13
- package/lib/src/sentry.service.js.map +0 -1
- package/lib/src/types.d.ts +0 -23
- package/{lib → dist}/index.d.ts +1 -1
- /package/{lib → dist}/src/api/admin-test.resolver.d.ts +0 -0
- /package/{lib → dist}/src/api/api-extensions.d.ts +0 -0
- /package/{lib → dist}/src/api/api-extensions.js +0 -0
- /package/{lib → dist}/src/api/api-extensions.js.map +0 -0
- /package/{lib → dist}/src/api/error-test.service.d.ts +0 -0
- /package/{lib → dist}/src/api/error-test.service.js +0 -0
- /package/{lib → dist}/src/api/error-test.service.js.map +0 -0
- /package/{lib → dist}/src/constants.d.ts +0 -0
- /package/{lib → dist}/src/constants.js +0 -0
- /package/{lib → dist}/src/constants.js.map +0 -0
- /package/{lib → dist}/src/sentry-error-handler-strategy.d.ts +0 -0
- /package/{lib → dist}/src/sentry-error-handler-strategy.js +0 -0
- /package/{lib → dist}/src/sentry-error-handler-strategy.js.map +0 -0
- /package/{lib → dist}/src/types.js +0 -0
- /package/{lib → dist}/src/types.js.map +0 -0
package/{lib → dist}/index.js
RENAMED
|
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./src/constants"), exports);
|
|
17
18
|
__exportStar(require("./src/sentry-plugin"), exports);
|
|
18
19
|
__exportStar(require("./src/sentry.service"), exports);
|
|
19
20
|
__exportStar(require("./src/types"), exports);
|
|
20
|
-
__exportStar(require("./src/constants"), exports);
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,sDAAoC;AACpC,uDAAqC;AACrC,8CAA4B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const Sentry = __importStar(require("@sentry/nestjs"));
|
|
37
|
+
const profiling_node_1 = require("@sentry/profiling-node");
|
|
38
|
+
const SENTRY_DSN = process.env.SENTRY_DSN;
|
|
39
|
+
const SENTRY_TRACES_SAMPLE_RATE = process.env.SENTRY_TRACES_SAMPLE_RATE
|
|
40
|
+
? Number(process.env.SENTRY_TRACES_SAMPLE_RATE)
|
|
41
|
+
: undefined;
|
|
42
|
+
const SENTRY_PROFILES_SAMPLE_RATE = process.env.SENTRY_PROFILES_SAMPLE_RATE
|
|
43
|
+
? Number(process.env.SENTRY_PROFILES_SAMPLE_RATE)
|
|
44
|
+
: undefined;
|
|
45
|
+
if (!SENTRY_DSN) {
|
|
46
|
+
throw new Error('SENTRY_DSN is not set');
|
|
47
|
+
}
|
|
48
|
+
Sentry.init({
|
|
49
|
+
dsn: SENTRY_DSN,
|
|
50
|
+
integrations: [(0, profiling_node_1.nodeProfilingIntegration)()],
|
|
51
|
+
/**
|
|
52
|
+
* @description
|
|
53
|
+
* The sample rate for tracing. Value should be between 0 and 1.
|
|
54
|
+
* By default, tracing is disabled.
|
|
55
|
+
* @default undefined
|
|
56
|
+
*/
|
|
57
|
+
tracesSampleRate: SENTRY_TRACES_SAMPLE_RATE,
|
|
58
|
+
/**
|
|
59
|
+
* @description
|
|
60
|
+
* The sample rate for profiling. Value should be between 0 and 1.
|
|
61
|
+
* By default, profiling is disabled.
|
|
62
|
+
* @default undefined
|
|
63
|
+
*/
|
|
64
|
+
profilesSampleRate: SENTRY_PROFILES_SAMPLE_RATE,
|
|
65
|
+
});
|
|
66
|
+
//# sourceMappingURL=instrument.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrument.js","sourceRoot":"","sources":["../instrument.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAyC;AACzC,2DAAkE;AAElE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;AAC1C,MAAM,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB;IACnE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAC/C,CAAC,CAAC,SAAS,CAAC;AAChB,MAAM,2BAA2B,GAAG,OAAO,CAAC,GAAG,CAAC,2BAA2B;IACvE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;IACjD,CAAC,CAAC,SAAS,CAAC;AAEhB,IAAI,CAAC,UAAU,EAAE,CAAC;IACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,CAAC,IAAI,CAAC;IACR,GAAG,EAAE,UAAU;IACf,YAAY,EAAE,CAAC,IAAA,yCAAwB,GAAE,CAAC;IAC1C;;;;;OAKG;IACH,gBAAgB,EAAE,yBAAyB;IAC3C;;;;;OAKG;IACH,kBAAkB,EAAE,2BAA2B;CAClD,CAAC,CAAC"}
|
|
@@ -51,6 +51,7 @@ __decorate([
|
|
|
51
51
|
], SentryAdminTestResolver.prototype, "createTestError", null);
|
|
52
52
|
exports.SentryAdminTestResolver = SentryAdminTestResolver = __decorate([
|
|
53
53
|
(0, graphql_1.Resolver)(),
|
|
54
|
-
__metadata("design:paramtypes", [sentry_service_1.SentryService,
|
|
54
|
+
__metadata("design:paramtypes", [sentry_service_1.SentryService,
|
|
55
|
+
error_test_service_1.ErrorTestService])
|
|
55
56
|
], SentryAdminTestResolver);
|
|
56
57
|
//# sourceMappingURL=admin-test.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-test.resolver.js","sourceRoot":"","sources":["../../../src/api/admin-test.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAA2D;AAC3D,wCAAkE;AAElE,sDAAkD;AAElD,6DAAwD;AAKjD,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAChC,YACY,aAA4B,EAC5B,gBAAkC;QADlC,kBAAa,GAAb,aAAa,CAAe;QAC5B,qBAAgB,GAAhB,gBAAgB,CAAkB;IAC3C,CAAC;IAIE,AAAN,KAAK,CAAC,eAAe,CAAS,IAA2B;QACrD,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,KAAK,gBAAgB;gBACjB,OAAO,CAAC,GAAG,EAAE,CAAC;YAClB,KAAK,cAAc;gBACf,MAAM,IAAI,qBAAc,CAAC,yBAAyB,CAAC,CAAC;YACxD,KAAK,gBAAgB;gBACjB,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;gBAC5E,OAAO,IAAI,CAAC;YAChB,KAAK,kBAAkB;gBACnB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;gBACtD,OAAO,IAAI,CAAC;YAChB,KAAK,gBAAgB;gBACjB,MAAM,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC;QACpB,CAAC;IACL,CAAC;CACJ,CAAA;AAzBY,0DAAuB;AAQ1B;IAFL,IAAA,YAAK,EAAC,iBAAU,CAAC,UAAU,CAAC;IAC5B,IAAA,kBAAQ,GAAE;IACY,WAAA,IAAA,cAAI,GAAE,CAAA;;;;8DAgB5B;kCAxBQ,uBAAuB;IADnC,IAAA,kBAAQ,GAAE;qCAGoB,8BAAa;QACV,qCAAgB;GAHrC,uBAAuB,CAyBnC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { MiddlewareConsumer, NestModule } from '@nestjs/common';
|
|
2
1
|
import { SentryPluginOptions } from './types';
|
|
3
2
|
/**
|
|
4
3
|
* @description
|
|
@@ -19,15 +18,30 @@ import { SentryPluginOptions } from './types';
|
|
|
19
18
|
*
|
|
20
19
|
* ## Installation
|
|
21
20
|
*
|
|
22
|
-
* Install this plugin as well as the `@sentry/node` package:
|
|
23
|
-
*
|
|
24
21
|
* ```sh
|
|
25
|
-
* npm install --save \@vendure/sentry-plugin
|
|
22
|
+
* npm install --save \@vendure/sentry-plugin
|
|
26
23
|
* ```
|
|
27
24
|
*
|
|
28
25
|
* ## Configuration
|
|
29
26
|
*
|
|
30
|
-
*
|
|
27
|
+
* Setting up the Sentry plugin requires two steps:
|
|
28
|
+
*
|
|
29
|
+
* ### Step 1: Preload the Sentry instrument file
|
|
30
|
+
*
|
|
31
|
+
* The Sentry SDK must be initialized before your application starts. This is done by preloading
|
|
32
|
+
* the instrument file when starting your Vendure server:
|
|
33
|
+
*
|
|
34
|
+
* ```sh
|
|
35
|
+
* node --import \@vendure/sentry-plugin/instrument ./dist/index.js
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* Or if using TypeScript directly with tsx:
|
|
39
|
+
*
|
|
40
|
+
* ```sh
|
|
41
|
+
* tsx --import \@vendure/sentry-plugin/instrument ./src/index.ts
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* ### Step 2: Add the SentryPlugin to your Vendure config
|
|
31
45
|
*
|
|
32
46
|
* ```ts
|
|
33
47
|
* import { VendureConfig } from '\@vendure/core';
|
|
@@ -39,13 +53,8 @@ import { SentryPluginOptions } from './types';
|
|
|
39
53
|
* // ...
|
|
40
54
|
* // highlight-start
|
|
41
55
|
* SentryPlugin.init({
|
|
42
|
-
* dsn: process.env.SENTRY_DSN,
|
|
43
56
|
* // Optional configuration
|
|
44
57
|
* includeErrorTestMutation: true,
|
|
45
|
-
* enableTracing: true,
|
|
46
|
-
* // you can also pass in any of the options from \@sentry/node
|
|
47
|
-
* // for instance:
|
|
48
|
-
* tracesSampleRate: 1.0,
|
|
49
58
|
* }),
|
|
50
59
|
* // highlight-end
|
|
51
60
|
* ],
|
|
@@ -54,13 +63,24 @@ import { SentryPluginOptions } from './types';
|
|
|
54
63
|
*
|
|
55
64
|
* ## Tracing
|
|
56
65
|
*
|
|
57
|
-
* This plugin includes built-in support for [tracing](https://docs.sentry.io/product/sentry-basics/concepts/tracing/), which allows you to see the performance of your
|
|
58
|
-
*
|
|
66
|
+
* This plugin includes built-in support for [tracing](https://docs.sentry.io/product/sentry-basics/concepts/tracing/), which allows you to see the performance of your.
|
|
67
|
+
* To enable tracing, preload the instrument file as described in [Step 1](#step-1-preload-the-sentry-instrument-file).
|
|
68
|
+
* This make sure that the Sentry SDK is initialized before any other code is executed.
|
|
69
|
+
*
|
|
70
|
+
* You can also set the `tracesSampleRate` and `profilesSampleRate` options to control the sample rate for
|
|
71
|
+
* tracing and profiling, with the following environment variables:
|
|
72
|
+
*
|
|
73
|
+
* - `SENTRY_TRACES_SAMPLE_RATE`
|
|
74
|
+
* - `SENTRY_PROFILES_SAMPLE_RATE`
|
|
75
|
+
*
|
|
76
|
+
* The sample rate for tracing should be between 0 and 1. The sample rate for profiling should be between 0 and 1.
|
|
77
|
+
*
|
|
78
|
+
* By default, both are set to `undefined`, which means that tracing and profiling are disabled.
|
|
59
79
|
*
|
|
60
80
|
* ## Instrumenting your own code
|
|
61
81
|
*
|
|
62
82
|
* You may want to add your own custom spans to your code. To do so, you can use the `Sentry` object
|
|
63
|
-
*
|
|
83
|
+
* from the `\@sentry/node` package. For example:
|
|
64
84
|
*
|
|
65
85
|
* ```ts
|
|
66
86
|
* import * as Sentry from "\@sentry/node";
|
|
@@ -89,8 +109,7 @@ import { SentryPluginOptions } from './types';
|
|
|
89
109
|
*
|
|
90
110
|
* @docsCategory core plugins/SentryPlugin
|
|
91
111
|
*/
|
|
92
|
-
export declare class SentryPlugin
|
|
112
|
+
export declare class SentryPlugin {
|
|
93
113
|
static options: SentryPluginOptions;
|
|
94
|
-
configure(consumer: MiddlewareConsumer): any;
|
|
95
114
|
static init(options: SentryPluginOptions): typeof SentryPlugin;
|
|
96
115
|
}
|
|
@@ -7,13 +7,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.SentryPlugin = void 0;
|
|
10
|
+
const setup_1 = require("@sentry/nestjs/setup");
|
|
10
11
|
const core_1 = require("@vendure/core");
|
|
11
12
|
const admin_test_resolver_1 = require("./api/admin-test.resolver");
|
|
12
13
|
const api_extensions_1 = require("./api/api-extensions");
|
|
13
14
|
const error_test_service_1 = require("./api/error-test.service");
|
|
14
15
|
const constants_1 = require("./constants");
|
|
15
|
-
const sentry_apollo_plugin_1 = require("./sentry-apollo-plugin");
|
|
16
|
-
const sentry_context_middleware_1 = require("./sentry-context.middleware");
|
|
17
16
|
const sentry_error_handler_strategy_1 = require("./sentry-error-handler-strategy");
|
|
18
17
|
const sentry_service_1 = require("./sentry.service");
|
|
19
18
|
const SentryOptionsProvider = {
|
|
@@ -39,15 +38,30 @@ const SentryOptionsProvider = {
|
|
|
39
38
|
*
|
|
40
39
|
* ## Installation
|
|
41
40
|
*
|
|
42
|
-
* Install this plugin as well as the `@sentry/node` package:
|
|
43
|
-
*
|
|
44
41
|
* ```sh
|
|
45
|
-
* npm install --save \@vendure/sentry-plugin
|
|
42
|
+
* npm install --save \@vendure/sentry-plugin
|
|
46
43
|
* ```
|
|
47
44
|
*
|
|
48
45
|
* ## Configuration
|
|
49
46
|
*
|
|
50
|
-
*
|
|
47
|
+
* Setting up the Sentry plugin requires two steps:
|
|
48
|
+
*
|
|
49
|
+
* ### Step 1: Preload the Sentry instrument file
|
|
50
|
+
*
|
|
51
|
+
* The Sentry SDK must be initialized before your application starts. This is done by preloading
|
|
52
|
+
* the instrument file when starting your Vendure server:
|
|
53
|
+
*
|
|
54
|
+
* ```sh
|
|
55
|
+
* node --import \@vendure/sentry-plugin/instrument ./dist/index.js
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* Or if using TypeScript directly with tsx:
|
|
59
|
+
*
|
|
60
|
+
* ```sh
|
|
61
|
+
* tsx --import \@vendure/sentry-plugin/instrument ./src/index.ts
|
|
62
|
+
* ```
|
|
63
|
+
*
|
|
64
|
+
* ### Step 2: Add the SentryPlugin to your Vendure config
|
|
51
65
|
*
|
|
52
66
|
* ```ts
|
|
53
67
|
* import { VendureConfig } from '\@vendure/core';
|
|
@@ -59,13 +73,8 @@ const SentryOptionsProvider = {
|
|
|
59
73
|
* // ...
|
|
60
74
|
* // highlight-start
|
|
61
75
|
* SentryPlugin.init({
|
|
62
|
-
* dsn: process.env.SENTRY_DSN,
|
|
63
76
|
* // Optional configuration
|
|
64
77
|
* includeErrorTestMutation: true,
|
|
65
|
-
* enableTracing: true,
|
|
66
|
-
* // you can also pass in any of the options from \@sentry/node
|
|
67
|
-
* // for instance:
|
|
68
|
-
* tracesSampleRate: 1.0,
|
|
69
78
|
* }),
|
|
70
79
|
* // highlight-end
|
|
71
80
|
* ],
|
|
@@ -74,13 +83,24 @@ const SentryOptionsProvider = {
|
|
|
74
83
|
*
|
|
75
84
|
* ## Tracing
|
|
76
85
|
*
|
|
77
|
-
* This plugin includes built-in support for [tracing](https://docs.sentry.io/product/sentry-basics/concepts/tracing/), which allows you to see the performance of your
|
|
78
|
-
*
|
|
86
|
+
* This plugin includes built-in support for [tracing](https://docs.sentry.io/product/sentry-basics/concepts/tracing/), which allows you to see the performance of your.
|
|
87
|
+
* To enable tracing, preload the instrument file as described in [Step 1](#step-1-preload-the-sentry-instrument-file).
|
|
88
|
+
* This make sure that the Sentry SDK is initialized before any other code is executed.
|
|
89
|
+
*
|
|
90
|
+
* You can also set the `tracesSampleRate` and `profilesSampleRate` options to control the sample rate for
|
|
91
|
+
* tracing and profiling, with the following environment variables:
|
|
92
|
+
*
|
|
93
|
+
* - `SENTRY_TRACES_SAMPLE_RATE`
|
|
94
|
+
* - `SENTRY_PROFILES_SAMPLE_RATE`
|
|
95
|
+
*
|
|
96
|
+
* The sample rate for tracing should be between 0 and 1. The sample rate for profiling should be between 0 and 1.
|
|
97
|
+
*
|
|
98
|
+
* By default, both are set to `undefined`, which means that tracing and profiling are disabled.
|
|
79
99
|
*
|
|
80
100
|
* ## Instrumenting your own code
|
|
81
101
|
*
|
|
82
102
|
* You may want to add your own custom spans to your code. To do so, you can use the `Sentry` object
|
|
83
|
-
*
|
|
103
|
+
* from the `\@sentry/node` package. For example:
|
|
84
104
|
*
|
|
85
105
|
* ```ts
|
|
86
106
|
* import * as Sentry from "\@sentry/node";
|
|
@@ -110,9 +130,6 @@ const SentryOptionsProvider = {
|
|
|
110
130
|
* @docsCategory core plugins/SentryPlugin
|
|
111
131
|
*/
|
|
112
132
|
let SentryPlugin = class SentryPlugin {
|
|
113
|
-
configure(consumer) {
|
|
114
|
-
consumer.apply(sentry_context_middleware_1.SentryContextMiddleware).forRoutes('*');
|
|
115
|
-
}
|
|
116
133
|
static init(options) {
|
|
117
134
|
this.options = options;
|
|
118
135
|
return this;
|
|
@@ -125,10 +142,8 @@ exports.SentryPlugin = SentryPlugin = __decorate([
|
|
|
125
142
|
imports: [core_1.PluginCommonModule],
|
|
126
143
|
providers: [SentryOptionsProvider, sentry_service_1.SentryService, error_test_service_1.ErrorTestService],
|
|
127
144
|
configuration: config => {
|
|
128
|
-
config.apiOptions.apolloServerPlugins.push(new sentry_apollo_plugin_1.SentryApolloPlugin({
|
|
129
|
-
enableTracing: !!SentryPlugin.options.enableTracing,
|
|
130
|
-
}));
|
|
131
145
|
config.systemOptions.errorHandlers.push(new sentry_error_handler_strategy_1.SentryErrorHandlerStrategy());
|
|
146
|
+
config.plugins.push(setup_1.SentryModule.forRoot());
|
|
132
147
|
return config;
|
|
133
148
|
},
|
|
134
149
|
adminApiExtensions: {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sentry-plugin.js","sourceRoot":"","sources":["../../src/sentry-plugin.ts"],"names":[],"mappings":";;;;;;;;;AAAA,gDAAoD;AACpD,wCAAkE;AAElE,mEAAoE;AACpE,yDAAyD;AACzD,iEAA4D;AAC5D,2CAAoD;AACpD,mFAA6E;AAC7E,qDAAiD;AAGjD,MAAM,qBAAqB,GAAG;IAC1B,OAAO,EAAE,iCAAqB;IAC9B,UAAU,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO;CACzC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6GG;AAgBI,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGrB,MAAM,CAAC,IAAI,CAAC,OAA4B;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;;AANQ,oCAAY;AACd,oBAAO,GAAwB,EAAS,AAAjC,CAAkC;uBADvC,YAAY;IAfxB,IAAA,oBAAa,EAAC;QACX,OAAO,EAAE,CAAC,yBAAkB,CAAC;QAC7B,SAAS,EAAE,CAAC,qBAAqB,EAAE,8BAAa,EAAE,qCAAgB,CAAC;QACnE,aAAa,EAAE,MAAM,CAAC,EAAE;YACpB,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,0DAA0B,EAAE,CAAC,CAAC;YAC1E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAY,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,kBAAkB,EAAE;YAChB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,kCAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7F,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,6CAAuB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACpG;QACD,OAAO,EAAE,CAAC,8BAAa,CAAC;QACxB,aAAa,EAAE,QAAQ;KAC1B,CAAC;GACW,YAAY,CAOxB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { CaptureContext, StartSpanOptions } from '@sentry/core';
|
|
2
|
+
import * as Sentry from '@sentry/node';
|
|
3
|
+
import { SentryPluginOptions } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* @description
|
|
6
|
+
* Service for capturing errors and messages to Sentry.
|
|
7
|
+
* @docsCategory core plugins/SentryPlugin
|
|
8
|
+
*/
|
|
9
|
+
export declare class SentryService {
|
|
10
|
+
private options;
|
|
11
|
+
constructor(options: SentryPluginOptions);
|
|
12
|
+
captureException(exception: Error): void;
|
|
13
|
+
/**
|
|
14
|
+
* @description
|
|
15
|
+
* Captures a message
|
|
16
|
+
* @param message - The message to capture
|
|
17
|
+
* @param captureContext - The capture context
|
|
18
|
+
*/
|
|
19
|
+
captureMessage(message: string, captureContext?: CaptureContext): void;
|
|
20
|
+
/**
|
|
21
|
+
* @description
|
|
22
|
+
* Starts new span
|
|
23
|
+
*/
|
|
24
|
+
startSpan(context: StartSpanOptions): Sentry.Span;
|
|
25
|
+
}
|
|
@@ -49,29 +49,33 @@ exports.SentryService = void 0;
|
|
|
49
49
|
const common_1 = require("@nestjs/common");
|
|
50
50
|
const Sentry = __importStar(require("@sentry/node"));
|
|
51
51
|
const constants_1 = require("./constants");
|
|
52
|
+
/**
|
|
53
|
+
* @description
|
|
54
|
+
* Service for capturing errors and messages to Sentry.
|
|
55
|
+
* @docsCategory core plugins/SentryPlugin
|
|
56
|
+
*/
|
|
52
57
|
let SentryService = class SentryService {
|
|
53
58
|
constructor(options) {
|
|
54
59
|
this.options = options;
|
|
55
60
|
}
|
|
56
|
-
onApplicationBootstrap() {
|
|
57
|
-
var _a, _b;
|
|
58
|
-
const integrations = (_a = this.options.integrations) !== null && _a !== void 0 ? _a : [
|
|
59
|
-
new Sentry.Integrations.Http({ tracing: true }),
|
|
60
|
-
...Sentry.autoDiscoverNodePerformanceMonitoringIntegrations(),
|
|
61
|
-
];
|
|
62
|
-
Sentry.init(Object.assign(Object.assign({}, this.options), { tracesSampleRate: (_b = this.options.tracesSampleRate) !== null && _b !== void 0 ? _b : 1.0, integrations, dsn: this.options.dsn }));
|
|
63
|
-
}
|
|
64
|
-
onApplicationShutdown() {
|
|
65
|
-
return Sentry.close();
|
|
66
|
-
}
|
|
67
61
|
captureException(exception) {
|
|
68
62
|
Sentry.captureException(exception);
|
|
69
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* @description
|
|
66
|
+
* Captures a message
|
|
67
|
+
* @param message - The message to capture
|
|
68
|
+
* @param captureContext - The capture context
|
|
69
|
+
*/
|
|
70
70
|
captureMessage(message, captureContext) {
|
|
71
71
|
Sentry.captureMessage(message, captureContext);
|
|
72
72
|
}
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
/**
|
|
74
|
+
* @description
|
|
75
|
+
* Starts new span
|
|
76
|
+
*/
|
|
77
|
+
startSpan(context) {
|
|
78
|
+
return Sentry.startSpanManual(context, span => span);
|
|
75
79
|
}
|
|
76
80
|
};
|
|
77
81
|
exports.SentryService = SentryService;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sentry.service.js","sourceRoot":"","sources":["../../src/sentry.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AAEpD,qDAAuC;AAEvC,2CAAoD;AAGpD;;;;GAIG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YAAmD,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;IAAG,CAAC;IAEnF,gBAAgB,CAAC,SAAgB;QAC7B,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,OAAe,EAAE,cAA+B;QAC3D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,OAAyB;QAC/B,OAAO,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;CACJ,CAAA;AAxBY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;IAEI,WAAA,IAAA,eAAM,EAAC,iCAAqB,CAAC,CAAA;;GADjC,aAAa,CAwBzB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description
|
|
3
|
+
* Configuration options for the {@link SentryPlugin}.
|
|
4
|
+
*
|
|
5
|
+
* @docsCategory core plugins/SentryPlugin
|
|
6
|
+
*/
|
|
7
|
+
export interface SentryPluginOptions {
|
|
8
|
+
/**
|
|
9
|
+
* @description
|
|
10
|
+
* Whether to include the error test mutation in the admin API.
|
|
11
|
+
* @default false
|
|
12
|
+
*/
|
|
13
|
+
includeErrorTestMutation?: boolean;
|
|
14
|
+
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vendure/sentry-plugin",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0-minor-202509261210",
|
|
4
4
|
"license": "GPL-3.0-or-later",
|
|
5
|
-
"main": "
|
|
6
|
-
"types": "
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
7
|
"files": [
|
|
8
|
-
"
|
|
8
|
+
"dist/**/*"
|
|
9
9
|
],
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"default": "./dist/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./instrument": {
|
|
16
|
+
"types": "./dist/instrument.d.ts",
|
|
17
|
+
"default": "./dist/instrument.js"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
10
20
|
"repository": {
|
|
11
21
|
"type": "git",
|
|
12
22
|
"url": "https://github.com/vendure-ecommerce/vendure"
|
|
@@ -21,13 +31,13 @@
|
|
|
21
31
|
"publishConfig": {
|
|
22
32
|
"access": "public"
|
|
23
33
|
},
|
|
24
|
-
"peerDependencies": {
|
|
25
|
-
"@sentry/node": "^7.106.1"
|
|
26
|
-
},
|
|
27
34
|
"devDependencies": {
|
|
28
|
-
"@
|
|
29
|
-
"@vendure/
|
|
30
|
-
|
|
35
|
+
"@vendure/common": "^3.5.0-minor-202509261210",
|
|
36
|
+
"@vendure/core": "^3.5.0-minor-202509261210"
|
|
37
|
+
},
|
|
38
|
+
"dependencies": {
|
|
39
|
+
"@sentry/nestjs": "^10.2.0",
|
|
40
|
+
"@sentry/profiling-node": "^10.2.0"
|
|
31
41
|
},
|
|
32
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "aa1c6971ebbd4954da1ce77fba1d6022051953db"
|
|
33
43
|
}
|
package/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,uDAAqC;AACrC,8CAA4B;AAC5B,kDAAgC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"admin-test.resolver.js","sourceRoot":"","sources":["../../../src/api/admin-test.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAA2D;AAC3D,wCAAkE;AAElE,sDAAkD;AAClD,6DAAwD;AAKjD,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAChC,YAAoB,aAA4B,EAAU,gBAAkC;QAAxE,kBAAa,GAAb,aAAa,CAAe;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAI1F,AAAN,KAAK,CAAC,eAAe,CAAS,IAA2B;QACrD,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,KAAK,gBAAgB;gBACjB,OAAO,CAAC,GAAG,EAAE,CAAC;YAClB,KAAK,cAAc;gBACf,MAAM,IAAI,qBAAc,CAAC,yBAAyB,CAAC,CAAC;YACxD,KAAK,gBAAgB;gBACjB,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;gBAC5E,OAAO,IAAI,CAAC;YAChB,KAAK,kBAAkB;gBACnB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;gBACtD,OAAO,IAAI,CAAC;YAChB,KAAK,gBAAgB;gBACjB,MAAM,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC;QACpB,CAAC;IACL,CAAC;CACJ,CAAA;AAtBY,0DAAuB;AAK1B;IAFL,IAAA,YAAK,EAAC,iBAAU,CAAC,UAAU,CAAC;IAC5B,IAAA,kBAAQ,GAAE;IACY,WAAA,IAAA,cAAI,GAAE,CAAA;;;;8DAgB5B;kCArBQ,uBAAuB;IADnC,IAAA,kBAAQ,GAAE;qCAE4B,8BAAa,EAA4B,qCAAgB;GADnF,uBAAuB,CAsBnC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ApolloServerPlugin, GraphQLRequestListener, GraphQLRequestContext } from '@apollo/server';
|
|
2
|
-
/**
|
|
3
|
-
* Based on https://github.com/ntegral/nestjs-sentry/issues/97#issuecomment-1252446807
|
|
4
|
-
*/
|
|
5
|
-
export declare class SentryApolloPlugin implements ApolloServerPlugin {
|
|
6
|
-
private options;
|
|
7
|
-
constructor(options: {
|
|
8
|
-
enableTracing: boolean;
|
|
9
|
-
});
|
|
10
|
-
requestDidStart({ request, contextValue, }: GraphQLRequestContext<any>): Promise<GraphQLRequestListener<any>>;
|
|
11
|
-
}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SentryApolloPlugin = void 0;
|
|
4
|
-
const node_1 = require("@sentry/node");
|
|
5
|
-
const constants_1 = require("./constants");
|
|
6
|
-
/**
|
|
7
|
-
* Based on https://github.com/ntegral/nestjs-sentry/issues/97#issuecomment-1252446807
|
|
8
|
-
*/
|
|
9
|
-
class SentryApolloPlugin {
|
|
10
|
-
constructor(options) {
|
|
11
|
-
this.options = options;
|
|
12
|
-
}
|
|
13
|
-
async requestDidStart({ request, contextValue, }) {
|
|
14
|
-
const { enableTracing } = this.options;
|
|
15
|
-
const transaction = contextValue.req[constants_1.SENTRY_TRANSACTION_KEY];
|
|
16
|
-
if (request.operationName) {
|
|
17
|
-
if (enableTracing) {
|
|
18
|
-
// set the transaction Name if we have named queries
|
|
19
|
-
transaction === null || transaction === void 0 ? void 0 : transaction.setName(request.operationName);
|
|
20
|
-
}
|
|
21
|
-
(0, node_1.setContext)('Graphql Request', {
|
|
22
|
-
operation_name: request.operationName,
|
|
23
|
-
variables: request.variables,
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
return {
|
|
27
|
-
// hook for transaction finished
|
|
28
|
-
async willSendResponse(context) {
|
|
29
|
-
transaction === null || transaction === void 0 ? void 0 : transaction.finish();
|
|
30
|
-
},
|
|
31
|
-
async executionDidStart() {
|
|
32
|
-
return {
|
|
33
|
-
// hook for each new resolver
|
|
34
|
-
willResolveField({ info }) {
|
|
35
|
-
if (enableTracing) {
|
|
36
|
-
const span = transaction === null || transaction === void 0 ? void 0 : transaction.startChild({
|
|
37
|
-
op: 'resolver',
|
|
38
|
-
description: `${info.parentType.name}.${info.fieldName}`,
|
|
39
|
-
});
|
|
40
|
-
return () => {
|
|
41
|
-
span === null || span === void 0 ? void 0 : span.finish();
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
};
|
|
46
|
-
},
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.SentryApolloPlugin = SentryApolloPlugin;
|
|
51
|
-
//# sourceMappingURL=sentry-apollo-plugin.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sentry-apollo-plugin.js","sourceRoot":"","sources":["../../src/sentry-apollo-plugin.ts"],"names":[],"mappings":";;;AAEA,uCAAuD;AAEvD,2CAAqD;AAErD;;GAEG;AACH,MAAa,kBAAkB;IAC3B,YAAoB,OAAmC;QAAnC,YAAO,GAAP,OAAO,CAA4B;IAAG,CAAC;IAE3D,KAAK,CAAC,eAAe,CAAC,EAClB,OAAO,EACP,YAAY,GACa;QACzB,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACvC,MAAM,WAAW,GAA4B,YAAY,CAAC,GAAG,CAAC,kCAAsB,CAAC,CAAC;QACtF,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,aAAa,EAAE,CAAC;gBAChB,oDAAoD;gBACpD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAChD,CAAC;YACD,IAAA,iBAAU,EAAC,iBAAiB,EAAE;gBAC1B,cAAc,EAAE,OAAO,CAAC,aAAa;gBACrC,SAAS,EAAE,OAAO,CAAC,SAAS;aAC/B,CAAC,CAAC;QACP,CAAC;QAED,OAAO;YACH,gCAAgC;YAChC,KAAK,CAAC,gBAAgB,CAAC,OAAO;gBAC1B,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,EAAE,CAAC;YAC1B,CAAC;YACD,KAAK,CAAC,iBAAiB;gBACnB,OAAO;oBACH,6BAA6B;oBAC7B,gBAAgB,CAAC,EAAE,IAAI,EAAE;wBACrB,IAAI,aAAa,EAAE,CAAC;4BAChB,MAAM,IAAI,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,CAAC;gCACjC,EAAE,EAAE,UAAU;gCACd,WAAW,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;6BAC3D,CAAC,CAAC;4BACH,OAAO,GAAG,EAAE;gCACR,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAC;4BACnB,CAAC,CAAC;wBACN,CAAC;oBACL,CAAC;iBACJ,CAAC;YACN,CAAC;SACJ,CAAC;IACN,CAAC;CACJ;AA3CD,gDA2CC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { NestMiddleware } from '@nestjs/common';
|
|
2
|
-
import { Request, Response, NextFunction } from 'express';
|
|
3
|
-
import { SentryService } from './sentry.service';
|
|
4
|
-
import { SentryPluginOptions } from './types';
|
|
5
|
-
export declare class SentryContextMiddleware implements NestMiddleware {
|
|
6
|
-
private options;
|
|
7
|
-
private sentryService;
|
|
8
|
-
constructor(options: SentryPluginOptions, sentryService: SentryService);
|
|
9
|
-
use(req: Request, res: Response, next: NextFunction): void;
|
|
10
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.SentryContextMiddleware = void 0;
|
|
16
|
-
const common_1 = require("@nestjs/common");
|
|
17
|
-
const constants_1 = require("./constants");
|
|
18
|
-
const sentry_service_1 = require("./sentry.service");
|
|
19
|
-
let SentryContextMiddleware = class SentryContextMiddleware {
|
|
20
|
-
constructor(options, sentryService) {
|
|
21
|
-
this.options = options;
|
|
22
|
-
this.sentryService = sentryService;
|
|
23
|
-
}
|
|
24
|
-
use(req, res, next) {
|
|
25
|
-
if (this.options.enableTracing) {
|
|
26
|
-
const transaction = this.sentryService.startTransaction({
|
|
27
|
-
op: 'resolver',
|
|
28
|
-
name: `GraphQLTransaction`,
|
|
29
|
-
});
|
|
30
|
-
req[constants_1.SENTRY_TRANSACTION_KEY] = transaction;
|
|
31
|
-
}
|
|
32
|
-
next();
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
exports.SentryContextMiddleware = SentryContextMiddleware;
|
|
36
|
-
exports.SentryContextMiddleware = SentryContextMiddleware = __decorate([
|
|
37
|
-
(0, common_1.Injectable)(),
|
|
38
|
-
__param(0, (0, common_1.Inject)(constants_1.SENTRY_PLUGIN_OPTIONS)),
|
|
39
|
-
__metadata("design:paramtypes", [Object, sentry_service_1.SentryService])
|
|
40
|
-
], SentryContextMiddleware);
|
|
41
|
-
//# sourceMappingURL=sentry-context.middleware.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sentry-context.middleware.js","sourceRoot":"","sources":["../../src/sentry-context.middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoE;AAGpE,2CAA4E;AAC5E,qDAAiD;AAI1C,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAChC,YAC2C,OAA4B,EAC3D,aAA4B;QADG,YAAO,GAAP,OAAO,CAAqB;QAC3D,kBAAa,GAAb,aAAa,CAAe;IACrC,CAAC;IAEJ,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;QAC/C,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;gBACpD,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,oBAAoB;aAC7B,CAAC,CAAC;YACH,GAAG,CAAC,kCAAsB,CAAC,GAAG,WAAW,CAAC;QAC9C,CAAC;QACD,IAAI,EAAE,CAAC;IACX,CAAC;CACJ,CAAA;AAhBY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;IAGJ,WAAA,IAAA,eAAM,EAAC,iCAAqB,CAAC,CAAA;6CACP,8BAAa;GAH/B,uBAAuB,CAgBnC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sentry-plugin.js","sourceRoot":"","sources":["../../src/sentry-plugin.ts"],"names":[],"mappings":";;;;;;;;;AACA,wCAAkE;AAElE,mEAAoE;AACpE,yDAAyD;AACzD,iEAA4D;AAC5D,2CAAoD;AACpD,iEAA4D;AAC5D,2EAAsE;AACtE,mFAA6E;AAC7E,qDAAiD;AAGjD,MAAM,qBAAqB,GAAG;IAC1B,OAAO,EAAE,iCAAqB;IAC9B,UAAU,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO;CACzC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwFG;AAoBI,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGrB,SAAS,CAAC,QAA4B;QAClC,QAAQ,CAAC,KAAK,CAAC,mDAAuB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,OAA4B;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;;AAVQ,oCAAY;AACd,oBAAO,GAAwB,EAAS,AAAjC,CAAkC;uBADvC,YAAY;IAnBxB,IAAA,oBAAa,EAAC;QACX,OAAO,EAAE,CAAC,yBAAkB,CAAC;QAC7B,SAAS,EAAE,CAAC,qBAAqB,EAAE,8BAAa,EAAE,qCAAgB,CAAC;QACnE,aAAa,EAAE,MAAM,CAAC,EAAE;YACpB,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CACtC,IAAI,yCAAkB,CAAC;gBACnB,aAAa,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa;aACtD,CAAC,CACL,CAAC;YACF,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,0DAA0B,EAAE,CAAC,CAAC;YAC1E,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,kBAAkB,EAAE;YAChB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,kCAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7F,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,6CAAuB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACpG;QACD,OAAO,EAAE,CAAC,8BAAa,CAAC;QACxB,aAAa,EAAE,QAAQ;KAC1B,CAAC;GACW,YAAY,CAWxB"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { OnApplicationBootstrap, OnApplicationShutdown } from '@nestjs/common';
|
|
2
|
-
import * as Sentry from '@sentry/node';
|
|
3
|
-
import { CaptureContext, TransactionContext } from '@sentry/types';
|
|
4
|
-
import { SentryPluginOptions } from './types';
|
|
5
|
-
export declare class SentryService implements OnApplicationBootstrap, OnApplicationShutdown {
|
|
6
|
-
private options;
|
|
7
|
-
constructor(options: SentryPluginOptions);
|
|
8
|
-
onApplicationBootstrap(): any;
|
|
9
|
-
onApplicationShutdown(): Promise<boolean>;
|
|
10
|
-
captureException(exception: Error): void;
|
|
11
|
-
captureMessage(message: string, captureContext?: CaptureContext): void;
|
|
12
|
-
startTransaction(context: TransactionContext): Sentry.Transaction;
|
|
13
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sentry.service.js","sourceRoot":"","sources":["../../src/sentry.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAmG;AACnG,qDAAuC;AAGvC,2CAAoD;AAI7C,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YAAmD,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;IAAG,CAAC;IAEnF,sBAAsB;;QAClB,MAAM,YAAY,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,YAAY,mCAAI;YAC9C,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC/C,GAAG,MAAM,CAAC,iDAAiD,EAAE;SAChE,CAAC;QACF,MAAM,CAAC,IAAI,iCACJ,IAAI,CAAC,OAAO,KACf,gBAAgB,EAAE,MAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,mCAAI,GAAG,EACtD,YAAY,EACZ,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IACvB,CAAC;IACP,CAAC;IAED,qBAAqB;QACjB,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB,CAAC,SAAgB;QAC7B,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,cAAc,CAAC,OAAe,EAAE,cAA+B;QAC3D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB,CAAC,OAA2B;QACxC,OAAO,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;CACJ,CAAA;AA/BY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;IAEI,WAAA,IAAA,eAAM,EAAC,iCAAqB,CAAC,CAAA;;GADjC,aAAa,CA+BzB"}
|
package/lib/src/types.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Transaction } from '@sentry/node';
|
|
2
|
-
import { NodeOptions } from '@sentry/node/types/types';
|
|
3
|
-
import { SENTRY_TRANSACTION_KEY } from './constants';
|
|
4
|
-
/**
|
|
5
|
-
* @description
|
|
6
|
-
* Configuration options for the {@link SentryPlugin}.
|
|
7
|
-
*
|
|
8
|
-
* @docsCategory core plugins/SentryPlugin
|
|
9
|
-
*/
|
|
10
|
-
export interface SentryPluginOptions extends NodeOptions {
|
|
11
|
-
/**
|
|
12
|
-
* @description
|
|
13
|
-
* The [Data Source Name](https://docs.sentry.io/product/sentry-basics/concepts/dsn-explainer/) for your Sentry instance.
|
|
14
|
-
*/
|
|
15
|
-
dsn: string;
|
|
16
|
-
enableTracing?: boolean;
|
|
17
|
-
includeErrorTestMutation?: boolean;
|
|
18
|
-
}
|
|
19
|
-
declare module 'express' {
|
|
20
|
-
interface Request {
|
|
21
|
-
[SENTRY_TRANSACTION_KEY]: Transaction | undefined;
|
|
22
|
-
}
|
|
23
|
-
}
|
package/{lib → dist}/index.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|