J'essaie d'imprimer des informations de débogage à partir de l'un de mes contrôleurs dans mon application Phoenix lorsque le serveur est en cours d'exécution.
defmodule PhoenixApp.TopicController do
use PhoenixApp.Web, :controller
def index(conn, _params) do
log("this text")
# ...
end
end
D'accord, il s'avère que c'est assez simple. Vous devez exiger le module d'élixir Logger
dans votre contrôleur et appeler l'une de ses méthodes pour enregistrer votre texte.
defmodule PhoenixApp.TopicController do
require Logger
def index(conn, _params) do
Logger.info "Logging this text!"
Logger.debug "Var value: #{inspect(var)}"
# ...
end
end
Les niveaux pris en charge sont:
:debug
- pour les messages liés au débogage:info
- pour toute information:warn
- pour les avertissements:error
- pour les erreursVous pouvez également simplement faire IO.puts
ou IO.inspect
et cela s'affichera, mais IO.puts peut être gênant si ce que vous essayez d'imprimer n'implémente pas le protocole String.Chars