프로파일링 Profiling Your Application¶
프로파일러 클래스는 벤치마크결과,여러분이 수행한 쿼리,$_POST 데이터를 여러분의 페이지 하단에 보여줄것입니다. 이런 정보들은 개발시 디버깅이나 최적화 작업을 하는데 도움이 될 것입니다.
클래스 초기화¶
Important
본 클래스는 초기화가 필요없습니다. 만약 아래에서 설명하는 대로 프로파일링이 활성(enable)화 되어있다면 출력클래스(Output Class)에서 자동으로 초기화됩니다.
프로파일링 활성화 Enabling the Profiler¶
프로파일링을 활성화 하려면 아래와 같은 코드를 여러분 Controller의 어떤 곳에서든지 삽입하시면 됩니다:
$this->output->enable_profiler(TRUE);
활성화 되면 리포트가 생성되고 여러분 페이지의 하단에 삽입됩니다.
프로파일링을 비활성화 하려면 아래의 코드를 삽입하세요:
$this->output->enable_profiler(FALSE);
벤치마크 포인트 설정 Setting Benchmark Points¶
프로파일러가 벤치마크 결과를 컴파일 하기 위해서는 특정한 문법으로 벤치마크 포인트를 지정해 주어야 합니다.
벤치마크 포인트 설정에 관해서는 벤치마크(Benchmark Library) 페이지를 참고하세요.
프로파일 섹션의 활성화 및 비활성화 Enabling and Disabling Profiler Sections¶
각 섹션의 프로파일 데이타를 활성/비활성화 하려면, 해당 설정값을 TRUE나 FALSE로 설정하세요. 설정에는 두 가지 방법이 있습니다.응용프로그램 단위로 설정하려면 application/config/profiler.php 에서 하세요.
예제:
$config['config'] = FALSE;
$config['queries'] = FALSE;
컨트롤러에서 출력라이브러리(Output Library) 의 set_profiler_sections()를 호출하면 설정된 기본값 덮어 쓸 수 있습니다:
$sections = array(
'config' => TRUE,
'queries' => TRUE
);
$this->output->set_profiler_sections($sections);
사용 가능한 섹션과 필요한 배열의 키는 다음의 표와 같습니다.
키 | 설명 | 기본값 |
---|---|---|
benchmarks | 벤치 마크 포인트에서 경과 시간과 총 실행 시간 | TRUE |
config | CodeIgniter 설정 변수 | TRUE |
controller_info | 요청된 컨트롤러 클래스와 메소드 | TRUE |
get | 요청에 전달된 모든 GET 데이터 | TRUE |
http_headers | 현재 요청의 HTTP 헤더 | TRUE |
memory_usage | 현재 요청에서 사용된 메모리 용량(Bytes) | TRUE |
post | 요청에 전달된 모든 POST 데이터 | TRUE |
queries | 실행 시간을 포함하여 실행된 모든 데이터베이스 쿼리 목록 | TRUE |
uri_string | 현재 요청 URI | TRUE |
session_data | 현재 세션에 저장된 데이터 | TRUE |
query_toggle_count | 숨길 쿼리블록수 의 기본 값 설정 | 25 |
Note
데이터베이스 구성 설정 중 save_queries 기능을 사용하지 않도록 설정하면 효과적으로 데이터베이스 쿼리에 대한 프로파일을 비활성화하고, 쿼리 세팅을 쓸모 없게 만듭니다. 선택적으로는 $this->db->save_queries = TRUE;이 설정을 대체 할 수 있습니다. 이 설정을 하지 않으면 당신은 쿼리나 last_query <database/helpers>를 볼 수 없습니다.