Skip to content

Commit

Permalink
[Reporting] Update chromium exit behaviour (#113544) (#114465)
Browse files Browse the repository at this point in the history
* move uncaught exception out of exit$

* reintroduce original error, but as a log instead

* change log level: error -> warning. also update copy to make it explicit that the error will be ignored

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
  • Loading branch information
jloleysens and kibanamachine authored Oct 11, 2021
1 parent 41b4223 commit a176caa
Showing 1 changed file with 13 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,17 @@ export class HeadlessChromiumDriverFactory {
})
);

const uncaughtExceptionPageError$ = Rx.fromEvent<Error>(page, 'pageerror').pipe(
map((err) => {
logger.warning(
i18n.translate('xpack.reporting.browsers.chromium.pageErrorDetected', {
defaultMessage: `Reporting encountered an uncaught error on the page that will be ignored: {err}`,
values: { err: err.toString() },
})
);
})
);

const pageRequestFailed$ = Rx.fromEvent<puppeteer.HTTPRequest>(page, 'requestfailed').pipe(
map((req) => {
const failure = req.failure && req.failure();
Expand All @@ -230,7 +241,7 @@ export class HeadlessChromiumDriverFactory {
})
);

return Rx.merge(consoleMessages$, pageRequestFailed$);
return Rx.merge(consoleMessages$, uncaughtExceptionPageError$, pageRequestFailed$);
}

getProcessLogger(browser: puppeteer.Browser, logger: LevelLogger): Rx.Observable<void> {
Expand Down Expand Up @@ -265,21 +276,10 @@ export class HeadlessChromiumDriverFactory {
})
);

const uncaughtExceptionPageError$ = Rx.fromEvent<Error>(page, 'pageerror').pipe(
mergeMap((err) => {
return Rx.throwError(
i18n.translate('xpack.reporting.browsers.chromium.pageErrorDetected', {
defaultMessage: `Reporting encountered an error on the page: {err}`,
values: { err: err.toString() },
})
);
})
);

const browserDisconnect$ = Rx.fromEvent(browser, 'disconnected').pipe(
mergeMap(() => Rx.throwError(getChromiumDisconnectedError()))
);

return Rx.merge(pageError$, uncaughtExceptionPageError$, browserDisconnect$);
return Rx.merge(pageError$, browserDisconnect$);
}
}

0 comments on commit a176caa

Please sign in to comment.