Profilowanie aplikacji
Klasa profilera wyświetla benchmarki, zapytania, które zostaly uruchomione, oraz dane z tablicy $_POST na dole strony. Te informacje mogą być użyteczne w trakcie tworzenia aplikacji do debugowania i optymalizacji.
Inicjalizowanie klasy
Ważne: Ta klasa NIE musi być inicjalizowana. Jest ładowana automatycznie przez klasę Output jeśli profilowanie zostanie włączone, jak pokazano poniżej.
Włączanie profilera
Aby włączyć profiler umieść poniższą funkcję w którejkolwiek metodzie swojego kontrolera:
$this->output->enable_profiler(TRUE);
Jeśli profiler jest włączony, zostanie wygenerowany raport, który zostanie umieszczony na dole strony.
Aby wyłączyć profiler można dokonać zapisu:
$this->output->enable_profiler(FALSE);
Ustawianie punktów benchmarku
Aby profiler mógł skompilować i wyświetlić Twoje benchmarki, musisz zaznaczyć punkty pomiaru używając specyficznej składni.
Aby uzyskać więcej informacji przeczytaj informacje zawarte na stronie opisującej klasę Benchmark.
Włączanie i wyłączanie sekcji profilera
Każda sekcja informacji profilera moze zostać włączona lub wyłączona poprzez ustawienie odpowiedniej zmiennej konfiguracyjnej na wartość TRUE lub FALSE. Można to zrobić na dwa sposoby. Po pierwsze, możesz ustawić domyślne zmienne dla całej aplikacji, w pliku konfiguracyjnym application/config/profiler.php.
$config['config'] = FALSE;
$config['queries'] = FALSE;
W swoim kontrolerze, możesz nadpisać domyślne ustawienia i ustawienia z pliku konfiguracyjnego poprzez wywołanie metody set_profiler_sections() klasy Output:
$sections = array(
'config' => TRUE,
'queries' => TRUE
);
$this->output->set_profiler_sections($sections);
Dostępne sekcje i klucze tablicy potrzebne aby do nich dotrzeć, są opisane w poniższej tabeli.
Klucz | Opis | Domyślna wartość |
---|---|---|
benchmarks | Czasy benchmarków i całkowity czas wykonywania | TRUE |
config | Zmienne konfiguracyjne CodeIgnitera | TRUE |
controller_info | Nazwa kontrolera i metody, dla żądania | TRUE |
get | Zmienne GET dla żądania | TRUE |
http_headers | Nagłówki HTTP dla żądania | TRUE |
memory_usage | Ilość pamięci zużyta przez bieżące żądanie, w bajtach | TRUE |
post | Zmienne POST dla żądania | TRUE |
queries | Lista wszystkich zapytań do bazy, włączając w to czas ich wykonywania | TRUE |
uri_string | Adres URI żądania | TRUE |
query_toggle_count | Liczba zapytań, po której blok "queries" zostanie automatycznie ukryty. | 25 |