LoginSignup
1
1

More than 5 years have passed since last update.

PHPの標準エラー出力をアプリ側で制御

Last updated at Posted at 2013-04-10

初カキコ

どこで書けばいいやってなってここかな?って思ったので
試しにここで

Codeigniter等でcli実行などがある場合に

cron登録
* * * * php /home/dark/app/index.php cli_test exec_cron

とやりlogファイルはcodeigniterで設定したログに吐かれるわけだ。
但し、ここで
標準出力のエラーなどは消えてしまう。
そこで通常
* * * * php /home/dark/app/index.php cli_test exec_cron >> /home/dark/cli_logs/cli_test_log_date +\%Y\%m\%d.log 2>&1

このように対応する例が多い

だけど、cli_test_log等もアプリ側で定義した定数を使いたいと
思ったわけでその場合に下記で対応してみた。

public function exec_cron()
{
    //cli_test_log_`date +\%Y\%m\%d`.log に相当する物
    $error_file_path = $this->log->get_error_file_path();
    exec("php index.php cli_test _exec_cron 2>>". $error_file_path);
}

シェルの標準出力エラーもアプリと同じファイルに
cron登録時も
* * * * php /home/dark/app/index.php cli_test exec_cron

のみでよし。通常のecho のログはアプリ側でファイル出力してある

ま〜1つのログで可能な限りすべての調査が出来るようにと思い
やってみてます。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1