Size: a a a

2020 March 14

а

а кто это in Go-go!
уф
источник

А

Александр in Go-go!
Владимир Столяров
Только надо путь задавать /channels/{channel}
Да, почитал подробнее про него, нашел описание в документации
источник

p

pragus in Go-go!
А вот как вы таскаете доп. информацию о причинах ошибки? Свой тип, реализующий Error?
источник

N

Nikolay in Go-go!
pragus
А вот как вы таскаете доп. информацию о причинах ошибки? Свой тип, реализующий Error?
Да, плюс unwrap
источник

ВС

Владимир Столяров in Go-go!
pragus
А вот как вы таскаете доп. информацию о причинах ошибки? Свой тип, реализующий Error?
Раз уже нам такое дали, грех не пользоваться, иногда очень помогает. Например прикручиваю http-код
источник

ЕО

Евгений Омельченко in Go-go!
pragus
А вот как вы таскаете доп. информацию о причинах ошибки? Свой тип, реализующий Error?
Часто %w достаточно
источник

DP

Daniel Podolsky in Go-go!
я вот стараюсь строго %w пользоваться
источник

p

pragus in Go-go!
Евгений Омельченко
Часто %w достаточно
А дальше что вы с этим делаете? Вот вам надо достать из ошибки конкретное значение
источник

ЕО

Евгений Омельченко in Go-go!
Зависит от источника ошибки. Свои ошибки я пытаюсь фиксированными делать и проверять с помощью Is. Внешние — анвраплю
источник

p

pragus in Go-go!
Евгений Омельченко
Зависит от источника ошибки. Свои ошибки я пытаюсь фиксированными делать и проверять с помощью Is. Внешние — анвраплю
Я не спрашивал про Is. Я спрашивал про контекст ошибки: какие данные привели к её возникновению
источник

ЕО

Евгений Омельченко in Go-go!
Ну контекст редко заранее неизвестен, можешь привести пример зачем тебе контекст ошибки протаскивать наверх?
источник

p

pragus in Go-go!
Евгений Омельченко
Ну контекст редко заранее неизвестен, можешь привести пример зачем тебе контекст ошибки протаскивать наверх?
Допустим, мы делаем сервис для миграции данных между облачными провайдерами. И в процессе миграции aws и azure и в процессе миграции у нас случилась ошибка
источник

p

pragus in Go-go!
И нам надо ошибку от модуля, реализующего работу с конкретным провайдером выбросить наверх
источник

ЕО

Евгений Омельченко in Go-go!
А что ты потом такого с этой ошибкой делать будешь?
источник

CI

Co. In in Go-go!
Как правильно перезапустить воркеров?

https://play.golang.org/p/sMlvhPLk73c
источник

p

pragus in Go-go!
Евгений Омельченко
А что ты потом такого с этой ошибкой делать будешь?
Клиенту покажу, например.
источник

ЕО

Евгений Омельченко in Go-go!
pragus
Клиенту покажу, например.
Ну и непонятно тогда где тут контекст. Формируй ошибку сразу как будешь показывать.

if err != nil {
 return fmt.Errof("problems with AWS: %w", err)
}
источник

ЕО

Евгений Омельченко in Go-go!
Звучало в твоём вопросе так будто ты хочешь разные действия в зависимости от разных ошибок делать
источник

p

pragus in Go-go!
Co. In
Как правильно перезапустить воркеров?

https://play.golang.org/p/sMlvhPLk73c
Зачем mutex поинтером? Зачем он вообще полем структуры? Ну и гоночки-гоночки
источник

CI

Co. In in Go-go!
pragus
Зачем mutex поинтером? Зачем он вообще полем структуры? Ну и гоночки-гоночки
Вот как раз гоночки меня и смущают. Нужно посигналить о завершении воркерам, и только когда все закроются, запустить их заново.
источник