@gogolang

Страница 1102 из 1630
Kirill
27.05.2018
18:20:37
чтобы фронтендерам не было скучно?
Я, как фулстэк, делаю весело всем)

Мерлин
27.05.2018
18:21:07
Sergey
27.05.2018
18:21:12
пришло сообщение с типом ошибки и строка ошибки.
в таком случае достаточно просто типа ошибки, согласитесь

-> возвращаем числа в качестве ошибок

Google
Dmitry
27.05.2018
18:21:25
и потом парсить строку?
НАХУЙ? извините за мат

Sergey
27.05.2018
18:21:39
НАХУЙ? извините за мат
а зачем вообще строка тогда?)

Dmitry
27.05.2018
18:21:55
строка для пользователя , тип для машины

Мерлин
27.05.2018
18:22:09
НАХУЙ? извините за мат
если у тебя запрос выполнился частично, то как узнать что пошло не так?

Sergey
27.05.2018
18:22:12
в Си с испокон веков так делают)

Мерлин
27.05.2018
18:22:38
по типу ошибки
у тебя есть скажем 16! комбинаций ошибок твои действия?

Dmitry
27.05.2018
18:22:56
или ты такой - ой у меня транзакция отвалилась посередине - мне надо начать с места где она отвалилась ?

Dmitry
27.05.2018
18:23:13
нет, ты перестартуешь всю транзакцию все равно

Daniel
27.05.2018
18:23:42
кстати надо заиспользовать )
я использовал однажды. когда у меня данные с кластера на кластер ехали, 418 от нового означало "у меня нет, глянь на старом"

Dmitry
27.05.2018
18:23:52
у тебя есть скажем 16! комбинаций ошибок твои действия?
бью архитектора ногами и использую полиморфизм

Google
Мерлин
27.05.2018
18:23:54
или ты такой - ой у меня транзакция отвалилась посередине - мне надо начать с места где она отвалилась ?
"оу, вы там хотели поднять восемь сервисов, два запустились, один нетЭ

пожалуйста, расскажи )

Sergey
27.05.2018
18:24:29
как полиморфизм здесь поможет?
потому что священное ООП!

Kirill
27.05.2018
18:24:36
в Си с испокон веков так делают)
Блэт Люди испокон веков самовыпиливаются, нам тоже нужно?

Sergey
27.05.2018
18:24:48
Dmitry
27.05.2018
18:24:57
Мерлин
27.05.2018
18:25:14
бью фронтендера ногами и использую инкапсуляцию бью маркетолога ногами и использую наследование

Sergey
27.05.2018
18:25:16
и что пользователь сделает?)

Мерлин
27.05.2018
18:25:22
словарь универсальных ответов

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

Dmitry
27.05.2018
18:25:46
если метод который поднимает конкретный сервер не смог запустить его, то родительский метод темболее не сможет запустить его

Sergey
27.05.2018
18:25:54
для этого тебе уже не подходит строковая ошибка
да ладно, пользователь же распарсит глазами ошибку

и сам поймёт, какие не запустились, и запустит вручную просто

Kirill
27.05.2018
18:26:21
Блэт Люди испокон веков самовыпиливаются, нам тоже нужно?
(это не призыв к действию, ответственность за неправильную трактовку не несу)

Мерлин
27.05.2018
18:26:22
да ладно, пользователь же распарсит глазами ошибку
дело не в этом, а в том, чтобы не делать ретрай/или отдавать 500 на неё

Dmitry
27.05.2018
18:26:31
для этого тебе уже не подходит строковая ошибка
это почему ? "2 сервера стартануло, 6 нет, причины ошщибок дальше"

Google
Sergey
27.05.2018
18:27:17
а для разных машин разные?

Dmitry
27.05.2018
18:27:48
окей. думаете умные ? давайте мне ваш алгоритм действий для этого случая

Мерлин
27.05.2018
18:28:24
а для разных машин разные?
очевидно что нужно делать одну ошибку если 1 машина поднялась, а две нет, другую — если 2 машины поднялись, а 1 нет, а третью — если все три мертвы

Тарас
27.05.2018
18:28:59
Почему тут ещё не банят за слово «дженерики»?))
потому что это слово не существует

Daniel
27.05.2018
18:29:54
Почему тут ещё не банят за слово «дженерики»?))
фил отвлекся на роскомпозор. это он жесткую политику проводил...

Kirill
27.05.2018
18:31:17
Если вы все делаете правильно, то не стартанут или все тачки, или стартанут все, в рамках одного работающего ДЦ

Daniel
27.05.2018
18:32:11
Если вы все делаете правильно, то не стартанут или все тачки, или стартанут все, в рамках одного работающего ДЦ
как минимум "кончились деньги" и "кончилась память" не зависят от того, правильно ли мы все делаем

Kirill
27.05.2018
18:32:32
фил отвлекся на роскомпозор. это он жесткую политику проводил...
С такими темпами, я сегодня и продолжу его дело

