Дорого дня всем.Может кто сталкивался, стоит "Cacti", програма для снятия статистики с сетевых устройств. В кроне прописано запуск файла poller.php , который я так понял эту статистику и снимает....
Все работало, не некоторое время назад графики просто пустые.... Пробую запустить
php /usr/local/www/banklviv.ua/cacti/poller.php в ручную, дает ошибкуPHP: Error parsing /etc/php.ini on line 316
File size limit exceeded
>PHP: Error parsing /etc/php.ini on line 316
>File size limit exceededА что там в 316 строке? Поправить её, увеличить до нужного.
Ведь ругается же на то, что превышен предел размера файла.
Вероятно переполнение какого-то файла, скорее всего лога. Если из 316 строки не удастся понять какого именно, то запустите через strace.
Вот что у меня в php.ini; Resource Limits ;
;;;;;;;;;;;;;;;;;;;max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_input_time = 30 ; Maximum amount of time each script may spend parsing request data
memory_limit = 500M ; Maximum amount of memory a script may consume
consume
(250MB) ------- 316 линия
Делал больше но не помогает ...
max_execution_time = 30 ; Максимальное время выполнения скрипта, в секундах
max_input_time = 30 ; Максимальное количество времени на парсинг данных запрашиваемых скриптом
memory_limit = 500M ; Максимальное количество памяти выделяемое для скрипта (250 МБ)Где 316 строка? Последняя? И значение какое было? 250, а вы установили в 500 ? Так?
Это что же у вас за файлег такой, больше полгига? Попробуйте совет выше, не уж-то лог такой большой
316 последняя, дефолт был у memory_limit кажись 30, а вот там где 250 сейчас не знаю, может подскажите какие установить там значения и как через strace запустить ?
>max_input_time = 30 ; Maximum amount of time each script may spend parsing request data
>memory_limit = 500M ; Maximum amount of memory a script may consume
>consume
>(250MB)Догадка. Если там действильно __буквально__ это и написано, то это, конечно же, ошибка.
Изначально строка выглядела так (у меня по крайней мере):
memory_limit = 24M ; Maximum amount of memory a script may consume (8MB)
Потом, вероятно, кто-то эту строку порезал на три части, предварительно удвоив слово "consume".
Попробуйте вернуть, как было.
Поставил так как у вас, перестало матюкатся на строку 316 но все равно пишет что
File size limit exceeded
>Поставил так как у вас, перестало матюкатся на строку 316 но все
>равно пишет что
>File size limit exceededВарианты навскидку:
1. Файл /usr/local/www/banklviv.ua/cacti/poller.php слишком большой?
2. Сама эта программа (poller.php) выводит такую строку?
3. Кто-то пытается создать очень большой файл? Лог PHP? poller.php?
4. Мало места в файловой системе?
1.
du -h poller.php
20K poller.phpфайл не большой
du -h rra
23M rraэто файлик где все графики лежат, может он забольшой, а где тогда увеличить нужно ? в php.ini ?
2.
php poller.php
File size limit exceededвиходит что пхп чтото хочет.
В файловой системе места достаточно.....
>du -h poller.php
>20K poller.php
>
>файл не большой
>
>du -h rra
>23M rra
>
>это файлик где все графики лежат, может он забольшой, а где тогда
>увеличить нужно ? в php.ini ?Что за ОС? Если Линукс, то вот тут нечто похожее:
http://www.cyberciti.biz/faq/file-size-limit-exceeded-error-.../>php poller.php
>File size limit exceeded
>
>виходит что пхп чтото хочет.Не факт. Программа запустилась и вывела строку. Возможно не баг, а фича. Что будет, если запустить простенькую программку?
% echo '<?php echo "Test\n"; ?>' > test.php
% php test.php
?
Не пугайтесь страшного слова strace и его мана. Просто запустите strace -f poller.php, что выведет вам все системные вызовы совершаемые скриптом(а точнее php интерпретатором) и его потомками(опция -f). Посмотрите в какой файл пытались писать перед этой ошибкой.
Например сразу перед ошибкой видим нечто вроде
write(3, "some data", 6) = 6
Использовался дескриптор с номером 3. Ищем выше(снизу вверх) строку с open вернувшую 3, например
open("some_log_file", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 3
Смотрим размер some_log_file, чистим или ротируем.P.S. Искать нужно именно ближайший open с нужным номером, так как номера могут использоваться повторно, если происходило их закрытие.
Всем спасибо!Хорошая вещь STRACE. Таки действительно был переполнен лог. Почистил и пошло.
write(4, "08/05/2008 09:58:14 AM - POLLER: "..., 149) = -1 EFBIG (File too large)
--- SIGXFSZ (File size limit exceeded) @ 0 (0) ---
+++ killed by SIGXFSZ +++open("/usr/local/www/cacti/log/cacti.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 4
2147483647 пїп¦я- 19 08:35 cacti.log