2021年10月7日 星期四

Rsyslog to PHP

以 PHP 為例,把 syslog 的資料即時 pipe 給程式分析

/etc/rsyslog.conf 加入
module(load="omprog")
*.* action(type="omprog" binary="/usr/local/bin/syslog-parser.php")

syslog-parser.php 內容

#!/usr/bin/php
<?php
while ($line=trim(fgets(STDIN))) {
  file_put_contents("/tmp/syslog-parser.log",$line."\n",FILE_APPEND);
}
?>

不要忘了 chmod +x syslog-parser.php,它需要有執行權限
本範例中的 $line 就是 syslog 會傳進來的每一行
當然這個方法不限於 PHP,可以讀取 STDIN 的程式都可以

沒有留言:

OpenVPN disconnect after 3.4.0

如果 OpenVPN 本來都連線正常,Server 也沒動,OpenVPN Client 升版到 3.4.0 以後的版本,就不能連了, 狀況是連上又斷線,一直重複 (repeat connect and disconnect) 我的環境 RouterOS 6.49.14 及 7....