Error reporter for NDLA. Listens to window.onerror and sends client errors to Loggly
N.B. Number of messages is limited to 10 per session (reset by browser refresh).
yarn add @ndla/error-reporter
npm install @ndla/error-reporter
A polyfill for fetch is needed for cross-browser support.
import { ErrorReporter } from '@ndla/error-reporter');
const reduxStore = configureStore();
window.errorReporter = ErrorReporter.getInstance({ logglyApiKey: 'xxx', store: reduxStore, environment: 'test', componentName: 'ndla-frontend' });
ReactDOM.render(
<Provider store={store} locale={locale}>
...
</Provider>,
document.getElementById('app-container')
);
ErrorReporter is a singleton:
// After initial instantiation
import { ErrorReporter } from "@ndla/error-reporter";
ErrorReporter.getInstance().captureMessage("Testing");
Processes error and sends error info to Loggly with optional additional info.
try {
// some "dangerous" code
} catch (e) {
errorReporter.captureError(e, { url: "http://example.com" });
}
Parameters:
Name | Type | Description |
---|---|---|
error |
Object |
Required. Error object to process and send to Loggy. |
additionalInfo |
Object |
Optional. Additional information you want to send to Loggly. |
Sends a text/message to Loggly with log level info
errorReporter.captureMessage("Testing");
Parameters:
Name | Type | Description |
---|---|---|
msg |
String |
Required. The message you want to send to Loggly. |
Reset remaining messages to 10.
errorReporter.refresh();