nightingale-sentry 11.5.3 → 11.7.2
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/.eslintrc.json +1 -1
- package/CHANGELOG.md +46 -0
- package/README.md +105 -0
- package/dist/index-browser-dev.cjs.js +15 -16
- package/dist/index-browser-dev.cjs.js.map +1 -1
- package/dist/index-browser-dev.es.js +4 -4
- package/dist/index-browser-dev.es.js.map +1 -1
- package/dist/index-browser.cjs.js +15 -16
- package/dist/index-browser.cjs.js.map +1 -1
- package/dist/index-browser.es.js +4 -4
- package/dist/index-browser.es.js.map +1 -1
- package/dist/index-browsermodern-dev.es.js +2 -2
- package/dist/index-browsermodern-dev.es.js.map +1 -1
- package/dist/index-browsermodern.es.js +2 -2
- package/dist/index-browsermodern.es.js.map +1 -1
- package/dist/index-node12-dev.cjs.js +17 -20
- package/dist/index-node12-dev.cjs.js.map +1 -1
- package/dist/index-node12-dev.mjs +3 -4
- package/dist/index-node12-dev.mjs.map +1 -1
- package/dist/index-node12.cjs.js +17 -20
- package/dist/index-node12.cjs.js.map +1 -1
- package/dist/index-node12.mjs +3 -4
- package/dist/index-node12.mjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/package.json +18 -26
- package/rollup.config.mjs +3 -0
- package/src/index.ts +3 -2
- package/index.js +0 -6
package/.eslintrc.json
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,52 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [11.7.2](https://github.com/christophehurpeau/nightingale/compare/v11.7.1...v11.7.2) (2021-11-27)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package nightingale-sentry
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [11.7.1](https://github.com/christophehurpeau/nightingale/compare/v11.7.0...v11.7.1) (2021-06-29)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* update pob-babel to bring back webpack 4 support ([4887431](https://github.com/christophehurpeau/nightingale/commit/4887431b3b272496511f879af022638723b9056e))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# [11.7.0](https://github.com/christophehurpeau/nightingale/compare/v11.6.0...v11.7.0) (2021-03-29)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package nightingale-sentry
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# [11.6.0](https://github.com/christophehurpeau/nightingale/compare/v11.5.4...v11.6.0) (2021-03-21)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### Features
|
|
37
|
+
|
|
38
|
+
* update dependencies and browserlist config ([81d2340](https://github.com/christophehurpeau/nightingale/commit/81d234069412c746ebc99faed778092790f332ca))
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
## [11.5.4](https://github.com/christophehurpeau/nightingale/compare/v11.5.3...v11.5.4) (2021-02-14)
|
|
45
|
+
|
|
46
|
+
**Note:** Version bump only for package nightingale-sentry
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
6
52
|
## [11.5.3](https://github.com/christophehurpeau/nightingale/compare/v11.5.2...v11.5.3) (2021-02-14)
|
|
7
53
|
|
|
8
54
|
|
package/README.md
CHANGED
|
@@ -122,3 +122,108 @@ configure([
|
|
|
122
122
|
},
|
|
123
123
|
]);
|
|
124
124
|
```
|
|
125
|
+
|
|
126
|
+
## Usage with sentry-expo
|
|
127
|
+
|
|
128
|
+
At the time of this writing, sentry-expo is still in version `5.28.0` and if you use typescript you might have issues with types due to duplicated version (if you don't use typescript, you might still have duplication so it might still be a good idea to follow this)
|
|
129
|
+
|
|
130
|
+
I'll use `yarn` here, but npm works similarly (if you use npm, please open a PR to complete this !)
|
|
131
|
+
Note that nightingale has a dependency to `@sentry/node` for compatibility reasons.
|
|
132
|
+
|
|
133
|
+
First, you can check the versions installed:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
yarn why @sentry/types
|
|
137
|
+
yarn why @sentry/core
|
|
138
|
+
yarn why @sentry/node
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
You should see something like this:
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
yarn why v1.22.5
|
|
145
|
+
[1/4] Why do we have the module "@sentry/types"...?
|
|
146
|
+
[2/4] Initialising dependency graph...
|
|
147
|
+
[3/4] Finding dependency...
|
|
148
|
+
[4/4] Calculating file sizes...
|
|
149
|
+
=> Found "@sentry/types@5.28.0"
|
|
150
|
+
info Has been hoisted to "@sentry/types"
|
|
151
|
+
info Reasons this module exists
|
|
152
|
+
- Hoisted from "@sentry#core#@sentry#types"
|
|
153
|
+
- Hoisted from "@sentry#hub#@sentry#types"
|
|
154
|
+
- Hoisted from "@sentry#minimal#@sentry#types"
|
|
155
|
+
- Hoisted from "@sentry#tracing#@sentry#types"
|
|
156
|
+
- Hoisted from "@sentry#utils#@sentry#types"
|
|
157
|
+
- Hoisted from "@sentry#node#@sentry#types"
|
|
158
|
+
- Hoisted from "sentry-expo#@sentry#types"
|
|
159
|
+
- Hoisted from "sentry-expo#@sentry#browser#@sentry#types"
|
|
160
|
+
- Hoisted from "sentry-expo#@sentry#integrations#@sentry#types"
|
|
161
|
+
- Hoisted from "sentry-expo#@sentry#react-native#@sentry#types"
|
|
162
|
+
- Hoisted from "sentry-expo#@sentry#react-native#@sentry#react#@sentry#types"
|
|
163
|
+
info Disk size without dependencies: "1.11MB"
|
|
164
|
+
info Disk size with unique dependencies: "1.11MB"
|
|
165
|
+
info Disk size with transitive dependencies: "1.11MB"
|
|
166
|
+
info Number of shared dependencies: 0
|
|
167
|
+
=> Found "nightingale-sentry#@sentry/types@6.1.0"
|
|
168
|
+
info Reasons this module exists
|
|
169
|
+
- "nightingale-sentry" depends on it
|
|
170
|
+
- Hoisted from "nightingale-sentry#@sentry#core#@sentry#types"
|
|
171
|
+
- Hoisted from "nightingale-sentry#@sentry#node#@sentry#types"
|
|
172
|
+
- Hoisted from "nightingale-sentry#@sentry#core#@sentry#hub#@sentry#types"
|
|
173
|
+
- Hoisted from "nightingale-sentry#@sentry#core#@sentry#minimal#@sentry#types"
|
|
174
|
+
- Hoisted from "nightingale-sentry#@sentry#node#@sentry#tracing#@sentry#types"
|
|
175
|
+
- Hoisted from "nightingale-sentry#@sentry#core#@sentry#utils#@sentry#types"
|
|
176
|
+
info Disk size without dependencies: "1.19MB"
|
|
177
|
+
info Disk size with unique dependencies: "1.19MB"
|
|
178
|
+
info Disk size with transitive dependencies: "1.19MB"
|
|
179
|
+
info Number of shared dependencies: 0
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
If you see only one version, everything is good ! You can skip this.
|
|
183
|
+
|
|
184
|
+
Now add these in you package's devDependencies:
|
|
185
|
+
|
|
186
|
+
```
|
|
187
|
+
"@sentry/core": "5.28.0",
|
|
188
|
+
"@sentry/node": "5.28.0",
|
|
189
|
+
"@sentry/types": "5.28.0",
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
If you use yarn 1, also add [`yarn-deduplicate`](https://www.npmjs.com/package/yarn-deduplicate), then run:
|
|
193
|
+
|
|
194
|
+
```sh
|
|
195
|
+
yarn; yarn yarn-deduplicate -s fewer ; yarn yarn-deduplicate ; yarn
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
If you use yarn berry, you have to manually change the yarn.lock to downgrade the 3 sentry dependencies as `yarn dedupe` currently only supports the `highest` strategy.
|
|
199
|
+
|
|
200
|
+
You should now have:
|
|
201
|
+
|
|
202
|
+
```
|
|
203
|
+
yarn why v1.22.5
|
|
204
|
+
[1/4] Why do we have the module "@sentry/types"...?
|
|
205
|
+
[2/4] Initialising dependency graph...
|
|
206
|
+
[3/4] Finding dependency...
|
|
207
|
+
[4/4] Calculating file sizes...
|
|
208
|
+
=> Found "@sentry/types@5.28.0"
|
|
209
|
+
info Has been hoisted to "@sentry/types"
|
|
210
|
+
info Reasons this module exists
|
|
211
|
+
- Specified in "devDependencies"
|
|
212
|
+
- Hoisted from "@sentry#core#@sentry#types"
|
|
213
|
+
- Hoisted from "@sentry#node#@sentry#types"
|
|
214
|
+
- Hoisted from "nightingale-sentry#@sentry#types"
|
|
215
|
+
- Hoisted from "sentry-expo#@sentry#types"
|
|
216
|
+
- Hoisted from "sentry-expo#@sentry#browser#@sentry#types"
|
|
217
|
+
- Hoisted from "@sentry#core#@sentry#hub#@sentry#types"
|
|
218
|
+
- Hoisted from "sentry-expo#@sentry#integrations#@sentry#types"
|
|
219
|
+
- Hoisted from "@sentry#core#@sentry#minimal#@sentry#types"
|
|
220
|
+
- Hoisted from "sentry-expo#@sentry#react-native#@sentry#types"
|
|
221
|
+
- Hoisted from "@sentry#node#@sentry#tracing#@sentry#types"
|
|
222
|
+
- Hoisted from "@sentry#core#@sentry#utils#@sentry#types"
|
|
223
|
+
- Hoisted from "sentry-expo#@sentry#react-native#@sentry#react#@sentry#types"
|
|
224
|
+
info Disk size without dependencies: "1.11MB"
|
|
225
|
+
info Disk size with unique dependencies: "1.11MB"
|
|
226
|
+
info Disk size with transitive dependencies: "1.11MB"
|
|
227
|
+
info Number of shared dependencies: 0
|
|
228
|
+
Done in 0.78s.
|
|
229
|
+
```
|
|
@@ -4,25 +4,24 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var _extends = require('@babel/runtime/helpers/esm/extends');
|
|
6
6
|
var types = require('@sentry/types');
|
|
7
|
-
var
|
|
7
|
+
var nightingaleLevels = require('nightingale-levels');
|
|
8
8
|
|
|
9
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e[
|
|
9
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
|
|
10
10
|
|
|
11
11
|
var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
|
|
12
|
-
var Level__default = /*#__PURE__*/_interopDefaultLegacy(Level);
|
|
13
12
|
|
|
14
13
|
var mapToSentryLevel = {
|
|
15
|
-
[
|
|
16
|
-
[
|
|
17
|
-
[
|
|
18
|
-
[
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
[
|
|
22
|
-
[
|
|
23
|
-
[
|
|
14
|
+
[nightingaleLevels.Level.TRACE]: types.Severity.Debug,
|
|
15
|
+
[nightingaleLevels.Level.DEBUG]: types.Severity.Debug,
|
|
16
|
+
[nightingaleLevels.Level.INFO]: types.Severity.Info,
|
|
17
|
+
[nightingaleLevels.Level.NOTICE]: types.Severity.Log,
|
|
18
|
+
[nightingaleLevels.Level.WARNING]: types.Severity.Warning,
|
|
19
|
+
[nightingaleLevels.Level.ERROR]: types.Severity.Error,
|
|
20
|
+
[nightingaleLevels.Level.CRITICAL]: types.Severity.Critical,
|
|
21
|
+
[nightingaleLevels.Level.FATAL]: types.Severity.Fatal,
|
|
22
|
+
[nightingaleLevels.Level.EMERGENCY]: types.Severity.Critical,
|
|
24
23
|
// not a level
|
|
25
|
-
[
|
|
24
|
+
[nightingaleLevels.Level.ALL]: types.Severity.Error
|
|
26
25
|
};
|
|
27
26
|
|
|
28
27
|
var createHandler = function createHandler(Sentry, _temp) {
|
|
@@ -47,7 +46,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
47
46
|
shouldSendAsException = _ref$shouldSendAsExce === void 0 ? function (record) {
|
|
48
47
|
var _record$metadata;
|
|
49
48
|
|
|
50
|
-
return ((_record$metadata = record.metadata)
|
|
49
|
+
return ((_record$metadata = record.metadata) == null ? void 0 : _record$metadata.error) !== undefined && record.metadata.unhandled !== true;
|
|
51
50
|
} : _ref$shouldSendAsExce,
|
|
52
51
|
_ref$shouldSendAsBrea = _ref.shouldSendAsBreadcrumb,
|
|
53
52
|
shouldSendAsBreadcrumb = _ref$shouldSendAsBrea === void 0 ? function () {
|
|
@@ -61,7 +60,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
61
60
|
extra = record.extra;
|
|
62
61
|
|
|
63
62
|
if (shouldSendAsException(record)) {
|
|
64
|
-
var error = (metadata
|
|
63
|
+
var error = (metadata == null ? void 0 : metadata.error) || record.message;
|
|
65
64
|
|
|
66
65
|
var extraData = _extends__default({}, metadata, extra);
|
|
67
66
|
|
|
@@ -92,5 +91,5 @@ var SentryHandler = function SentryHandler(Sentry, minLevel, options) {
|
|
|
92
91
|
this.handle = createHandler(Sentry, options);
|
|
93
92
|
};
|
|
94
93
|
|
|
95
|
-
exports
|
|
94
|
+
exports["default"] = SentryHandler;
|
|
96
95
|
//# sourceMappingURL=index-browser-dev.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browser-dev.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-browser-dev.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","minLevel","options","handle"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
2
2
|
import { Severity } from '@sentry/types';
|
|
3
|
-
import Level from 'nightingale-levels';
|
|
3
|
+
import { Level } from 'nightingale-levels';
|
|
4
4
|
|
|
5
5
|
var mapToSentryLevel = {
|
|
6
6
|
[Level.TRACE]: Severity.Debug,
|
|
@@ -38,7 +38,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
38
38
|
shouldSendAsException = _ref$shouldSendAsExce === void 0 ? function (record) {
|
|
39
39
|
var _record$metadata;
|
|
40
40
|
|
|
41
|
-
return ((_record$metadata = record.metadata)
|
|
41
|
+
return ((_record$metadata = record.metadata) == null ? void 0 : _record$metadata.error) !== undefined && record.metadata.unhandled !== true;
|
|
42
42
|
} : _ref$shouldSendAsExce,
|
|
43
43
|
_ref$shouldSendAsBrea = _ref.shouldSendAsBreadcrumb,
|
|
44
44
|
shouldSendAsBreadcrumb = _ref$shouldSendAsBrea === void 0 ? function () {
|
|
@@ -52,7 +52,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
52
52
|
extra = record.extra;
|
|
53
53
|
|
|
54
54
|
if (shouldSendAsException(record)) {
|
|
55
|
-
var error = (metadata
|
|
55
|
+
var error = (metadata == null ? void 0 : metadata.error) || record.message;
|
|
56
56
|
|
|
57
57
|
var extraData = _extends({}, metadata, extra);
|
|
58
58
|
|
|
@@ -83,5 +83,5 @@ var SentryHandler = function SentryHandler(Sentry, minLevel, options) {
|
|
|
83
83
|
this.handle = createHandler(Sentry, options);
|
|
84
84
|
};
|
|
85
85
|
|
|
86
|
-
export default
|
|
86
|
+
export { SentryHandler as default };
|
|
87
87
|
//# sourceMappingURL=index-browser-dev.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browser-dev.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-browser-dev.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","minLevel","options","handle"],"mappings":";;;;AAYA,IAAMA,gBAAyC,GAAG;AAChD,GAACC,KAAK,CAACC,KAAP,GAAeC,QAAQ,CAACC,KADwB;AAEhD,GAACH,KAAK,CAACI,KAAP,GAAeF,QAAQ,CAACC,KAFwB;AAGhD,GAACH,KAAK,CAACK,IAAP,GAAcH,QAAQ,CAACI,IAHyB;AAIhD,GAACN,KAAK,CAACO,MAAP,GAAgBL,QAAQ,CAACM,GAJuB;AAKhD,GAACR,KAAK,CAACS,OAAP,GAAiBP,QAAQ,CAACQ,OALsB;AAMhD,GAACV,KAAK,CAACW,KAAP,GAAeT,QAAQ,CAACU,KANwB;AAOhD,GAACZ,KAAK,CAACa,QAAP,GAAkBX,QAAQ,CAACY,QAPqB;AAQhD,GAACd,KAAK,CAACe,KAAP,GAAeb,QAAQ,CAACc,KARwB;AAShD,GAAChB,KAAK,CAACiB,SAAP,GAAmBf,QAAQ,CAACY,QAToB;AAUhD;AACA,GAACd,KAAK,CAACkB,GAAP,GAAahB,QAAQ,CAACU;AAX0B,CAAlD;;AA6CA,IAAMO,aAAa,GAAG,SAAhBA,aAAgB,CACpBC,MADoB,SAaT;AAAA,gCADE,EACF;AAAA,0BAVTC,OAUS;AAAA,MAVTA,OAUS,6BAVC;AAAA,WAAMC,SAAN;AAAA,GAUD;AAAA,0BATTC,OASS;AAAA,MATTA,OASS,6BATC;AAAA,WAAO,EAAP;AAAA,GASD;AAAA,mCARTC,qBAQS;AAAA,MARTA,qBAQS,sCARe;AAAA,WAAMF,SAAN;AAAA,GAQf;AAAA,mCAPTG,iBAOS;AAAA,MAPTA,iBAOS,sCAPW;AAAA,WAAMH,SAAN;AAAA,GAOX;AAAA,mCANTI,qBAMS;AAAA,MANTA,qBAMS,sCANe,UAAqBC,MAArB;AAAA;;AAAA,WACtB,qBAAAA,MAAM,CAACC,QAAP,sCAAiBC,KAAjB,MAA2BP,SAA3B,IACAK,MAAM,CAACC,QAAP,CAAgBE,SAAhB,KAA8B,IAFR;AAAA,GAMf;AAAA,mCAHTC,sBAGS;AAAA,MAHTA,sBAGS,sCAHgB;AAAA,WACvB,KADuB;AAAA,GAGhB;;AACX,SAAO,UAA8BJ,MAA9B,EAAuD;AAC5D,QAAQK,GAAR,GAAwCL,MAAxC,CAAQK,GAAR;AAAA,QAAaC,KAAb,GAAwCN,MAAxC,CAAaM,KAAb;AAAA,QAAoBL,QAApB,GAAwCD,MAAxC,CAAoBC,QAApB;AAAA,QAA8BM,KAA9B,GAAwCP,MAAxC,CAA8BO,KAA9B;;AAEA,QAAIR,qBAAqB,CAACC,MAAD,CAAzB,EAAmC;AACjC,UAAME,KAAK,GAAG,CAAAD,QAAQ,QAAR,YAAAA,QAAQ,CAAEC,KAAV,KAAmBF,MAAM,CAACQ,OAAxC;;AAEA,UAAMC,SAAkC,gBAAQR,QAAR,EAAqBM,KAArB,CAAxC;;AACA,aAAOE,SAAS,CAACP,KAAjB;AAEAT,MAAAA,MAAM,CAACiB,gBAAP,CAAwBR,KAAxB,EAA+B;AAC7BI,QAAAA,KAAK,EAAElC,gBAAgB,CAACkC,KAAD,CAAhB,IAA2B/B,QAAQ,CAACU,KADd;AAE7B0B,QAAAA,IAAI,EAAEjB,OAAO,CAACM,MAAD,CAFgB;AAG7BY,QAAAA,IAAI;AACFC,UAAAA,SAAS,EAAER;AADT,WAECT,OAAO,CAACI,MAAD,CAFR,CAHyB;AAO7BO,QAAAA,KAAK,EAAEE;AAPsB,OAA/B;AASD,KAfD,MAeO,IAAIL,sBAAsB,CAACJ,MAAD,CAA1B,EAAoC;AACzCP,MAAAA,MAAM,CAACqB,aAAP,CAAqB;AACnBR,QAAAA,KAAK,EAAElC,gBAAgB,CAACkC,KAAD,CAAhB,IAA2B/B,QAAQ,CAACU,KADxB;AAEnB8B,QAAAA,QAAQ,EAAElB,qBAAqB,CAACG,MAAD,CAFZ;AAGnBgB,QAAAA,IAAI,EAAElB,iBAAiB,CAACE,MAAD,CAHJ;AAInBQ,QAAAA,OAAO,EAAER,MAAM,CAACQ,OAJG;AAKnBS,QAAAA,IAAI,EAAEjB,MAAM,CAACC,QALM;AAMnBiB,QAAAA,SAAS,EAAElB,MAAM,CAACmB,QAAP,CAAgBC,OAAhB;AANQ,OAArB;AAQD;AACF,GA5BD;AA6BD,CA3CD;;IA6CqBC,gBAOnB,uBAAY5B,MAAZ,EAAgC6B,QAAhC,EAAiDC,OAAjD,EAAoE;AAClE,OAAKD,QAAL,GAAgBA,QAAhB;AAQE,OAAKE,MAAL,GAAchC,aAAa,CAAIC,MAAJ,EAAiB8B,OAAjB,CAA3B;AAEH;;;;"}
|
|
@@ -4,25 +4,24 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var _extends = require('@babel/runtime/helpers/esm/extends');
|
|
6
6
|
var types = require('@sentry/types');
|
|
7
|
-
var
|
|
7
|
+
var nightingaleLevels = require('nightingale-levels');
|
|
8
8
|
|
|
9
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e[
|
|
9
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
|
|
10
10
|
|
|
11
11
|
var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
|
|
12
|
-
var Level__default = /*#__PURE__*/_interopDefaultLegacy(Level);
|
|
13
12
|
|
|
14
13
|
var mapToSentryLevel = {
|
|
15
|
-
[
|
|
16
|
-
[
|
|
17
|
-
[
|
|
18
|
-
[
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
[
|
|
22
|
-
[
|
|
23
|
-
[
|
|
14
|
+
[nightingaleLevels.Level.TRACE]: types.Severity.Debug,
|
|
15
|
+
[nightingaleLevels.Level.DEBUG]: types.Severity.Debug,
|
|
16
|
+
[nightingaleLevels.Level.INFO]: types.Severity.Info,
|
|
17
|
+
[nightingaleLevels.Level.NOTICE]: types.Severity.Log,
|
|
18
|
+
[nightingaleLevels.Level.WARNING]: types.Severity.Warning,
|
|
19
|
+
[nightingaleLevels.Level.ERROR]: types.Severity.Error,
|
|
20
|
+
[nightingaleLevels.Level.CRITICAL]: types.Severity.Critical,
|
|
21
|
+
[nightingaleLevels.Level.FATAL]: types.Severity.Fatal,
|
|
22
|
+
[nightingaleLevels.Level.EMERGENCY]: types.Severity.Critical,
|
|
24
23
|
// not a level
|
|
25
|
-
[
|
|
24
|
+
[nightingaleLevels.Level.ALL]: types.Severity.Error
|
|
26
25
|
};
|
|
27
26
|
|
|
28
27
|
var createHandler = function createHandler(Sentry, _temp) {
|
|
@@ -47,7 +46,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
47
46
|
shouldSendAsException = _ref$shouldSendAsExce === void 0 ? function (record) {
|
|
48
47
|
var _record$metadata;
|
|
49
48
|
|
|
50
|
-
return ((_record$metadata = record.metadata)
|
|
49
|
+
return ((_record$metadata = record.metadata) == null ? void 0 : _record$metadata.error) !== undefined && record.metadata.unhandled !== true;
|
|
51
50
|
} : _ref$shouldSendAsExce,
|
|
52
51
|
_ref$shouldSendAsBrea = _ref.shouldSendAsBreadcrumb,
|
|
53
52
|
shouldSendAsBreadcrumb = _ref$shouldSendAsBrea === void 0 ? function () {
|
|
@@ -61,7 +60,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
61
60
|
extra = record.extra;
|
|
62
61
|
|
|
63
62
|
if (shouldSendAsException(record)) {
|
|
64
|
-
var error = (metadata
|
|
63
|
+
var error = (metadata == null ? void 0 : metadata.error) || record.message;
|
|
65
64
|
|
|
66
65
|
var extraData = _extends__default({}, metadata, extra);
|
|
67
66
|
|
|
@@ -92,5 +91,5 @@ var SentryHandler = function SentryHandler(Sentry, minLevel, options) {
|
|
|
92
91
|
this.handle = createHandler(Sentry, options);
|
|
93
92
|
};
|
|
94
93
|
|
|
95
|
-
exports
|
|
94
|
+
exports["default"] = SentryHandler;
|
|
96
95
|
//# sourceMappingURL=index-browser.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browser.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-browser.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","minLevel","options","handle"],"mappings":"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"}
|
package/dist/index-browser.es.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
2
2
|
import { Severity } from '@sentry/types';
|
|
3
|
-
import Level from 'nightingale-levels';
|
|
3
|
+
import { Level } from 'nightingale-levels';
|
|
4
4
|
|
|
5
5
|
var mapToSentryLevel = {
|
|
6
6
|
[Level.TRACE]: Severity.Debug,
|
|
@@ -38,7 +38,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
38
38
|
shouldSendAsException = _ref$shouldSendAsExce === void 0 ? function (record) {
|
|
39
39
|
var _record$metadata;
|
|
40
40
|
|
|
41
|
-
return ((_record$metadata = record.metadata)
|
|
41
|
+
return ((_record$metadata = record.metadata) == null ? void 0 : _record$metadata.error) !== undefined && record.metadata.unhandled !== true;
|
|
42
42
|
} : _ref$shouldSendAsExce,
|
|
43
43
|
_ref$shouldSendAsBrea = _ref.shouldSendAsBreadcrumb,
|
|
44
44
|
shouldSendAsBreadcrumb = _ref$shouldSendAsBrea === void 0 ? function () {
|
|
@@ -52,7 +52,7 @@ var createHandler = function createHandler(Sentry, _temp) {
|
|
|
52
52
|
extra = record.extra;
|
|
53
53
|
|
|
54
54
|
if (shouldSendAsException(record)) {
|
|
55
|
-
var error = (metadata
|
|
55
|
+
var error = (metadata == null ? void 0 : metadata.error) || record.message;
|
|
56
56
|
|
|
57
57
|
var extraData = _extends({}, metadata, extra);
|
|
58
58
|
|
|
@@ -83,5 +83,5 @@ var SentryHandler = function SentryHandler(Sentry, minLevel, options) {
|
|
|
83
83
|
this.handle = createHandler(Sentry, options);
|
|
84
84
|
};
|
|
85
85
|
|
|
86
|
-
export default
|
|
86
|
+
export { SentryHandler as default };
|
|
87
87
|
//# sourceMappingURL=index-browser.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browser.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-browser.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","minLevel","options","handle"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Severity } from '@sentry/types';
|
|
2
|
-
import Level from 'nightingale-levels';
|
|
2
|
+
import { Level } from 'nightingale-levels';
|
|
3
3
|
|
|
4
4
|
const mapToSentryLevel = {
|
|
5
5
|
[Level.TRACE]: Severity.Debug,
|
|
@@ -71,5 +71,5 @@ class SentryHandler {
|
|
|
71
71
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
export default
|
|
74
|
+
export { SentryHandler as default };
|
|
75
75
|
//# sourceMappingURL=index-browsermodern-dev.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browsermodern-dev.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-browsermodern-dev.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","constructor","minLevel","options","handle"],"mappings":";;;AAYA,MAAMA,gBAAyC,GAAG;AAChD,GAACC,KAAK,CAACC,KAAP,GAAeC,QAAQ,CAACC,KADwB;AAEhD,GAACH,KAAK,CAACI,KAAP,GAAeF,QAAQ,CAACC,KAFwB;AAGhD,GAACH,KAAK,CAACK,IAAP,GAAcH,QAAQ,CAACI,IAHyB;AAIhD,GAACN,KAAK,CAACO,MAAP,GAAgBL,QAAQ,CAACM,GAJuB;AAKhD,GAACR,KAAK,CAACS,OAAP,GAAiBP,QAAQ,CAACQ,OALsB;AAMhD,GAACV,KAAK,CAACW,KAAP,GAAeT,QAAQ,CAACU,KANwB;AAOhD,GAACZ,KAAK,CAACa,QAAP,GAAkBX,QAAQ,CAACY,QAPqB;AAQhD,GAACd,KAAK,CAACe,KAAP,GAAeb,QAAQ,CAACc,KARwB;AAShD,GAAChB,KAAK,CAACiB,SAAP,GAAmBf,QAAQ,CAACY,QAToB;AAUhD;AACA,GAACd,KAAK,CAACkB,GAAP,GAAahB,QAAQ,CAACU;AAX0B,CAAlD;;AA6CA,MAAMO,aAAa,GAAG,CACpBC,MADoB,EAEpB;AACEC,EAAAA,OAAO,GAAG,MAAMC,SADlB;AAEEC,EAAAA,OAAO,GAAG,OAAO,EAAP,CAFZ;AAGEC,EAAAA,qBAAqB,GAAG,MAAMF,SAHhC;AAIEG,EAAAA,iBAAiB,GAAG,MAAMH,SAJ5B;AAKEI,EAAAA,qBAAqB,GAAwBC,MAArB;AAAA;;AAAA,WACtB,qBAAAA,MAAM,CAACC,QAAP,sEAAiBC,KAAjB,MAA2BP,SAA3B,IACAK,MAAM,CAACC,QAAP,CAAgBE,SAAhB,KAA8B,IAFR;AAAA,GAL1B;AAQEC,EAAAA,sBAAsB,GAAG,MACvB;AATJ,IAUa,EAZO,KAaT;AACX,SAAqCJ,MAA9B,IAAuD;AAC5D,UAAM;AAAEK,MAAAA,GAAF;AAAOC,MAAAA,KAAP;AAAcL,MAAAA,QAAd;AAAwBM,MAAAA;AAAxB,QAAkCP,MAAxC;;AAEA,QAAID,qBAAqB,CAACC,MAAD,CAAzB,EAAmC;AACjC,YAAME,KAAK,GAAG,CAAAD,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEC,KAAV,KAAmBF,MAAM,CAACQ,OAAxC;AAEA,YAAMC,SAAkC,GAAG,EAAE,GAAGR,QAAL;AAAe,WAAGM;AAAlB,OAA3C;AACA,aAAOE,SAAS,CAACP,KAAjB;AAEAT,MAAAA,MAAM,CAACiB,gBAAP,CAAwBR,KAAxB,EAA+B;AAC7BI,QAAAA,KAAK,EAAElC,gBAAgB,CAACkC,KAAD,CAAhB,IAA2B/B,QAAQ,CAACU,KADd;AAE7B0B,QAAAA,IAAI,EAAEjB,OAAO,CAACM,MAAD,CAFgB;AAG7BY,QAAAA,IAAI,EAAE;AACJC,UAAAA,SAAS,EAAER,GADP;AAEJ,aAAGT,OAAO,CAACI,MAAD;AAFN,SAHuB;AAO7BO,QAAAA,KAAK,EAAEE;AAPsB,OAA/B;AASD,KAfD,MAeO,IAAIL,sBAAsB,CAACJ,MAAD,CAA1B,EAAoC;AACzCP,MAAAA,MAAM,CAACqB,aAAP,CAAqB;AACnBR,QAAAA,KAAK,EAAElC,gBAAgB,CAACkC,KAAD,CAAhB,IAA2B/B,QAAQ,CAACU,KADxB;AAEnB8B,QAAAA,QAAQ,EAAElB,qBAAqB,CAACG,MAAD,CAFZ;AAGnBgB,QAAAA,IAAI,EAAElB,iBAAiB,CAACE,MAAD,CAHJ;AAInBQ,QAAAA,OAAO,EAAER,MAAM,CAACQ,OAJG;AAKnBS,QAAAA,IAAI,EAAEjB,MAAM,CAACC,QALM;AAMnBiB,QAAAA,SAAS,EAAElB,MAAM,CAACmB,QAAP,CAAgBC,OAAhB;AANQ,OAArB;AAQD;AACF,GA5BD;AA6BD,CA3CD;;AA6Ce,MAAMC,aAAN,CAEf;AAKEC,EAAAA,WAAW,CAAC7B,MAAD,EAAqB8B,QAArB,EAAsCC,OAAtC,EAAyD;AAClE,SAAKD,QAAL,GAAgBA,QAAhB;AAQE,SAAKE,MAAL,GAAcjC,aAAa,CAAIC,MAAJ,EAAiB+B,OAAjB,CAA3B;AAEH;;AAhBH;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Severity } from '@sentry/types';
|
|
2
|
-
import Level from 'nightingale-levels';
|
|
2
|
+
import { Level } from 'nightingale-levels';
|
|
3
3
|
|
|
4
4
|
const mapToSentryLevel = {
|
|
5
5
|
[Level.TRACE]: Severity.Debug,
|
|
@@ -71,5 +71,5 @@ class SentryHandler {
|
|
|
71
71
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
export default
|
|
74
|
+
export { SentryHandler as default };
|
|
75
75
|
//# sourceMappingURL=index-browsermodern.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browsermodern.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-browsermodern.es.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","constructor","minLevel","options","handle"],"mappings":"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"}
|
|
@@ -4,37 +4,34 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const SentryNode = require('@sentry/node');
|
|
6
6
|
const types = require('@sentry/types');
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
|
|
7
|
+
const nightingaleLevels = require('nightingale-levels');
|
|
10
8
|
|
|
11
9
|
function _interopNamespace(e) {
|
|
12
10
|
if (e && e.__esModule) return e;
|
|
13
|
-
|
|
11
|
+
const n = Object.create(null);
|
|
14
12
|
if (e) {
|
|
15
|
-
|
|
13
|
+
for (const k in e) {
|
|
16
14
|
n[k] = e[k];
|
|
17
|
-
}
|
|
15
|
+
}
|
|
18
16
|
}
|
|
19
|
-
n[
|
|
17
|
+
n["default"] = e;
|
|
20
18
|
return n;
|
|
21
19
|
}
|
|
22
20
|
|
|
23
21
|
const SentryNode__namespace = /*#__PURE__*/_interopNamespace(SentryNode);
|
|
24
|
-
const Level__default = /*#__PURE__*/_interopDefaultLegacy(Level);
|
|
25
22
|
|
|
26
23
|
const mapToSentryLevel = {
|
|
27
|
-
[
|
|
28
|
-
[
|
|
29
|
-
[
|
|
30
|
-
[
|
|
31
|
-
[
|
|
32
|
-
[
|
|
33
|
-
[
|
|
34
|
-
[
|
|
35
|
-
[
|
|
24
|
+
[nightingaleLevels.Level.TRACE]: types.Severity.Debug,
|
|
25
|
+
[nightingaleLevels.Level.DEBUG]: types.Severity.Debug,
|
|
26
|
+
[nightingaleLevels.Level.INFO]: types.Severity.Info,
|
|
27
|
+
[nightingaleLevels.Level.NOTICE]: types.Severity.Log,
|
|
28
|
+
[nightingaleLevels.Level.WARNING]: types.Severity.Warning,
|
|
29
|
+
[nightingaleLevels.Level.ERROR]: types.Severity.Error,
|
|
30
|
+
[nightingaleLevels.Level.CRITICAL]: types.Severity.Critical,
|
|
31
|
+
[nightingaleLevels.Level.FATAL]: types.Severity.Fatal,
|
|
32
|
+
[nightingaleLevels.Level.EMERGENCY]: types.Severity.Critical,
|
|
36
33
|
// not a level
|
|
37
|
-
[
|
|
34
|
+
[nightingaleLevels.Level.ALL]: types.Severity.Error
|
|
38
35
|
};
|
|
39
36
|
|
|
40
37
|
const createHandler = (Sentry, {
|
|
@@ -91,7 +88,7 @@ class SentryHandler {
|
|
|
91
88
|
|
|
92
89
|
if (typeof Sentry === 'string') {
|
|
93
90
|
console.warn('nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.');
|
|
94
|
-
|
|
91
|
+
SentryNode__namespace.init({
|
|
95
92
|
dsn: Sentry
|
|
96
93
|
});
|
|
97
94
|
this.handle = createHandler(SentryNode__namespace, options);
|
|
@@ -102,5 +99,5 @@ class SentryHandler {
|
|
|
102
99
|
|
|
103
100
|
}
|
|
104
101
|
|
|
105
|
-
exports
|
|
102
|
+
exports["default"] = SentryHandler;
|
|
106
103
|
//# sourceMappingURL=index-node12-dev.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-node12-dev.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-node12-dev.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","constructor","minLevel","options","console","warn","SentryNode","init","dsn","handle"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as SentryNode from '@sentry/node';
|
|
2
|
-
import { init } from '@sentry/node';
|
|
3
2
|
import { Severity } from '@sentry/types';
|
|
4
|
-
import Level from 'nightingale-levels';
|
|
3
|
+
import { Level } from 'nightingale-levels';
|
|
5
4
|
|
|
6
5
|
const mapToSentryLevel = {
|
|
7
6
|
[Level.TRACE]: Severity.Debug,
|
|
@@ -71,7 +70,7 @@ class SentryHandler {
|
|
|
71
70
|
|
|
72
71
|
if (typeof Sentry === 'string') {
|
|
73
72
|
console.warn('nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.');
|
|
74
|
-
init({
|
|
73
|
+
SentryNode.init({
|
|
75
74
|
dsn: Sentry
|
|
76
75
|
});
|
|
77
76
|
this.handle = createHandler(SentryNode, options);
|
|
@@ -82,5 +81,5 @@ class SentryHandler {
|
|
|
82
81
|
|
|
83
82
|
}
|
|
84
83
|
|
|
85
|
-
export default
|
|
84
|
+
export { SentryHandler as default };
|
|
86
85
|
//# sourceMappingURL=index-node12-dev.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-node12-dev.mjs","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-node12-dev.mjs","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","constructor","minLevel","options","console","warn","SentryNode","init","dsn","handle"],"mappings":"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"}
|
package/dist/index-node12.cjs.js
CHANGED
|
@@ -4,37 +4,34 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const SentryNode = require('@sentry/node');
|
|
6
6
|
const types = require('@sentry/types');
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
|
|
7
|
+
const nightingaleLevels = require('nightingale-levels');
|
|
10
8
|
|
|
11
9
|
function _interopNamespace(e) {
|
|
12
10
|
if (e && e.__esModule) return e;
|
|
13
|
-
|
|
11
|
+
const n = Object.create(null);
|
|
14
12
|
if (e) {
|
|
15
|
-
|
|
13
|
+
for (const k in e) {
|
|
16
14
|
n[k] = e[k];
|
|
17
|
-
}
|
|
15
|
+
}
|
|
18
16
|
}
|
|
19
|
-
n[
|
|
17
|
+
n["default"] = e;
|
|
20
18
|
return n;
|
|
21
19
|
}
|
|
22
20
|
|
|
23
21
|
const SentryNode__namespace = /*#__PURE__*/_interopNamespace(SentryNode);
|
|
24
|
-
const Level__default = /*#__PURE__*/_interopDefaultLegacy(Level);
|
|
25
22
|
|
|
26
23
|
const mapToSentryLevel = {
|
|
27
|
-
[
|
|
28
|
-
[
|
|
29
|
-
[
|
|
30
|
-
[
|
|
31
|
-
[
|
|
32
|
-
[
|
|
33
|
-
[
|
|
34
|
-
[
|
|
35
|
-
[
|
|
24
|
+
[nightingaleLevels.Level.TRACE]: types.Severity.Debug,
|
|
25
|
+
[nightingaleLevels.Level.DEBUG]: types.Severity.Debug,
|
|
26
|
+
[nightingaleLevels.Level.INFO]: types.Severity.Info,
|
|
27
|
+
[nightingaleLevels.Level.NOTICE]: types.Severity.Log,
|
|
28
|
+
[nightingaleLevels.Level.WARNING]: types.Severity.Warning,
|
|
29
|
+
[nightingaleLevels.Level.ERROR]: types.Severity.Error,
|
|
30
|
+
[nightingaleLevels.Level.CRITICAL]: types.Severity.Critical,
|
|
31
|
+
[nightingaleLevels.Level.FATAL]: types.Severity.Fatal,
|
|
32
|
+
[nightingaleLevels.Level.EMERGENCY]: types.Severity.Critical,
|
|
36
33
|
// not a level
|
|
37
|
-
[
|
|
34
|
+
[nightingaleLevels.Level.ALL]: types.Severity.Error
|
|
38
35
|
};
|
|
39
36
|
|
|
40
37
|
const createHandler = (Sentry, {
|
|
@@ -91,7 +88,7 @@ class SentryHandler {
|
|
|
91
88
|
|
|
92
89
|
if (typeof Sentry === 'string') {
|
|
93
90
|
console.warn('nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.');
|
|
94
|
-
|
|
91
|
+
SentryNode__namespace.init({
|
|
95
92
|
dsn: Sentry
|
|
96
93
|
});
|
|
97
94
|
this.handle = createHandler(SentryNode__namespace, options);
|
|
@@ -102,5 +99,5 @@ class SentryHandler {
|
|
|
102
99
|
|
|
103
100
|
}
|
|
104
101
|
|
|
105
|
-
exports
|
|
102
|
+
exports["default"] = SentryHandler;
|
|
106
103
|
//# sourceMappingURL=index-node12.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-node12.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-node12.cjs.js","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","constructor","minLevel","options","console","warn","SentryNode","init","dsn","handle"],"mappings":"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"}
|
package/dist/index-node12.mjs
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as SentryNode from '@sentry/node';
|
|
2
|
-
import { init } from '@sentry/node';
|
|
3
2
|
import { Severity } from '@sentry/types';
|
|
4
|
-
import Level from 'nightingale-levels';
|
|
3
|
+
import { Level } from 'nightingale-levels';
|
|
5
4
|
|
|
6
5
|
const mapToSentryLevel = {
|
|
7
6
|
[Level.TRACE]: Severity.Debug,
|
|
@@ -71,7 +70,7 @@ class SentryHandler {
|
|
|
71
70
|
|
|
72
71
|
if (typeof Sentry === 'string') {
|
|
73
72
|
console.warn('nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.');
|
|
74
|
-
init({
|
|
73
|
+
SentryNode.init({
|
|
75
74
|
dsn: Sentry
|
|
76
75
|
});
|
|
77
76
|
this.handle = createHandler(SentryNode, options);
|
|
@@ -82,5 +81,5 @@ class SentryHandler {
|
|
|
82
81
|
|
|
83
82
|
}
|
|
84
83
|
|
|
85
|
-
export default
|
|
84
|
+
export { SentryHandler as default };
|
|
86
85
|
//# sourceMappingURL=index-node12.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-node12.mjs","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport Level from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler
|
|
1
|
+
{"version":3,"file":"index-node12.mjs","sources":["../src/index.ts"],"sourcesContent":["import { POB_TARGET } from 'pob-babel';\nimport type {\n addBreadcrumb,\n captureException,\n captureMessage,\n} from '@sentry/core';\nimport * as SentryNode from '@sentry/node';\nimport type { User } from '@sentry/types';\nimport { Severity } from '@sentry/types';\nimport { Level } from 'nightingale-levels';\nimport type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';\n\nconst mapToSentryLevel: Record<Level, Severity> = {\n [Level.TRACE]: Severity.Debug,\n [Level.DEBUG]: Severity.Debug,\n [Level.INFO]: Severity.Info,\n [Level.NOTICE]: Severity.Log,\n [Level.WARNING]: Severity.Warning,\n [Level.ERROR]: Severity.Error,\n [Level.CRITICAL]: Severity.Critical,\n [Level.FATAL]: Severity.Fatal,\n [Level.EMERGENCY]: Severity.Critical,\n // not a level\n [Level.ALL]: Severity.Error,\n};\n\nexport interface MetadataWithError extends Metadata {\n error?: Error;\n}\n\nexport interface Options {\n getUser?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => User | undefined;\n getTags?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => Record<string, string>;\n getBreadcrumbCategory?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n getBreadcrumbType?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => string | undefined;\n shouldSendAsException?: <T extends MetadataWithError>(\n record: LogRecord<T>,\n ) => boolean;\n shouldSendAsBreadcrumb?: <T extends Metadata>(\n record: LogRecord<T>,\n ) => boolean;\n}\n\ninterface SentryRequiredMethods {\n addBreadcrumb: typeof addBreadcrumb;\n captureException: typeof captureException;\n captureMessage: typeof captureMessage;\n}\n\nconst createHandler = <S extends SentryRequiredMethods>(\n Sentry: S,\n {\n getUser = () => undefined,\n getTags = () => ({}),\n getBreadcrumbCategory = () => undefined,\n getBreadcrumbType = () => undefined,\n shouldSendAsException = <T extends Metadata>(record: LogRecord<T>) =>\n record.metadata?.error !== undefined &&\n record.metadata.unhandled !== true,\n shouldSendAsBreadcrumb = <T extends Metadata>(record: LogRecord<T>) =>\n false,\n }: Options = {},\n): Handle => {\n return <T extends MetadataWithError>(record: LogRecord<T>) => {\n const { key, level, metadata, extra } = record;\n\n if (shouldSendAsException(record)) {\n const error = metadata?.error || record.message;\n\n const extraData: Record<string, unknown> = { ...metadata, ...extra };\n delete extraData.error;\n\n Sentry.captureException(error, {\n level: mapToSentryLevel[level] || Severity.Error,\n user: getUser(record),\n tags: {\n loggerKey: key,\n ...getTags(record),\n },\n extra: extraData,\n });\n } else if (shouldSendAsBreadcrumb(record)) {\n Sentry.addBreadcrumb({\n level: mapToSentryLevel[level] || Severity.Error,\n category: getBreadcrumbCategory(record),\n type: getBreadcrumbType(record),\n message: record.message,\n data: record.metadata,\n timestamp: record.datetime.getTime(),\n });\n }\n };\n};\n\nexport default class SentryHandler<S extends SentryRequiredMethods>\n implements Handler\n{\n minLevel: Level;\n\n handle: Handle;\n\n constructor(Sentry: string | S, minLevel: Level, options?: Options) {\n this.minLevel = minLevel;\n if (POB_TARGET === 'node' && typeof Sentry === 'string') {\n console.warn(\n 'nightingale-sentry: Passing DSN directly is deprecated, pass Sentry instead and init in your app.',\n );\n SentryNode.init({ dsn: Sentry });\n this.handle = createHandler(SentryNode, options);\n } else {\n this.handle = createHandler<S>(Sentry as S, options);\n }\n }\n}\n"],"names":["mapToSentryLevel","Level","TRACE","Severity","Debug","DEBUG","INFO","Info","NOTICE","Log","WARNING","Warning","ERROR","Error","CRITICAL","Critical","FATAL","Fatal","EMERGENCY","ALL","createHandler","Sentry","getUser","undefined","getTags","getBreadcrumbCategory","getBreadcrumbType","shouldSendAsException","record","metadata","error","unhandled","shouldSendAsBreadcrumb","key","level","extra","message","extraData","captureException","user","tags","loggerKey","addBreadcrumb","category","type","data","timestamp","datetime","getTime","SentryHandler","constructor","minLevel","options","console","warn","SentryNode","init","dsn","handle"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { addBreadcrumb, captureException, captureMessage } from '@sentry/core';
|
|
2
2
|
import type { User } from '@sentry/types';
|
|
3
|
-
import Level from 'nightingale-levels';
|
|
3
|
+
import { Level } from 'nightingale-levels';
|
|
4
4
|
import type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';
|
|
5
5
|
export interface MetadataWithError extends Metadata {
|
|
6
6
|
error?: Error;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,KAAK,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAgB9E,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IACjD,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,iBAAiB,EACpC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KACjB,IAAI,GAAG,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,iBAAiB,EACpC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KACjB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,qBAAqB,CAAC,EAAE,CAAC,CAAC,SAAS,QAAQ,EACzC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KACjB,MAAM,GAAG,SAAS,CAAC;IACxB,iBAAiB,CAAC,EAAE,CAAC,CAAC,SAAS,QAAQ,EACrC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KACjB,MAAM,GAAG,SAAS,CAAC;IACxB,qBAAqB,CAAC,EAAE,CAAC,CAAC,SAAS,iBAAiB,EAClD,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KACjB,OAAO,CAAC;IACb,sBAAsB,CAAC,EAAE,CAAC,CAAC,SAAS,QAAQ,EAC1C,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KACjB,OAAO,CAAC;CACd;AAED,UAAU,qBAAqB;IAC7B,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,cAAc,EAAE,OAAO,cAAc,CAAC;CACvC;AA+CD,MAAM,CAAC,OAAO,OAAO,aAAa,CAAC,CAAC,SAAS,qBAAqB,CAChE,YAAW,OAAO;IAElB,QAAQ,EAAE,KAAK,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;gBAEH,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO;CAYnE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nightingale-sentry",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.7.2",
|
|
4
4
|
"description": "Sentry handler for nightingale",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"nightingale",
|
|
@@ -14,21 +14,23 @@
|
|
|
14
14
|
"directory": "packages/nightingale-sentry"
|
|
15
15
|
},
|
|
16
16
|
"homepage": "https://github.com/christophehurpeau/nightingale",
|
|
17
|
+
"type": "commonjs",
|
|
17
18
|
"engines": {
|
|
18
|
-
"node": "
|
|
19
|
+
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
|
19
20
|
},
|
|
20
21
|
"browserslist": [
|
|
22
|
+
"defaults",
|
|
21
23
|
"> 0.2%",
|
|
22
|
-
"Firefox ESR",
|
|
23
24
|
"not ie < 12",
|
|
24
|
-
"not
|
|
25
|
-
"not
|
|
25
|
+
"not safari < 10",
|
|
26
|
+
"not ios_saf < 10"
|
|
26
27
|
],
|
|
27
|
-
"main": "./index.js",
|
|
28
|
+
"main": "./dist/index-node12.cjs.js",
|
|
28
29
|
"types": "./dist/index.d.ts",
|
|
29
30
|
"module": "./dist/index-browser.es.js",
|
|
30
31
|
"browser": "./dist/index-browser.es.js",
|
|
31
32
|
"exports": {
|
|
33
|
+
"./package.json": "./package.json",
|
|
32
34
|
".": {
|
|
33
35
|
"node": {
|
|
34
36
|
"development": {
|
|
@@ -66,7 +68,7 @@
|
|
|
66
68
|
"build:definitions": "tsc -p tsconfig.build.json",
|
|
67
69
|
"clean": "rm -Rf docs dist test/node6 coverage",
|
|
68
70
|
"lint": "yarn run lint:eslint",
|
|
69
|
-
"lint:eslint": "
|
|
71
|
+
"lint:eslint": "cd ../.. && yarn run eslint --report-unused-disable-directives --resolve-plugins-relative-to . --quiet packages/nightingale-sentry",
|
|
70
72
|
"watch": "pob-watch"
|
|
71
73
|
},
|
|
72
74
|
"prettier": {
|
|
@@ -107,27 +109,17 @@
|
|
|
107
109
|
"@sentry/core": "^5.0.0 || ^6.1.0",
|
|
108
110
|
"@sentry/node": "^5.0.0 || ^6.1.0",
|
|
109
111
|
"@sentry/types": "^5.0.0 || ^6.1.0",
|
|
110
|
-
"nightingale-levels": "^11.
|
|
111
|
-
"nightingale-types": "^11.
|
|
112
|
+
"nightingale-levels": "^11.7.2",
|
|
113
|
+
"nightingale-types": "^11.7.2"
|
|
112
114
|
},
|
|
113
115
|
"devDependencies": {
|
|
114
|
-
"@babel/core": "7.
|
|
115
|
-
"@babel/preset-env": "7.
|
|
116
|
-
"
|
|
117
|
-
"@pob/eslint-config-node": "43.1.0",
|
|
118
|
-
"@pob/eslint-config-typescript": "43.0.0",
|
|
119
|
-
"@typescript-eslint/eslint-plugin": "4.15.0",
|
|
120
|
-
"@typescript-eslint/parser": "4.15.0",
|
|
121
|
-
"babel-preset-latest-node": "5.4.0",
|
|
116
|
+
"@babel/core": "7.16.0",
|
|
117
|
+
"@babel/preset-env": "7.16.4",
|
|
118
|
+
"babel-preset-latest-node": "5.5.1",
|
|
122
119
|
"babel-preset-modern-browsers": "15.0.2",
|
|
123
|
-
"
|
|
124
|
-
"
|
|
125
|
-
"
|
|
126
|
-
"eslint-plugin-node": "11.1.0",
|
|
127
|
-
"eslint-plugin-unicorn": "25.0.1",
|
|
128
|
-
"pob-babel": "26.5.0",
|
|
129
|
-
"rollup": "2.39.0",
|
|
130
|
-
"typescript": "4.1.5"
|
|
120
|
+
"pob-babel": "28.5.0",
|
|
121
|
+
"rollup": "2.60.1",
|
|
122
|
+
"typescript": "4.5.2"
|
|
131
123
|
},
|
|
132
|
-
"gitHead": "
|
|
124
|
+
"gitHead": "00b1ec6c7468b320e268a12eaac70d59a177787b"
|
|
133
125
|
}
|
package/src/index.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type {
|
|
|
7
7
|
import * as SentryNode from '@sentry/node';
|
|
8
8
|
import type { User } from '@sentry/types';
|
|
9
9
|
import { Severity } from '@sentry/types';
|
|
10
|
-
import Level from 'nightingale-levels';
|
|
10
|
+
import { Level } from 'nightingale-levels';
|
|
11
11
|
import type { LogRecord, Handle, Metadata, Handler } from 'nightingale-types';
|
|
12
12
|
|
|
13
13
|
const mapToSentryLevel: Record<Level, Severity> = {
|
|
@@ -101,7 +101,8 @@ const createHandler = <S extends SentryRequiredMethods>(
|
|
|
101
101
|
};
|
|
102
102
|
|
|
103
103
|
export default class SentryHandler<S extends SentryRequiredMethods>
|
|
104
|
-
implements Handler
|
|
104
|
+
implements Handler
|
|
105
|
+
{
|
|
105
106
|
minLevel: Level;
|
|
106
107
|
|
|
107
108
|
handle: Handle;
|