Php 如何在linux中每当tail-f显示日志文件中的新行时执行mysql查询
我试图用tail-f监视一个日志文件,用grep解析它以提取一些数据,并将数据作为mysql查询传递。 我可以通过将tailf检测到的每一行新行传递给一个php脚本来实现这一点,但我不知道如何做到这一点。。 或者我可以直接用php模拟tailf,但是如何用php监控文件的更改呢? 我想只要有一段时间,看看尺寸,记住最后一个位置,寻找它,读到差别,对吗? 任何人都可以给出一些关于什么更好使用的提示?还是更简单? 我还听说命名管道可能是一种解决方案,但不知道如何从中获取数据 顺便说一下,记录器是nginx。。Php 如何在linux中每当tail-f显示日志文件中的新行时执行mysql查询,php,parsing,bash,logging,tail,Php,Parsing,Bash,Logging,Tail,我试图用tail-f监视一个日志文件,用grep解析它以提取一些数据,并将数据作为mysql查询传递。 我可以通过将tailf检测到的每一行新行传递给一个php脚本来实现这一点,但我不知道如何做到这一点。。 或者我可以直接用php模拟tailf,但是如何用php监控文件的更改呢? 我想只要有一段时间,看看尺寸,记住最后一个位置,寻找它,读到差别,对吗? 任何人都可以给出一些关于什么更好使用的提示?还是更简单? 我还听说命名管道可能是一种解决方案,但不知道如何从中获取数据 顺便说一下,记录器是ng
谢谢在shell中,您可以执行以下操作:
tail -f file.log|grep whatever-you-want|while read line; do
echo $line
done
只需将行echo$line
更改为您想要的-您可以在该行中调用PHP或您想要的任何东西,$line
是tail/grep组合中的行
查看这些SOq了解更多信息: