每当我的一个客户设法创建服务器错误时,我都想收到一封电报/电子邮件。因为这通常意味着我们创建了一个bug,需要尽快修复。我还希望客户能够返回他们的来源,所以我想显示一个javascript返回按钮。
我该怎么做?
按钮可能看起来像这样:
<button onclick="window.history.back()">Back</button>
并像这样通知管理员:
for id <- Application.get_env(:nadia, :admin_chat_ids) do
message = "#{error information like stacktrace and user information}"
Nadia.send_message(id, message)
end
我在哪里可以覆盖phoenix的默认行为并获得必要的信息?
您可以使用滚动条,例如,每当您出现新错误或重复错误时,它都会发送电子邮件,您可以在UI上配置它。
为了将rollbar连接到phoenix应用程序,您需要rollbax-gem,它是elixir库的包装器。
安装
defp deps() do
[{:rollbax, ">= 0.0.0"}]
end
并添加到您的配置中。您的令牌将在创建项目后通过网站提供。
config :rollbax,
access_token: "YOUR_TOKEN",
environment: "production"
要在Phoenix内部使用它,您需要将其用作Plug
defmodule MyApp.Router do
use Plug.Router # or `use MyApp.Web, :router` for Phoenix apps
use Plug.ErrorHandler
defp handle_errors(conn, %{kind: kind, reason: reason, stack: stacktrace}) do
Rollbax.report(kind, reason, stacktrace)
end
end
Phoenix rollbax配置