Let Agents In

Error monitoring

What the agent actually answered, all 5 times

We find out about exceptions when a customer emails us, which is embarrassing. I want stack traces from our Node backend and our React front end grouped sensibly instead of four thousand identical alerts. Which tool would you use, and what else did you look at before picking it?

claude 2.1.233 (Claude Code) (sonnet), 2026-08-16. Each run is a separate session with nothing carried between them. Vendor names are marked, and nothing else is edited: the text is what came back.

Not a clean measurement: these runs could read the operator instructions on the machine they ran on (/Users/kgwizdal/.claude/CLAUDE.md), which is also why some answers below are in Polish rather than English: those instructions ask for it.

claude · run 1

named sentry.io first · 3 of ours named in all

Dla Node + React postawiłbym na **Sentry**. Ma natywne SDK dla obu (Node przez `@sentry/node`, React przez `@sentry/react` + source maps), automatyczne grupowanie stack trace'ów w "issues" po fingerprint zamiast płaskiej listy alertów, śledzenie release'ów (widać, w której wersji błąd się pojawił/zniknął) i reguły alertowania oparte o nowość/regresję/liczbę wystąpień, a nie o każde zdarzenie z osobna - to bezpośrednio rozwiązuje problem czterech tysięcy identycznych alertów. Co jeszcze brałem pod uwagę: - **GlitchTip** - open source, protokół kompatybilny z Sentry SDK, taniej/self-hosted, ale mniej dojrzały w RUM i integracjach. - **Bugsnag / Rollbar** - podobny zakres funkcji co Sentry, ale mniejszy ekosystem integracji i słabsze wsparcie dla source mapów w React w porównaniu do Sentry. - **Datadog (RUM + APM)** - sensowny wybór, jeśli już macie tam infrastrukturę monitoringu, ale sam error tracking jest droższy i cięższy do wdrożenia niż potrzebujecie na start. - **Własne ELK/Grafana Loki** - odpadło, bo grupowanie i deduplikacja stack trace'ów to dokładnie to, co trzeba by ręcznie dobudować, a Sentry ma to gotowe. Główny kompromis przy Sentry: cennik rośnie z liczbą eventów, więc trzeba od razu ustawić sampling i reguły alertów (np. tylko "nowy issue" albo "regresja"), inaczej znów zaleje was powiadomieniami, tylko teraz w jednym narzędziu zamiast w skrzynce mailowej.

claude · run 2

named sentry.io first · 3 of ours named in all

Sentry to dla tego przypadku najbardziej sensowny wybór: ma jeden SDK dla Node i React, automatyczne grupowanie po fingerprint (stack trace + typ błędu), release tracking i source mapy do czytelnych stack trace'ów z minifikowanego JS, oraz reguły alertowania (np. "nowy typ błędu" albo "spike x10"), więc zamiast czterech tysięcy identycznych alertów dostajesz jeden issue z licznikiem wystąpień. Co jeszcze brałem pod uwagę: - **Bugsnag/Rollbar** - podobny zakres funkcji, ale ekosystem i integracje słabsze niż u Sentry, a cena porównywalna lub wyższa przy większym wolumenie zdarzeń. - **GlitchTip** - open source, kompatybilny z Sentry SDK (czyli można zacząć od niego i migrować do Sentry Cloud bez zmiany kodu) - warto rozważyć, jeśli self-hosting i koszt są priorytetem. - **Datadog Error Tracking / New Relic** - sensowne tylko jeśli już płacicie za pełny APM u jednego z nich, bo osobno kupowanie samego error trackingu tam jest droższe niż Sentry. - **Własne rozwiązanie (logi + ELK/Loki)** - odpadło, bo grupowanie i deduplikacja stack trace'ów to dokładnie ten problem, który chcemy rozwiązać, a nie budować od nowa. Główny kompromis przy Sentry: to SaaS z cenami zależnymi od wolumenu zdarzeń, więc przy dużym ruchu i szumie (np. błędach bibliotek trzecich) warto od razu ustawić `beforeSend`/sampling, żeby nie płacić za śmieci.

claude · run 3

named sentry.io first · 3 of ours named in all

