凤凰服务器运行时如何logging在控制器中的东西?
我正尝试在服务器运行时从Phoenix应用程序中的一个控制器打印一些debugging信息。
defmodule PhoenixApp.TopicController do use PhoenixApp.Web, :controller alias PhoenixApp.Topic plug :action def index(conn, _params) do # ... log "this text" # ... render(conn, "index.html") end end
好的,结果很简单。 您需要在控制器中使用Logger
elixir模块,并调用其中一种方法来logging文本。
defmodule PhoenixApp.TopicController do require Logger def index(conn, _params) do Logger.info "Logging this text!" Logger.debug "Var value: #{inspect(var)}" # ... end end
支持的级别是:
-
:debug
– debugging相关的消息 -
:info
– 任何types的信息 -
:warn
– 警告 -
:error
– 对于错误
来源: Elixir – logging器文档
你也可以只做IO.puts
或者IO.inspect
,它会显示出来,但是IO.puts会很麻烦,如果你打印的东西没有实现String.Chars协议