Мерлин
27.05.2018
18:32:45
окей. думаете умные ? давайте мне ваш алгоритм действий для этого случая
если со стороны какого-нибудь "поднимателя сервисов", то примерно такЖ делаю запрос если таймаут — делаю ретрай с задержками если сдох токен — иду за новым если невалидный квери или форма — отдать пользователю если скажем закончились какие-нибудь порты на опредёлнном хосте — выбираю другой хост закончились деньги — лезу на биллинг и т.д.

Мерлин
27.05.2018
18:33:00
а ведь в моём случае есть ещё и десктопный клиент на го

Мерлин
27.05.2018
18:33:15
где нужно обрабатывать вообще всё это, а не сабсет

Если вы все делаете правильно, то не стартанут или все тачки, или стартанут все, в рамках одного работающего ДЦ
это смотря как нас устраивает бывает что выполнить часть лучше чем ничего

поднятие виртуалок — как раз это

дорого

stixlink
27.05.2018
18:34:23
Всем привет! подскажите, пожалуйста, как организовываются миграции бд в go? моету кого статья есть про организацию миграций в го?

Google
jack
27.05.2018
18:37:26
Предлагаю заострить внимание на эталоне некой системы. Про любой ошибке пользователь лишь информируется о статусе - продолжить нельзя вовсе, или требуется подождать время Х потому-то.

Мерлин
27.05.2018
18:37:28
окей, для определения того что сделать - тебе не достаточно типа ошибки ? "кончились деньги", "хост недоступен","токен не валиден" ?
не достаточно тебе приходит часть этих ошибок по сети, и только часть из них умещается в строку

и не надо рассказывать про HTTP коды, они не всегда, даже скорее редко отображаются на бизнес логику

Dmitry
27.05.2018
18:39:58
не достаточно тебе приходит часть этих ошибок по сети, и только часть из них умещается в строку
опять двадцать пять. высе ошибки что ты привел прекрасно описываются типом ошибки для машины и строкой для пользователя

Sergey
27.05.2018
18:40:23
так а зачем вообще строка?

Dmitry
27.05.2018
18:40:32
чтобы выкинуть панику с ней

Sergey
27.05.2018
18:40:47
просто берём число, маппим его по hashmap, получаем описание ошибки

число парсится машиной, строка пользователем

все довольны

Admin
ERROR: S client not available

Мерлин
27.05.2018
18:41:04
так а зачем вообще строка?
число тоже не нужно очевидно что пользователю нужно знать только о наличии ошибки, остальное — детали реализации

Dmitry
27.05.2018
18:41:19
стектрейс например откуда возьмешь ?

Daniel
27.05.2018
18:41:20
коллеги

это

Sergey
27.05.2018
18:41:39
число тоже не нужно очевидно что пользователю нужно знать только о наличии ошибки, остальное — детали реализации
не, для пользователя понятно, я про внутреннее представление ошибки — зачем тратить место на строку, если они всегда стандартные

Daniel
27.05.2018
18:41:43
все же все поняли про позиции друг друга

Sergey
27.05.2018
18:41:55
Dmitry
27.05.2018
18:42:13
Google
Sergey
27.05.2018
18:42:29
ладно

Dmitry
27.05.2018
18:42:50
какой-такой стектрейс?
который пришел по сети с машины которая не запустилась в доме который построил джек

Dmitry
27.05.2018
18:43:38
и всё это строкой?
да, потому что это ДЛЯ ЧЕЛОВЕКА, а не для машины

Sergey
27.05.2018
18:43:41
ааааа

как же я сразу-то не понял!!!!!!

(сорри, надоело)

Dmitry
27.05.2018
18:43:57
тупенький наверно

:)

Sergey
27.05.2018
18:44:15
получается так

Dmitry
27.05.2018
18:46:21
смотрите - я вижу только один случай когда вам действительно нужно что то кроме ошибки и строки с ошибкой - тот случай когда ваш метод не является инициатором ошибки

тоесть в вашем случае это тот мифический обработчик ошибок который принимает сообщения от всего интернета

Daniel
27.05.2018
18:47:35
коллега

вы нам очевидное растолковываете

но

все мы для своих проектов пишем расширенные структуры для ошибок

и мы знаем, чего нам не хватает в стандартной ошибке

Dmitry
27.05.2018
18:48:39
можно хоть одну такую структуру поглядеть - если не NDA конечно?

jack
27.05.2018
18:49:56
Ошибка это костыль вызванный неумением в общем случае передать контекст выполнения от места получения до места устранения

Sergey
27.05.2018
18:50:28
> контекст выполнения от места получения до места устранения кажется вы частично написали определение ошибки

Daniel
27.05.2018
18:51:35
можно хоть одну такую структуру поглядеть - если не NDA конечно?
все, что под рукой - из живых проектов. но вот я обычно нуждаюсь в типе, значении, сообщении и стектрейсе

Страница 1102 из 1630