# Browser error reporting

A step of the [Cloud application](https://gradus.kazet.blog/tree/cloud-application) tree on Gradus, in the Observability area: Logs, metrics, traces, alerts.

Page: https://gradus.kazet.blog/tree/cloud-application/step/browser-errors

Catch the errors that happen in your users' browsers, with readable stack traces and no personal data.

Usually comes after: [Log aggregation](https://gradus.kazet.blog/tree/cloud-application/step/log-aggregation).

## Prompt for your AI assistant

```
Read the frontend decision record in docs/decisions. Recommend a way to collect errors from the browser, such as Sentry, the cloud's own error reporting or an endpoint of this service that writes to the central logs, stop for my pick and write the next docs/decisions record. Report uncaught errors and rejected promises with the release, the page and the browser, never the query, form contents or email addresses. Upload source maps to the tool at build time rather than serving them publicly. Allow its host in the Content Security Policy if there is one and treat it like analytics if it sets cookies. Throw a test error from the deployed site, find it with a readable stack trace and add an alert for when errors jump after a release.
```

Every step of the tree: https://gradus.kazet.blog/tree/cloud-application/llms.txt
