私が取り組んでいる php プロジェクトの管理機能を強化しようとしています。現在、プロジェクトはすべてのエラーを syslog に記録します。これらのエラーの syslog を読み取る機能を管理ページに付与しようとしています。ターミナルで次のように入力できます。
cat /var/log/syslog | grep projectName
ただし、次のコマンドを使用してこのコマンドを実行しようとすると、
$output=shell_exec('cat /var/log/syslog | grep projectName');
またはで:
$output=`cat /var/log/syslog | grep projectName`;
$output は常に空になります。これを行う方法はありますか?これは最善の方法ですか (IE には syslog を読み取るためのネイティブな方法があります)。
編集:問題は権限の問題のようです。www-data に syslog へのアクセス許可を与えることもできますが、何らかの理由でそれは良い考えではないように思えます。ログを読み取るネイティブな方法はありませんか?