Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: przechwytywanie błędu
Forum PHP.pl > Forum > PHP
skrobi
Witam serdecznie,

czy jest sposób aby przechwycic błąd z informacją ze zabrakło pamieci dla palikacji. Nie chciałbym ustawiać wiecej niz 32Mb (bo tyle aktualnie mam ustawione). Incydent że zabraknie mi pamieci zdarza sie raz na ruski rok tak wiec chciałbym taki bład przechwycic i wyslac do siebie maial o takim zdarzeniu. probowałem w try ale to nic nie daje.
bregovic
Hmmm, nie możesz użyć set_error_handler" title="Zobacz w manualu PHP" target="_manual'a, ale w komentarzach znalazłem coś takiego:
  1. <?php
  2. function error_handler($output)
  3. {
  4.    $error = error_get_last();
  5.    if($error !== null) {
  6.        $output = "";
  7.        foreach ($error as $info => $string)
  8.            $output .= "{$info}: {$string}\n";
  9.        return $output;
  10.    }
  11. }
  12.  
  13. ob_start('error_handler');
  14. ?>

Parsuj $string i spróbuj znaleźć 'memory limit' czy coś takiego.

Ale nie mogę się nie zapytać, nie lepiej zoptymalizować twój skrypt żeby coś takiego się nie zdarzało?
skrobi
Moze i łatwiej ale nie ma już co optymalizowąc dzieje się to tylko i wyłaczenie na serwerze producyjnym, i co najśmieszniejsze w 0,0001% Użytkownicy dodali już około 1000 zdjęć i zdażyło sie to tylko raz, to samo z awatarkami jest ich ponad 2000 i zdażyło sie tylko raz. Bardzo dziwny przypadek bo nie powinien wystąpić bo nie sądze że apach'owi zabrakło 32MB pamięci dla przetworzenia 300kb obrazka :/

W każdym bądz razie dziękuje za pomysł.
bregovic
Brzmi jak ciekawy problem. Zakładam że próbowałeś debugować plik(i) które powodują ten sajgon?
MMX3
normalna sprawa przy dynamicznym resize dużej ilości obrazków
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.