【问题标题】:How to redirect log file content to systemd journal?如何将日志文件内容重定向到 systemd 日志?
【发布时间】:2017-03-05 12:04:52
【问题描述】:

我有一个接受--log-file 参数的程序。我想把这个程序包装成一个 systemd 服务,并将日志写入日志。

程序可以在守护模式下运行,并且支持重启和停止动作。

我找到了一个systemd-cat,但它只接受一个管道。

【问题讨论】:

    标签: systemd journal


    【解决方案1】:

    尝试使用process substitutionbash 功能。

    myapp --log-file >(systemd-cat) 
    

    【讨论】:

      【解决方案2】:

      将以下命令放入服务单元文件的ExecStart

      myapp --log-file /dev/stdout
      

      【讨论】:

      • 试过了,得到ERROR [Errno 6] No such device or address: '/dev/stdout'
      • 我的错误。我不知道标准输出符号链接到打开系统调用不起作用的日志套接字
      【解决方案3】:

      以 Mark Stosberg 的建议为基础。对我有用的是使用 bash 的进程替换。

      ExecStart=/bin/bash -c '/location/app --log >(systemd-cat)'
      

      【讨论】:

        猜你喜欢
        • 2017-03-26
        • 2017-04-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多