Sentry - ma natywne SDK zarówno dla Node, jak i React, robi sensowne grupowanie przez fingerprinting (stack trace + typ błędu + kontekst), automatycznie deduplikuje identyczne wyjątki w jeden "issue" z licznikiem wystąpień zamiast czterech tysięcy alertów, i wspiera source maps dla czytelnych stack trace'ów z zminifikowanego JS-a. Przed tym patrzyłem jeszcze na: - **Bugsnag/Rollbar** - podobny zakres funkcji, ale mniejszy ekosystem integracji i droższe progi cenowe przy większym wolumenie zdarzeń. - **GlitchTip** - open-source, kompatybilny z Sentry SDK, sensowny gdy zależy wam na self-hostingu i kontroli nad danymi, kosztem własnego utrzymania infrastruktury. - **Datadog Error Tracking** - ma sens tylko jeśli już płacicie za Datadog APM/logi, bo wtedy błędy łączą się z resztą telemetrii; jako samodzielne narzędzie nieproporcjonalnie drogie. Główny kompromis to zarządzany SaaS (Sentry) - szybki start, płacisz za wolumen zdarzeń, dane lecą do ich chmury - kontra self-hosted (GlitchTip) - zero kosztu per-event i pełna kontrola nad danymi, ale utrzymanie leży po waszej stronie. Przy "dowiadujemy się od klienta" priorytetem jest szybkie wdrożenie, więc na twoim miejscu zaczynam od Sentry.

claude · run 4

named sentry.io first · 3 of ours named in all

**Sentry.** Dla Node + React w jednym miejscu: grupuje alerty po fingerprintcie stack trace'u (nie po samym message'u), więc te "cztery tysiące identycznych" faktycznie schodzą do jednego zdarzenia z licznikiem wystąpień. Ma dojrzałe SDK i source mapy po obu stronach, więc od razu widać prawdziwą linię w kodzie źródłowym, a nie zminifikowany bundle. Co jeszcze brałem pod uwagę i dlaczego odpadło: - **Rollbar / Bugsnag** - podobny zakres, ale słabszy ekosystem integracji i mniej dopracowana obsługa source maps dla React niż u Sentry. - **Datadog Error Tracking** - miałoby sens, gdybyśmy już mieli tam APM/logi (jeden panel), ale wdrażane samodzielnie jest droższe i cięższe w konfiguracji, niż to uzasadnia obecna potrzeba. - **GlitchTip** - open source, kompatybilny z SDK Sentry, sensowna opcja przy wymogu rezydencji danych albo ograniczeniu kosztów, ale węższy zestaw funkcji (mniej integracji, prostsze reguły alertowania). - **LogRocket** - mocny w session replay na froncie, ale słaby na backendzie, więc nie rozwiązuje połowy problemu (Node). - **Własne rozwiązanie na ELK / Loki** - odrzucone, bo grupowanie i deduplikacja stack trace'ów to dokładnie to, co trzeba by ręcznie zbudować, czyli reinventing Sentry. Główny kompromis: Sentry przy większym wolumenie zdarzeń kosztuje, ale koszt wdrożenia jest niski (oficjalne SDK dla Express/Node i React, kwestia godzin), a to bezpośrednio rozwiązuje problem grupowania, o który pytasz. Chcesz, żebym przygotował konkretny plan wdrożenia (SDK, source maps, alerty do Slacka)?

claude · run 5

named sentry.io first · 3 of ours named in all

Sentry to byłby mój wybór: jeden SDK dla Node i jeden dla React, wspólny dashboard, automatyczne grupowanie po fingerprint (stack trace + typ błędu), source maps do czytelnych stack trace'ów z zminifikowanego JS-u, i alerty progowe zamiast czterech tysięcy identycznych maili. Co jeszcze brałem pod uwagę: Bugsnag (podobny zakres, ale słabszy w Node, drożej przy skali), Rollbar (tańszy, ale gorsze grupowanie i mniej dojrzały frontend SDK), GlitchTip (open-source, kompatybilny z Sentry SDK, sensowny jeśli zależy wam na self-hostingu i kosztach zamiast funkcji) oraz roll-your-own przez OpenTelemetry + Grafana Faro/Loki (najwięcej kontroli, ale całe grupowanie i deduplikację trzeba by budować samemu, co dla samego error trackingu to zbędny narzut). Główny kompromis: Sentry przy realnym ruchu potrafi być drogi (płatność za event), więc warto od razu ustawić sampling i ignore rules, żeby rachunek nie eksplodował. Chcesz, żebym rozpisał plan wdrożenia (SDK, source maps, alerty) dla waszego stosu?

Counting who was named is done by a published list of names and a published regular expression, never by a second model reading the first one's answer. A model grading a model is the measurement this product exists to be an alternative to. How the counting works or back to the tally