【问题标题】:Elixir Logger - How do You Modify the Contents of a Logged Message?Elixir Logger - 如何修改记录消息的内容?
【发布时间】:2016-02-29 21:19:01
【问题描述】:

在消息发送到后端之前,有什么方法可以挂接到 Elixir 记录器?在写入外部系统之前,我需要去除潜在的敏感信息。

【问题讨论】:

标签: logging elixir


【解决方案1】:

只是为了其他可能会遇到这个问题而没有注意到我发布的评论的人,我相信您可以通过Logger.Translator 模块完成您想要实现的目标。您将构建一个模块和函数来对要过滤的敏感数据进行模式匹配,然后通过 Logger.add_translator/1 函数添加模块和函数。


编辑:针对原问题发帖人留下的评论:我建议你看here,具体看这两个选项::handle_otp_reports:handle_sasl_reports。我还要提请您注意文档中的这段话:

此外,Logger 允许 Erlang 的 error_logger 发送的消息 通过翻译器将其翻译成 Elixir 格式。

假设您要通过 Erlang 的 error_logger 输出要过滤的消息,这是正确的方法。如果您没有通过 error_logger 输出这些消息,请添加有关您用于输出要清理的消息的机制的更多详细信息。

【讨论】:

  • 不幸的是,翻译模块似乎只适用于来自 Erlang 的日志。不是 Elixir 日志记录。
猜你喜欢
  • 2011-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-19
  • 2017-08-15
  • 1970-01-01
相关资源
最近更新 更多