vivekmalhotragithub
Elixir + Phoenix still logging when level set to info (with LoggerFileBackend)
developing my Elixir + Phoenix with these settings
config/dev.exs
config :logger,
backends: [{LoggerFileBackend, :info}]
config :logger, :info,
path: "log/push_app2_test.log",
level: :info
the logger in phoenix channel is set to
defmodule PushApp2Web.XYZChannel do
use Phoenix.Channel, log_join: :debug, log_handle_in: false
Now while testing elixir app with tsung where it creates 50K plus connections I am getting these messages in log.
`13:45:05.939 [warn] Logger has stopped discarding messages
13:45:05.967 [warn] Logger has 1001 messages in its queue, which is above :discard_threshold. Messages will be discarded until the message queue goes back to 75% of the threshold size
13:45:05.968 [warn] Logger has stopped discarding messages`
I also tried to log message with zero arity function as:
`Logger.debug(fn -> "the meaning of life" end)`
I thought all debug messages are not logged. What is happening here and how to fix this??
Most Liked
rjk
isn’t config/dev.exs or config/prod.exs also defining your logger level? (which will then override the one you set in config/config.exs).
To debug which level it is you could start your server with
iex -S mix phx.server # or other arguments you used/need
Then in the console that opens you can see the actual Logger level with: Logger.level
And possibly Mix.env() can show you which environment config file is overwriting your config.exs.
Hope this will help you a bit further.
Cheers,
Redmar
BTW given that everything works i can imagine that the file logger could slow things down during the benchmark. To assert this I would also do a tsung run without logging anything just to see it’s impact on your benchmark.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance










