149: Elixir's new Unified Logger

Hauleth (Łukasz Jan Niemier) takes us deeper into the Elixir and Erlang loggers. He recently closed a 3.5 year old bug on the ElixirLang Github project by unifying the Elixir logger with the logger that Erlang got in OTP 21. We touch on the history, why it took so long, what we should think of the new logging levels, and what the original goals were that he set out to achieve. We also get an introduction to the new logging filters and handlers along with some peeks into future Erlang logging features that may still be yet to come in Elixir! Show Notes online - http://podcast.thinkingelixir.com/149 Elixir Community News https://podcast.thinkingelixir.com/73 – Previous interview with Paul Copplestone about Elixir and Supabase https://twitter.com/kiwicopple/status/1646918873445195783 – Supabase had their own release week. Paul shared his favorite one. https://supabase.com/blog/dbdev – Supabase blog post about dbdev - a Postgres extension package manager https://database.dev/installer – Database.dev is the dedicated site for dbdev https://twitter.com/josevalim/status/1649001076404768768 – José Valim shared the Livebook notebook used during his ElixirConf EU presentation https://github.com/josevalim/livebooks/blob/main/talks/2023/04-elixir-conf.livemd – José's Livebook from his presentation https://twitter.com/visual_partner/status/1648979346491580416 – Visual drawing created from José's ElixirConf EU keynote https://twitter.com/livebookdev/status/1648328527026987008 – New Livebook KinoDiff feature makes it easy to visually display a diff between two strings in Livebook. https://twitter.com/theerlef/status/1649442881302822915 – Erlang OTP 26 RC 3 https://www.erlang.org/news/163 – Blog post for Erlang/OTP 26.0 Release Candidate 3 https://www.erlang.org/blog/more-optimizations/ – Blog post on Erlang website about OTP 26 optimizations in the compiler and JIT https://twitter.com/michalmuskala/status/1650511805339381763 – Erlang library called “erlfuzz” was released. https://erlangforums.com/t/open-sourcing-erlfuzz/2562 – Erlfuzz forum post. It is a fuzzer for Erlang code and the BEAM. https://github.com/evadne/emporium – Evadne Wu released an Elixir example application that walks through a variety of Elixir ML operations https://paraxial.io/blog/sobelow-guide – Blog post from Paraxial.io on a guide to using Sobelow https://github.com/paraxialio/sobelow_guide – Github readme explains more about Sobelow findings and how to correct them. https://github.com/woutdp/live_svelte – A new project called LiveSvelte was released. Helps integrate using Sevelte front-end JS with a LiveView https://wout.space/notes/live-svelte – Blog post about live_svelte Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://twitter.com/whatyouhide/status/1626544505506656257 – PR that closed a 3.5yo Elixir issue on unifying Erlang and Elixir loggers. https://github.com/elixir-lang/elixir/issues/9465 – Github Issue “Further unify logger and Logger” https://www.erlang.org/doc/man/logger.html – Erlang logger docs. Referenced. https://hexdocs.pm/logger/main/Logger.html – Elixir logger docs (able to see the “1.15.0-dev” version) https://www.erlang.org/doc/apps/sasl/ – SASL Logging docs https://www.eiger.co/ https://github.com/hauleth/mix_unused https://github.com/hauleth/erlang-systemd https://systemd.io/ https://github.com/erlang-lager/lager https://riak.com/posts/technical/introducing-lager-a-new-logging-framework-for-erlangotp/index.html OTP 21 added built-in logging https://www.erlang.org/doc/man/logger_filters.html https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md Guest Information https://twitter.com/hauleth – on Twitter https://github.com/hauleth/ – on Github https://fosstodon.org/@hauleth – on Fediverse https://hauleth.dev – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Cade Ward - @cadebward Cade Ward on Fediverse - @cadebward@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Om Podcasten

The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community. Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more. Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process. Subscribe to join us on this journey!