170 похожих чатов

Привет, вопрос по поводу прокидывания наверх ошибок. есть аппка типо слушает

блокчейн и при новом ивенте делает определённые сложные действия. если где-то внутри возникла ошибка (например от блокчейн клиента или шото ещё), то мы просто возвращаём её и так постепенно постепенно идём на самый верх и пишем в логгер типа
2022.01.01 13:37 [ERROR] listen error: {err}

и мы не врапаем ошибки. это оказалось неинформативным, ибо мы не можем понять откуда ошибка, куда смотреть шо где когда с кем и почему. но враппать на каждом божем уровне тоже походу неочень, ибо не представляю как в больших проектах, где уровень вложенности например 50, читать эту матрёшку

у нас пока что вложенность где-то 5-6 и пока что враппать может быть нормально, но когда займёмся рефакторингом, боюсь, что уровень вложенности сильно возрастёт.

может ест ькакие-то другие практики прокидывания ошибок наверх и чтобы в логах можно было понять шо откуда с кем и почему?)
может не надо прям на каждом уровне враппать например, а ток на важных, с которых сразу понятно будет откуда растут ноги

2 ответов

10 просмотров

попробуйте добавлять информацию на уровне бизнес-логики т.к она обычно знает всю информацию про запрос

nacknime- Автор вопроса
Александр Костюченко
попробуйте добавлять информацию на уровне бизнес-л...

а, походу уловил суть. ну то есть надо всё таки в высшеуровневой фукнции добавлять инфу, верно? прост в низкоуровневой тоже есть нужная информация и в дальшейнем вроде я не вижу кейсов когда может понадобится и другая инфа, которой не будет в низкоуровневой функции. хотя, не знаю(

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
61
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Привет всем. Не знаю, удачный ли чатик я выбрал для вопроса, но он как будто в целом про концепцию фп и конкретно про Haskell. Прочитал, что в целом в мире фп нет идеи мутабел...
Gellert Cringewald
15
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Всем привет! поделитесь, пож-та, как кто дебажил / решал проблему с 504 Time out ошибкой от nginx, когда стучишься на свой vapor сервер? в логах /var/log/nginx/error.log е...
Paul
24
Как добавить ссылку в Быстрый доступ в Проводнике windows 10? Нашёл, как на power shell сделать, но может есть способ через Дельфи?
А
31
@helgispbru @Dreamer_0x01 @Pathologic93 @webber_12 Не уверен, что вам всем это жутко интересно, но в продолжение недавнего диалога отправлю свои наброски. Хочу понять, правил...
Андрей [aharito] Харитонов
13
Карта сайта