2016-07-14 80 views
0

我有兩個PHP腳本。第一個腳本(例如local.php)使用phpseclib通過SSH執行第二個腳本(例如remote.php)。 這兩個腳本都使用Monolog將日誌寫入控制檯。過濾器來自不同過程的單詞條目

現在我的問題:我該如何過濾從local.php腳本中通過SSH執行的腳本的日誌條目?

例如:我只想查看錯誤和警告,但遠程腳本始終發送所有條目(因爲local.php腳本中的其他處理程序可能需要更高的日誌級別)。因此,local.php腳本必須解析remote.php腳本的日誌輸出並將條目分配給Monolog記錄。

+0

您可以在您使用Monolog的地方添加相關代碼嗎?這會澄清你的情況。 – dlondero

+0

我創建了一個簡單的例子(不是我作爲應用程序的實際代碼已經變得複雜): remote.php:http://pastebin.com/tAgkyibz local.php:HTTP://引擎收錄。 COM/6ZVzH1Ut – Programie

回答

0

我想你可以使用Processors,也許TagProcessor到遠程腳本中,以便添加一些有用的東西來識別本地日誌並相應地使用它們。

0

我可能得到的解決方案:Monolog還允許使用JsonFormatter將輸出格式化爲JSON格式。因此,我可以簡單地使用JsonFormatter在remote.php腳本中格式化所有記錄器輸出,並在我的local.php腳本中逐行解析它(通過簡單地檢查json_decode()輸出排除任何不是JSON的行)。