How to log to stderr?

btw, your original sample works as intended for me it seems like:

dnscheck on  main [!] via  
→  elixir -e 'require Logger; Logger.configure_backend(:console, device: :standard_error); Logger.error("why stdout?")' 2>scr/delme

dnscheck on  main [!] via  
→  cat scr/delme

18:55:55.984 [error] why stdout?

Perhaps due to elixer/erlang versions being used?
I’m on:

→  iex
Erlang/OTP 25 [erts-13.1.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [jit:ns]

Interactive Elixir (1.14.2) - press Ctrl+C to exit (type h() ENTER for help)