File tree Expand file tree Collapse file tree 8 files changed +30
-39
lines changed Expand file tree Collapse file tree 8 files changed +30
-39
lines changed Original file line number Diff line number Diff line change 66import { BrowserGlobalHandlerPlugin } from "./plugins/BrowserGlobalHandlerPlugin.js" ;
77import { BrowserLifeCyclePlugin } from "./plugins/BrowserLifeCyclePlugin.js" ;
88import { BrowserWrapFunctions } from "./plugins/BrowserWrapFunctions.js" ;
9+ import { BrowserModuleInfoPlugin } from "./plugins/BrowserModuleInfoPlugin.js" ;
910import { BrowserErrorParser } from "./services/BrowserErrorParser.js" ;
10- import { BrowserModuleCollector } from "./services/BrowserModuleCollector.js" ;
1111import { BrowserRequestInfoCollector } from "./services/BrowserRequestInfoCollector.js" ;
1212import { BrowserLocalStorage } from "./storage/BrowserLocalStorage.js" ;
1313import { BrowserFetchSubmissionClient } from "./submission/BrowserFetchSubmissionClient.js" ;
@@ -18,13 +18,13 @@ export class BrowserExceptionlessClient extends ExceptionlessClient {
1818 if ( configurationOrApiKey ) {
1919 config . services . storage = new BrowserLocalStorage ( ) ;
2020 config . services . errorParser = new BrowserErrorParser ( ) ;
21- config . services . moduleCollector = new BrowserModuleCollector ( ) ;
2221 config . services . requestInfoCollector = new BrowserRequestInfoCollector ( ) ;
2322 config . services . submissionClient = new BrowserFetchSubmissionClient ( config ) ;
2423
2524 config . addPlugin ( new BrowserGlobalHandlerPlugin ( ) ) ;
2625 config . addPlugin ( new BrowserLifeCyclePlugin ( ) ) ;
2726 config . addPlugin ( new BrowserWrapFunctions ( ) ) ;
27+ config . addPlugin ( new BrowserModuleInfoPlugin ( ) ) ;
2828 }
2929
3030 await super . startup ( configurationOrApiKey ) ;
Original file line number Diff line number Diff line change 11export { BrowserGlobalHandlerPlugin } from "./plugins/BrowserGlobalHandlerPlugin.js" ;
22export { BrowserLifeCyclePlugin } from "./plugins/BrowserLifeCyclePlugin.js" ;
33export { BrowserWrapFunctions } from "./plugins/BrowserWrapFunctions.js" ;
4+ export { BrowserModuleInfoPlugin } from "./plugins/BrowserModuleInfoPlugin.js" ;
45export { BrowserErrorParser } from "./services/BrowserErrorParser.js" ;
5- export { BrowserModuleCollector } from "./services/BrowserModuleCollector.js" ;
66export { BrowserRequestInfoCollector } from "./services/BrowserRequestInfoCollector.js" ;
77export { BrowserLocalStorage } from "./storage/BrowserLocalStorage.js" ;
88export { BrowserFetchSubmissionClient } from "./submission/BrowserFetchSubmissionClient.js" ;
Original file line number Diff line number Diff line change 11import {
2+ EventPluginContext ,
23 getHashCode ,
3- IModuleCollector ,
4+ IEventPlugin ,
5+ KnownEventDataKeys ,
46 ModuleInfo ,
57 parseVersion ,
8+ PluginContext
69} from "@exceptionless/core" ;
710
8- export class BrowserModuleCollector implements IModuleCollector {
9- public getModules ( ) : ModuleInfo [ ] {
11+ export class BrowserModuleInfoPlugin implements IEventPlugin {
12+ public priority : number = 50 ;
13+ public name : string = "BrowserModuleInfoPlugin" ;
14+ private _cachedModules : ModuleInfo [ ] = null ;
15+
16+ public startup ( context : PluginContext ) : Promise < void > {
17+ if ( ! this . _cachedModules ) {
18+ this . _cachedModules = this . getModules ( ) ;
19+ }
20+
21+ return Promise . resolve ( ) ;
22+ }
23+
24+ public run ( context : EventPluginContext ) : Promise < void > {
25+ const error = context . event . data [ KnownEventDataKeys . Error ] ;
26+ if ( this . _cachedModules ?. length > 0 && ! error ?. modules ) {
27+ error . modules = this . _cachedModules ;
28+ }
29+
30+ return Promise . resolve ( ) ;
31+ }
32+
33+ private getModules ( ) : ModuleInfo [ ] {
1034 if ( ! document || ! document . getElementsByTagName ) {
1135 return null ;
1236 }
Original file line number Diff line number Diff line change @@ -12,7 +12,6 @@ import { DefaultEventQueue } from "../queue/DefaultEventQueue.js";
1212import { IEventQueue } from "../queue/IEventQueue.js" ;
1313import { IEnvironmentInfoCollector } from "../services/IEnvironmentInfoCollector.js" ;
1414import { IErrorParser } from "../services/IErrorParser.js" ;
15- import { IModuleCollector } from "../services/IModuleCollector.js" ;
1615import { IRequestInfoCollector } from "../services/IRequestInfoCollector.js" ;
1716import { ISubmissionClient } from "../submission/ISubmissionClient.js" ;
1817import { guid } from "../Utils.js" ;
@@ -64,7 +63,6 @@ export class Configuration {
6463 errorParser ?: IErrorParser ,
6564 lastReferenceIdManager : ILastReferenceIdManager ,
6665 log : ILog ,
67- moduleCollector ?: IModuleCollector ,
6866 requestInfoCollector ?: IRequestInfoCollector ,
6967 submissionClient ?: ISubmissionClient ,
7068 storage : IStorage ,
Original file line number Diff line number Diff line change @@ -31,7 +31,6 @@ export { EnvironmentInfoPlugin } from "./plugins/default/EnvironmentInfoPlugin.j
3131export { ErrorPlugin } from "./plugins/default/ErrorPlugin.js" ;
3232export { EventExclusionPlugin } from "./plugins/default/EventExclusionPlugin.js" ;
3333export { HeartbeatPlugin } from "./plugins/default/HeartbeatPlugin.js" ;
34- export { ModuleInfoPlugin } from "./plugins/default/ModuleInfoPlugin.js" ;
3534export { ReferenceIdPlugin } from "./plugins/default/ReferenceIdPlugin.js" ;
3635export { RequestInfoPlugin } from "./plugins/default/RequestInfoPlugin.js" ;
3736export { SubmissionMethodPlugin } from "./plugins/default/SubmissionMethodPlugin.js" ;
@@ -46,7 +45,6 @@ export type { IEventQueue } from "./queue/IEventQueue.js";
4645
4746export type { IEnvironmentInfoCollector } from "./services/IEnvironmentInfoCollector.js" ;
4847export type { IErrorParser } from "./services/IErrorParser.js" ;
49- export type { IModuleCollector } from "./services/IModuleCollector.js" ;
5048export type { IRequestInfoCollector } from "./services/IRequestInfoCollector.js" ;
5149
5250export { InMemoryStorage } from "./storage/InMemoryStorage.js" ;
Original file line number Diff line number Diff line change @@ -4,7 +4,6 @@ import { DuplicateCheckerPlugin } from "./default/DuplicateCheckerPlugin.js";
44import { EnvironmentInfoPlugin } from "./default/EnvironmentInfoPlugin.js" ;
55import { ErrorPlugin } from "./default/ErrorPlugin.js" ;
66import { EventExclusionPlugin } from "./default/EventExclusionPlugin.js" ;
7- import { ModuleInfoPlugin } from "./default/ModuleInfoPlugin.js" ;
87import { RequestInfoPlugin } from "./default/RequestInfoPlugin.js" ;
98import { SubmissionMethodPlugin } from "./default/SubmissionMethodPlugin.js" ;
109import { EventPluginContext } from "./EventPluginContext.js" ;
@@ -63,7 +62,6 @@ export class EventPluginManager {
6362 config . addPlugin ( new ErrorPlugin ( ) ) ;
6463 config . addPlugin ( new DuplicateCheckerPlugin ( ) ) ;
6564 config . addPlugin ( new EventExclusionPlugin ( ) ) ;
66- config . addPlugin ( new ModuleInfoPlugin ( ) ) ;
6765 config . addPlugin ( new RequestInfoPlugin ( ) ) ;
6866 config . addPlugin ( new EnvironmentInfoPlugin ( ) ) ;
6967 config . addPlugin ( new SubmissionMethodPlugin ( ) ) ;
Load Diff This file was deleted.
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments