在 /var/www/site.access.log 中使用尾巴 -f



在过去的 30 分钟里,我一直在调试一个无法验证第三方服务器正在访问我的站点的问题。

我有以下命令:

tail -f /var/log/mysite.pythonanywhere.com.access.log

而且我没有看到控制台中输出任何文本。

所以事实证明,第 3 方确实访问了我的服务器,但该条目没有换行符,因此tail -f没有立即刷新。

这是要添加到日志中的内容:

103.7.30.108 - - [20/May/2016:06:23:20 +0000] "GET /wechat?signature=0a99723f6953778a5b86a167d03bb720ff703896&echostr=2566246727656931322&timestamp=1463725400&nonce=784777684 HTTP/1.1" 200 19 "-" "Mozilla/4.0" "

如何在/var/www/access.log上使用tail -f并强制立即刷新每个字符?

步骤 1

默认情况下,I/O 处于缓冲状态。 您想关闭缓冲tail -f。 要在 Linux 上执行此操作,请使用 stdbuf

stdbuf -o0 tail -f /path/to/logfile

-o0告诉stdbuf使输出无缓冲。

stdbuf是GNU coreutils的一部分,应该包含在任何最近的Linux发行版中。

步骤 2

您没有提到哪个进程正在写入日志文件。 它有可能缓冲其输出。 您可能需要查看其文档并关闭其输出缓冲。

相关内容

  • 没有找到相关文章

最新更新