永久存储 console. log 输出在哪里?

我永远安装和使用它,发现它很有趣。

但我发现原木被放在了别的地方,有什么提示吗?

121177 次浏览

Forever 采用命令行选项进行输出:

-l  LOGFILE      Logs the forever output to LOGFILE
-o  OUTFILE      Logs stdout from child script to OUTFILE
-e  ERRFILE      Logs stderr from child script to ERRFILE

例如:

forever start -o out.log -e err.log my-script.js

有关更多信息,请参见 给你

永远,默认情况下,将把日志到一个随机文件在 ~/.forever/文件夹。

应该运行 forever list以查看正在运行的进程及其相应的日志文件。

样本输出

>>> forever list
info:    Forever processes running
data:        uid  command       script forever pid  logfile                         uptime
data:    [0] 6n71 /usr/bin/node app.js 2233    2239 /home/vagrant/.forever/6n71.log 0:0:0:1.590

然而,最好使用 bryanmac 提到的 -l进行指定。

如果运行命令“ forever log”,您可以看到日志文件在哪里。

资料来源: https://github.com/foreverjs/forever

试试命令

> forever logs

or

> sudo forever logs

你会得到日志文件的位置

这对我很有效:

forever -a -o out.log -e err.log app.js

帮助是您最好的救星,您可以调用一个日志操作来检查所有正在运行的进程的日志。

forever --help

显示命令

logs                Lists log files for all forever processes
logs <script|index> Tails the logs for <script|index>

上面命令的示例输出,用于运行的三个进程。 控制台日志输出存储在这些日志中。

info:    Logs for running Forever processes
data:        script    logfile
data:    [0] server.js /root/.forever/79ao.log
data:    [1] server.js /root/.forever/ZcOk.log
data:    [2] server.js /root/.forever/L30K.log

您需要在运行文件名之前添加日志目标说明符

forever -e /path/error.txt -o /path/output.txt start index.js

要做正常人 forever start script.js 启动,并检查控制台/错误日志的使用 forever logs 这将打印永久存储的所有日志的列表 然后您可以使用 tail -f /path/to/logs/file.log,这将打印实时日志到您的窗口。按 ctrl + z 停止日志打印。

根据 Bryanmac 的回答。我只是将所有日志保存到一个文件中,然后用 tail 读取它。简单,但有效的方法来做到这一点。

forever -o common.log -e common.log index.js && tail -f common.log

默认情况下,永远将所有需要的文件放入/$HOME/。永远。如果你想改变那个位置,只需在你永远运行的时候设置 FOREVER _ root 环境变量:

FOREVER_ROOT=/etc/forever forever start index.js

这是一个老问题,但我遇到了同样的问题。如果你想看到实时输出,你可以运行

forever logs

这将显示日志文件的路径以及脚本的编号。然后你可以使用

forever logs 0 -f

0应该替换为希望看到输出的脚本的数目。