Программирование > Perl
как зделать вывод ошибок в лог файл?
KillerWM:
имеется скрипт который неполностью выполняет свою работу в каком месте и из-за чего вылетает неизвестно, как сделать чтобы ошибки скрипта выводились в лог файл?
demond:
можно сделать несколькими способами:
1) просто открываешь в начала скрипта файл и и везде где хочешь можешь писать в него содержимое переменных и тд.
2) можно смотреть содержимое переменных в процессе выполнения скрипта используя встроенную функцию warn, она не останавливает выполнение скрипта в отличие от die!
KillerWM:
--- Цитировать ---demond:
можно сделать несколькими способами: 1) просто открываешь в начала скрипта файл и и везде где хочешь можешь писать в него содержимое переменных и тд. 2) можно смотреть содержимое переменных в процессе выполнения скрипта используя встроенную функцию warn, она не останавливает выполнение скрипта в отличие от die!
--- Конец цитаты ---
2 пункт не подходит везде warn или die не поставишь да и мне вывод не в браузер нужен а в файл потому что скрипт долго выполняется
1 пункт делал но проблема в том что запись в файл делается через буфер и при вылете скрипта по какойто ошибке, в файл лога буфер не записывается и лог остается пустой, а вот если скрипт нормально выходит и файл лога штатно закрывается то в него запись происходит
demond:
--- Цитировать ---KillerWM:
1 пункт делал но проблема в том что запись в файл делается через буфер и при вылете скрипта по какойто ошибке, в файл лога буфер не записывается и лог остается пустой, а вот если скрипт нормально выходит и файл лога штатно закрывается то в него запись происходит
--- Конец цитаты ---
а что, писать в файл через буфер это такая задумка? просто создать отдельный файл для debug\'a и писать в него не сразу не получится?
Кроме того есть такой метод выявления ошибок: либо разбивать скрипт на части и тестить каждую часть в отдельности, либо встать какой-нибудь print и перемещать его по скрипту сверху вниз.
It-sys:
Поставить IIS и PerlIS - он все ошибки пишет в лог файл :-)
Навигация
Перейти к полной версии