Стендап Сьогодні 📢 Канал в Telegram @stendap_sogodni

🤖🚫 Контент вільний від AI. Цей пост на 100% написаний людиною, як і все на моєму блозі. Насолоджуйтесь!

10.10.2024

Пост нелюбові до Sentry

Ні, з одного боку я Sentry дуже люблю та додаю до всіх своїх проєктів. Раніше були конкуренти, а тепер не залишилось — принаймні для мене. Особливо мені як поліглоту подобається підтримка всіх уявних мов та фреймворків. А ще вони відкрили код власного сервера, тож його можна розгорнути для себе та не платити.. кхм, тобто замість тарифів Sentry платити системному адміністратору. В мене в самого колись був на сервері Errbit - це був такий альтернативний бекенд для Airbrake, коли він був ще Hoptoad.

Але… Гадаю, Sentry створив для мене більше проблем за всі інші сервіси. Що особливо обурює, так це те що Sentry виконує абсолютно побічну функцію та, на перший погляд, невелику: це ж лише збирачка помилок!

Культура розробки Sentry нагадує молодий проєкт з відкритим кодом, а не недешевий продукт B2B. Зміни вносяться несподівано та документація не завжди збігається.

З Sentry для Ruby в нас була ситуація, що нова версія вступала в нескінченну рекурсію під час збору контексту. Та виводила з ладу весь сервер! Чого збирачка помилок ніколи не повинна робити, то це створювати нові помилки.

Для JavaScript є з десяток пакетів, які покривають різні обставини: Node.js, браузер, React, React Native… якщо у вас в проєкті є декілька “смаків” JavaScript, бажаю успіхів в поєднанні пакетів. Причому звісно ж проблеми доведеться побачити не відразу, а коли відбудеться збіг обставин.

От, останнє що трапилось — вони оновили всі пакети, окрім @sentry/integrations. Та він, як бачу, взагалі зник з репозиторію. Але офіційно цей пакет все ще радять використовувати для React Native. Хоч він не працює: щось помінялося в аргументах функцій. Ой, а документацію планують оновити, вже чотири місяці як. Я поки придумав тільки повністю прибрати ті інтеграції — з втратою важливого функціоналу, але принаймні без помилок.

Знаєте щось дійсно краще? Бо я майже готовий переїхати.