![每次清除 nginx 日志文件时是否都必须重新启动服务器?](https://linux22.com/image/613177/%E6%AF%8F%E6%AC%A1%E6%B8%85%E9%99%A4%20nginx%20%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6%E6%97%B6%E6%98%AF%E5%90%A6%E9%83%BD%E5%BF%85%E9%A1%BB%E9%87%8D%E6%96%B0%E5%90%AF%E5%8A%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9F.png)
在 nginx 上:如果我打开错误日志,选择全部(在 emacs 中)并剪切、保存,php 错误将完全停止记录到该文件中。如果我重新启动 nginx,它们将再次开始记录。如果我逐行删除文件(Control+K),错误仍会按预期保存。文件所有权或权限没有任何变化。“全选”+剪切会做什么导致错误停止记录?
谢谢任何线索。
答案1
此问题并非 nginx 独有。任何日志记录都可能出现此问题,系统日志中也经常出现此问题。应用程序或系统日志已打开该文件以供写入。您不应打开它。将文件复制到新位置并打开它,或者停止服务(您不太可能想要第二个选项)。
日志文件的目的是为您提供系统上发生事件的客观记录。编辑日志文件是一种不好的做法。您永远不知道将来有人会要求什么,如果您更改了日志内容,您将无法找到证据、调试问题等。
专业系统管理员从不编辑日志文件,除非出现磁盘填满等问题,否则我们无论如何都会丢失日志数据。