You never can tell with bees (dil) wrote in ru_php,
You never can tell with bees
dil
ru_php

Category:

Как правильно писать из php в stderr?

Я использую на своём веб-сайте Wordpress с plugin'ом "LiveJournal Crossposter Remake", который копировал мои посты в LJ, а потом в DW.
Но недавно он почему-то перестал это делать, хотя ни на самом сайте, ни в логах никаких ошибок не виднеется.
Я решил в том скрипте приделать записи в apache'вский error_log, чтобы последить, какие функции там запускаются, и что они делают, и увидеть, какие функции там не работают.

Вроде бы для записи в error_log, из PHP достаточно просто писать в STDERR:
fwrite(STDERR, "message\n");


В тестовом скрипте, который я вручную запускал, это вполне работало,
а в том livejournal-crossposter-remake.php почему-то вовсе не сработало,
в error_log'е вместо них появилась куча сообщений об ошибках в этом PHP-скрипте:
[error] [client мойIP-адрес] PHP Warning: fwrite() expects parameter 1 to be resource, string given in /path-to/www/blog/wp-content/plugins/livejournal-crossposter-remake/livejournal-crossposter-remake.php on line 99
и про остальные строки этого скрипта, куда я добавил такой fwrite()..

Погуглил, как вручную обратиться к stderr, и добавил в начале скрипта:
$STDERR=fopen('php://stderr', 'w');

А в функциях вот так:
global $STDERR;
fwrite($STDERR, "message\n");

вроде уже работает.

Так что же не так с оригинальным fwrite(STDERR,...) ?
Subscribe

  • Redis, странное

    Коллеги имеющие Redis в хозяйстве, прошу, проверьте, не имеется ли в Ваших базах следующих данных: 1. Строка 'counter:__rand_int__' значением…

  • (no subject)

    Вот вы сидите тут, и не знаете, что в internals идут жаркие бои вокруг предполагаемого к принятию Морального кодекса строителя коммунизма. Всегда…

  • Парсер почты за деньги

    Добрый день. Имеется задачка: получить с почтового ящика письма и провернуть с каждым из них следующие действия: 1. Распарсить заголовок 2. Если…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 12 comments

  • Redis, странное

    Коллеги имеющие Redis в хозяйстве, прошу, проверьте, не имеется ли в Ваших базах следующих данных: 1. Строка 'counter:__rand_int__' значением…

  • (no subject)

    Вот вы сидите тут, и не знаете, что в internals идут жаркие бои вокруг предполагаемого к принятию Морального кодекса строителя коммунизма. Всегда…

  • Парсер почты за деньги

    Добрый день. Имеется задачка: получить с почтового ящика письма и провернуть с каждым из них следующие действия: 1. Распарсить заголовок 2. Если…