|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Roman Skvirskij 2:5020/400 04 Jun 2002 16:00:43 To : Andrey Sapozhnikov Subject : Re: Запретить вывод ошибок -------------------------------------------------------------------------------- Hello, Andrey! You wrote to Roman Skvirskij on Tue, 4 Jun 2002 11:25:42 +0000 (UTC): AS> Roman Skvirskij wrote: >> Hello, Andrey! >> You wrote to Roman Skvirskij on Tue, 4 Jun 2002 10:21:56 +0000 (UTC): AS>>> Roman Skvirskij wrote: >>>> Проблема следующая - как в перловом сценарии запретить вывод ошибок >>>> и предупреждений? Ошибки я обрабатываю, а вот сообщения хотелось бы >>>> убрать. AS>>> 1. Разобраться в причине их возникновения и ликвидировать причину. AS>>> 2. Если так и положено ругаться в данном месте (вероятность 1 к 10 AS>>> 000) >> Hеправильно. Сервер БД может быть недоступен по многим причинам. AS> Да ради Бога, пусть будет недоступен. AS> $dbh = DBI->connect($data_source, $user, $pass, { AS> PrintError => 0, AS> AutoCommit => 0 }); AS> if (!$dbh) { AS> .... AS> } AS> Где тут требуется какое либо подавление варнингов? Я ошибся. Предположим, что таблица исчезла. В этом случае при выполении в eval я получаю варнинг. Честно говоря, я в перле не силен, но я в eval переопределил SIG{__WARN__} и все стало ОК. AS> Варнинги и ошибки из eval не всплывают на поверхность. Ошибки AS> попадают в $@, а варнинги "в никуда" если самому не перехватить AS> $SIG{__WARN__} и не накапливать их. Если нечто пробивается на AS> поверхность, это просто вывод на STDERR. В общем, большое спасибо!!!! With best regards, Roman Skvirskij. E-mail: roman@loveme.spb.ru --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/4421c2a829db.html, оценка из 5, голосов 10
|