编辑后未填充 MarkLogic ErrorLog

MarkLogic ErrorLog Not Populated After Editing

我每天轮换 ErrorLog.txt 到 ErrorLog5.txt。在特定的一天,ErrorLog 可能会变得特别大,所以我想,如果我在下午 sh运行k 文件,这样更容易浏览,会怎样?

我运行下面的命令来缩小它

sed -i -e '1,10000d' /var/opt/MarkLogic/Logs/ErrorLog.txt

缩小了几次后,我得到了大约 4800 行,看起来很容易管理。唯一的问题是在这样做之后没有其他东西被添加到 ErrorLog.txt,它保持相同的大小。那么我如何才能再次写入 ErrorLog.txt?我不想等到午夜才知道事情是否会自行解决。

进入管理控制台并单击“日志”选项卡,我看到列出了以下内容:

8000_AccessLog.txt
   8000_AccessLog_1.txt

8001_AccessLog.txt
   8001_AccessLog_1.txt

8002_AccessLog.txt
   8002_AccessLog_1.txt

8041_AccessLog.txt
   8041_AccessLog_1.txt
   8041_AccessLog_2.txt
   8041_AccessLog_4.txt

8050_AccessLog.txt
   8050_AccessLog_1.txt

8051_AccessLog.txt
   8051_AccessLog_1.txt

8060_AccessLog.txt
   8060_AccessLog_1.txt

没有列表 ErrorLog.txt

我做了两件事:

  1. 我注意到 root 是 ErrorLog.txt 的新所有者,所以我认为这可能有问题。我把它改成了守护进程。
  2. 然后我从管理控制台重新启动。起初我没有意识到我有那种力量,但我知道。重新启动后,错误日志突然出现在日志选项卡中。

Data 目录中的文件,包括 ErrorLog.txt 由 ML 服务器管理,不应在没有预期行为的情况下进行编辑。

活动日志文件(ErrorLog.txt、AccessLog.txt 或在 v9 中还有 port_ErrorLog.txt、port_AccessLog.txt)可能会被服务器保持打开状态。编辑打开文件的影响是 OS 依赖的,通常是 'not a good idea'.

如果停止服务器,通常可以安全地重命名或移动当前 ErrorLog.txt 文件。您还可以安全地编辑或移动任何轮换的日志文件(以 _n.txt 结尾,其中 n=1,2,3 ...)

限制日志文件大小的最佳方法是调整轮换间隔和日志级别,以免产生比您想要的更多的日志。如果需要,通过停止服务器并将文件移开。

注意:此行为类似于大多数程序使用日志文件和日志文件循环。