【问题标题】:Where is the standard output and error output being redirected by mongodb-mms-automation agent?mongodb-mms-automation 代理重定向的标准输出和错误输出在哪里?
【发布时间】:2021-01-06 11:54:07
【问题描述】:

对于我的菜鸟问题,我很抱歉,因为我对 linux 很陌生。请考虑以下 linux 命令:

/opt/mongodb-mms-automation/bin/mongodb-mms-automation-agent 
-f /etc/mongodb-mms/automation-agent.config 
-pidfilepath /var/run/mongodb-mms-automation/mongodb-mms-automation-agent.pid 
>> /var/log/mongodb-mms-automation/automation-agent-fatal.log 2>&1

据我了解>> 将标准输出重定向到文件,2>&1 表示标准错误将被重定向到与标准输出相同的位置。所以在上述情况下,我希望标准输出和标准错误都被重定向到/var/log/mongodb-mms-automation/automation-agent-fatal.log

但显然情况并非如此。我可以看到所有信息/错误消息都被重定向到文件/var/log/mongodb-mms-automation/automation-agent.log。有人可以解释一下我在阅读此命令时犯了什么错误吗?

问候,

米娜

【问题讨论】:

    标签: linux bash syntax mongodb-mms


    【解决方案1】:

    标准输出和标准错误只是默认目的地;该程序可能正在做一些事情,这些事情会破坏通过重定向到文件来保存日志的任何尝试:

    • 它直接写入终端输出,例如 /dev/pts/0。
    • 它检测标准输出/错误是否连接到文件或终端,并相应地改变行为。
    • 应用程序开发人员认为最有用的任何其他行为。

    换句话说,它是特定于应用程序的。如果您真的需要,您最好找到日志文件配置设置并更改它。通常我发现保留默认值更容易和更安全(因为它们可能会很方便,例如出于安全原因,例如沙盒),而是指向任何软件试图以某种方式处理该文件的默认位置。

    【讨论】:

      最近更新 更多