Size: a a a

2020 December 13

AL

Anton Lapshin in pro.elixir
Хд
источник

AL

Anton Lapshin in pro.elixir
я так писал лет 10 назад, во времена были
источник

AL

Anton Lapshin in pro.elixir
источник

AL

Anton Lapshin in pro.elixir
Без негатива
источник

AD

Aaron Delarge in pro.elixir
У меня так привычка и осталась хд
источник

МБ

Максим Барулин... in pro.elixir
:observer.start решает проблему дебага. Там есть встроенные средства в том числе для трейса процессов
источник

AL

Anton Lapshin in pro.elixir
я иногда дебаг полноценный таки юзаю
источник

AL

Anton Lapshin in pro.elixir
Главное как обычно тег тайм-аут не забыть выкрутить
источник

IK

Ihor Katkov in pro.elixir
Suren Kirakosyan
Старайся избегать вложенных конструкций with/case/cond/if и прочих, усложняет читаемость. Такие блоки лучше извлекать в отдельные функции
источник

SK

Suren Kirakosyan in pro.elixir
Ihor Katkov
Старайся избегать вложенных конструкций with/case/cond/if и прочих, усложняет читаемость. Такие блоки лучше извлекать в отдельные функции
следующим вопросом должно было быть это. У меня уже столько таких набралось, что если не справлюсь объязательно обращусь к вам.
источник

IK

Ihor Katkov in pro.elixir
Suren Kirakosyan
следующим вопросом должно было быть это. У меня уже столько таких набралось, что если не справлюсь объязательно обращусь к вам.
👍
Обычно, вложенные case можно переписать в with
источник
2020 December 14

AB

Alex Bubnov in pro.elixir
Aaron Delarge
В принципе, я представляю теперь, в чем проблема хд спасибо
Ещё учти, что прилично написанный код содержит таймауты на все блокирующие ipc(call).
То есть, пока ты дебажишь какой-нибудь gen_statem, вызывающий процесс просто сдохнет.
источник

VS

Vladimir Sekisov in pro.elixir
Aaron Delarge
А в эликсире принято через IO дебажить? Я просто всегда с дебаггером по коду ползал, но в контексте эликсира часто вижу высказывания, дескать, лучше чем IO.inspect() ничего нет
Обычно принято дебажить трассировкой.
В контексте elixir посмотрите на extrace.
источник

A

Aleksey @cheatex in pro.elixir
Возникла проблема с запуском релиза. Ковыряю учебный проект, условный чатик. Довёл до кондиции что с $ mix phx.server всё работает. На старте выдаёт лог "[info] Running ExChatWeb.Endpoint with cowboy 2.8.0 at 0.0.0.0:4000 (http)"
Собираю релиз, MIX_ENV=dev mix do compile, release. При его запуске _build/dev/rel/ex_chat/bin/ex_chat start в консоли тишина, указанный порт не слушается. Если сломать конфиг, например адресом БД то ошибки появляются.
В обсервере вижу что в первом случае стартует гораздо больше процессов, появляется {supervisor,ranch_listener_sup,1} У Elixir.ExChatWeb.Endpoint.Config стейт одинаковый в обоих случаях.
Куда еще можно смотреть? Релиз не начинает выборочно направлять лог мимо консоли?
источник

VS

Vladimir Sekisov in pro.elixir
Aleksey @cheatex
Возникла проблема с запуском релиза. Ковыряю учебный проект, условный чатик. Довёл до кондиции что с $ mix phx.server всё работает. На старте выдаёт лог "[info] Running ExChatWeb.Endpoint with cowboy 2.8.0 at 0.0.0.0:4000 (http)"
Собираю релиз, MIX_ENV=dev mix do compile, release. При его запуске _build/dev/rel/ex_chat/bin/ex_chat start в консоли тишина, указанный порт не слушается. Если сломать конфиг, например адресом БД то ошибки появляются.
В обсервере вижу что в первом случае стартует гораздо больше процессов, появляется {supervisor,ranch_listener_sup,1} У Elixir.ExChatWeb.Endpoint.Config стейт одинаковый в обоих случаях.
Куда еще можно смотреть? Релиз не начинает выборочно направлять лог мимо консоли?
config :my_app, MyEndpoint, server: true
источник

A

Aleksey @cheatex in pro.elixir
Vladimir Sekisov
config :my_app, MyEndpoint, server: true
Что-то пошло, спасибо!
источник

A

Aleksey @cheatex in pro.elixir
Vladimir Sekisov
config :my_app, MyEndpoint, server: true
А зачем в релизе вебапсы отключать сервер по умолчанию? Или релиз это экзотика и реально большинство пакует-стартует приложения как-то иначе (для меня то это просто первое что попалось пока шёл по докам)?
источник

VS

Vladimir Sekisov in pro.elixir
Не знаю, я из erlang пришел,
для меня релиз - естественный путь событий.
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Aleksey @cheatex
А зачем в релизе вебапсы отключать сервер по умолчанию? Или релиз это экзотика и реально большинство пакует-стартует приложения как-то иначе (для меня то это просто первое что попалось пока шёл по докам)?
Потому что не в релизе ты вручную указываешь phx.server
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если ты просто запустишь консоль - будет то же самое
источник