【问题标题】:Why Logrus writes logs to Linux logs?为什么 Logrus 将日志写入 Linux 日志?
【发布时间】:2020-02-10 06:52:16
【问题描述】:

我使用 Logrus 库将我的 golang 日志写入文件。问题是 logrus 还将日志写入 Linux 系统日志。这是我在日志配置中的日志输出。

log.SetOutput(os.Stderr)

我不希望 Logrus 将应用程序日志写入 Linux 系统日志。有解决这个问题的想法吗?

【问题讨论】:

  • 您是否将这个应用程序作为服务运行?
  • 是的,它作为服务运行。它会导致这种行为吗?
  • 如果您将进程作为服务启动,其输出通常会显示在 syslog 中。查看您的发行版的 syslog 配置手册以禁止特定服务的日志。
  • 感谢您的建议。我认为这与我的应用程序配置有关。我会检查的。

标签: go logging


【解决方案1】:

要将输出写入文件,您可以将输出设置为文件处理程序。

file, err := os.OpenFile(filename, os.O_WRONLY | os.O_CREATE, 0755)
if err != nil {
    // handle error
}
logrus.SetOutput(f)

如果你想引入更高级的逻辑来处理输出,你可以使用这个库Lumberjack作为日志输出

【讨论】:

    猜你喜欢
    • 2020-08-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 2012-06-18
    • 2011-06-17
    • 1970-01-01
    相关资源
    最近更新 更多