ipa*_*tch 5 elixir phoenix-framework
我目前正在使用phoenix框架v1.3 rc1构建一个API,一切都按照我本地开发环境的预期工作,但是当我将更改推送到生产框来测试API时,phx应用程序返回500内部服务器错误.我试图设置日志,使用开发/生产环境,logger_file_backend通过以下的说明 GitHub的页面上,但我没有看到在开发或督促环境产生任何日志文件.
config.exs
# Configures Elixir's Logger
config :logger, :console,
backends: [{LoggerFileBackend, :error_log}]
# format: "$time $metadata[$level] $message\n",
# metadata: [:request_id]
# configuration for the {LoggerFileBackend, :error_log} backend
config :logger, :error_log,
path: "/home/deploy/deployments/kegcopr_api/error.log",
level: :error
Run Code Online (Sandbox Code Playgroud)
prod.exs
# Do not print debug messages in production
# config :logger, level: :info
config :logger, format: "[$level] $message\n",
backends: [{LoggerFileBackend, :error_log}, :console]
config :logger, :error_log,
path: "/home/deploy/deployments/kegcopr_api/error.log",
level: :error
Run Code Online (Sandbox Code Playgroud)
dev.exs
# Do not include metadata nor timestamps in development logs
config :logger, :console, format: "[$level] $message\n",
backends: [{LoggerFileBackend, :error_log}, :console]
config :logger, :error_log,
path: "/opt/elixir/kegcopr_api/log/error.log",
level: :debug
Run Code Online (Sandbox Code Playgroud)
试试这个配置:
config :logger,
backends: [:console, {LoggerFileBackend, :error_log}],
format: "[$level] $message\n"
config :logger, :error_log,
path: "/tmp/info.log",
level: :debug
Run Code Online (Sandbox Code Playgroud)
它为我工作.
iex(1)> require Logger
Logger
iex(2)> Logger.debug "more here"
:ok
iex(3)>
21:39:58.608 [debug] more here
$ tail -f /tmp/info.log
21:34:29.756 [info] testing..
21:38:23.380 [debug] test me
21:39:58.608 [debug] more here
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2951 次 |
| 最近记录: |