프로파일링 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>를 볼 수 없습니다.