小编Max*_*Max的帖子

需要从日志中读取数据... tail,grep和inotifywait

我有一台服务器上的数据进入不断增长的日志文件.我需要尾随该日志并grep一些信息,然后将其发送到另一台服务器,以便php插入数据库.无法允许具有日志的计算机访问数据库.我到目前为止尝试了这个但是我在bash命令上的语法是错误的,我无法弄清楚这是否是这样做的方式或者是否有更好的方法?Netcat是另一个想法......

monitor.sh

#!/bin/sh

tail -f /usr/local/log/thelog.log | grep -B1 "ABC=" > /usr/local/log/output.log;  

while inotifywait -e modify /usr/local/log/output.log; do
sleep 10;  
php /usr/bin/send.php;  
done
Run Code Online (Sandbox Code Playgroud)

send.php

<?php
//extract data from the post
//extract($_POST);
//set POST variables

$data = 'tail -n 3 /usr/local/log/output.log';
$url = 'http://www.blahblah.com/logtodb.php';

$data = str_replace("A", "", $data);
$data = str_replace("B=", "", $data);
$data = str_replace("C=", "", $data);
$data = str_replace("D=", "", $data);

$fields = array(
'data'=>urlencode($data)d,
);

//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= …
Run Code Online (Sandbox Code Playgroud)

php linux bash post curl

5
推荐指数
1
解决办法
1837
查看次数

标签 统计

bash ×1

curl ×1

linux ×1

php ×1

post ×1