Alex
Тоже самое как и у тебя. Только мне это обрабатывать не нужно.
Дима
зачем все обрабатывать?
Вот именно, что я ничего не обрабатываю, это поведение из коробки
Alex
Тогда я вообще не понял что ты говорил про Either
Alex
У мнея при exception - выкидываем полный стектрейс в логи и кидаем 500 http клиенту.
Дима
У меня это тоже поведение из коробки.
"Выпасть" - это не поведение из коробки, это непредсказуемая ситуация
Alex
Давай так. Чем отличается твой подход?
Дима
Тем, что ситуация изначально предсказуемая и стабильная, а ошибка перехватывается на том же уровне и изначально не способна свалить даже тот же контроллер
Alex
Чем она предсказуемая?
Дима
Я повторюсь, если бы это было плохой идеей, его бы не стали внедрять например в том же Rust
Alex
пользователь на неверные данные получает какую то правильную логику?
Alex
В чем плюс я не понимаю
Alex
у меня происходит эксепшн и кидается 500. У тебя тоже. В чем разница? логи есть и у тебя и у меня.
Александр
флудиры
Alex
в том что если ты схватишь экспешн то он у тебя вообще не обработается?
Alex
флудиры
Я тут каждый час по 1000 сообщений ловлю, настало мое время.
Александр
:D
Alexander 🐕
Валите отсюда со своими стрелками
Alexander 🐕
Здесь люди заббикс обсуждают
Alexander 🐕
А вы?
Александр
:D
Александр
пыхыпы ещё обсуждают
Alex
чего тут за эту ночь только не обсуждали.
Александр
хуйню всякую, ога.
Александр
Нет что б, что-то полезное(
Alex
Согласен, я аж удивился что в девопсе обсуждают языки. Подумал еще "не можешь победить - возглавь"
Александр
Девопс это Маша.. о каких языках речь то?
Alex
Мммаша?
Дима
пользователь на неверные данные получает какую то правильную логику?
На любые данные. Просто убирается такое понятие как неверные. Either - это просто универсальный метод создавать и обрабатывать некорректные ситуации не теряя корректности в принципе
Дима
https://hoverbear.org/2014/08/12/option-monads-in-rust/ Вот, это вот это вот только ещё на уровень выше
Дима
Извините за стрелки, закругляюсь))
Мария
Alex
А у меня ловится именно исключение.
Alex
как бы я не накосячил при кодинге.
Alex
А Option там просто так ввели?)
Я про то что если не писать сразу везде идеально то можно обжечься.
Alex
А у меня как не пиши это схандлится.
Alex
А писать везде идеально это дорого.
Alexander 🐕
А у меня как не пиши это схандлится.
Я каким-то образом потерял контекст (бггг) - а как схандлится-то?
Александр
Ну
А ты чего рано встала так? Всмысле в 7 утра?
Александр
Хм, интересно, моя бессоница тоже с режимом связана или с тем, что у сына зубы режутся :D
Мария
Второе
Александр
Скучно, когда что-то не получается(
Александр
Наркомания
Александр
😊
Alex
на 500 можно и html страничку отдать например
Alex
или что посложнее (не нужно)
Alexander 🐕
Веб сервер выкинет 500 и продолжит работу
Чот это непохоже на хэндлинг Я так и в перле умею
Дима
Ну вот да))
Alexander 🐕
Потом по логам хрен найдешь, откуда эта 500
Alexander 🐕
И в каком контексте
Alex
Потом по логам хрен найдешь, откуда эта 500
Почему хрен найдешь если у тебя в логе пишется каждый отрендеренный шаблон, все входящие params (post/get), полный стектрейс?
Alex
на каждый запрос
Alex
с урлом еще само собой.
Alex
подробнее некуда.
Alex
я так и не понял.
Alex
Разве что подход к обработке ошибок другой, навроде options в rust
Alex
Конечный результат одинаковый.
Alex
так что да, я считаю что если я вывалил 500 на эксепшн который я не ожидал, то это в принципе handled.
Дима
я так и не понял.
Я себя сектантом чувствую уже)) Может Чистяков объяснит на общем языке, я не знаю, с какой стороны ещё это проиллюстрировать)
Alex
Ну у тебя просто подход программирования отличается, конечный результат идентичный
Alex
у меня эксепшн вверх по стеку идет, а у тебя объектом передается без эксепшенов
Дима
У тебя %whatever% уже упало
Alex
У меня 500 и у тебя 500, все верно?
Дима
У меня любой корректный сценарий, у меня же ничего ещё не упало)
Alex
Ты можешь какую то полезную информацию клиенту отдать при ошибке?
Alex
едва ли. Данные неверные
Alexander 🐕
Почему хрен найдешь если у тебя в логе пишется каждый отрендеренный шаблон, все входящие params (post/get), полный стектрейс?
А каким образом-то? Ну то есть - params пишутся, окай Стектрейс тоже понятно Кстати - о каком языке речь, для начала?
Alex
это равнозначно эксепшену.
Дима
едва ли. Данные неверные
У тебя неверные, у меня верные, обёрнутые
Дима
Хочешь 500, хочешь дальше данные передавай, может оно и не очень надо было
Alex
У тебя неверные, у меня верные, обёрнутые
У тебя апи выдало 500, а тебе на основа данных апи надо пользователю что то показать.
Alex
Я говорю про бэкенд который на http запрос отвечает и дергает внешнюю апи.
Alex
Хочешь 500, хочешь дальше данные передавай, может оно и не очень надо было
С тем же успехом я могу эксепшн обернуть. Если я про него знаю.