0

가끔 Low 한 레벨 로그만을 찍고싶은데 로그 설정에서 info 메세지만 띄울려고할때 이상하게 DEBUG, ERROR, INFOMATION 까지 뜹니다.


정작 원하는건 원하는 위치에 자신이 남겨둔 로그만 보고싶은데


우르르르 뜨는 로그들 때문에 좀 스트레스 받으신 분들을 위해 따로 확장하는 팁을 살짝쿵 내놓습니다.


CI 3.0 기준에서 작성한것입니다.


Core 폴더에 MY_Log.php 를 만들어주신후에


system/core/Log.php 내용을


위에 만든 파일에 붙여넣기를 합니다 그리고 아래와 같이 코드를 첨가해줍니다.



<?php
	//로그레벨이 4까지있는데 5까지 추가해줍니다.
	protected $_levels = array('ERROR' => 1, 'DEBUG' => 2, 'INFO' => 3, 'ALL' => 4, 'MYLOG' => 5);

	//로그 레벨이 5일경우... 나머지 로그는 표시해주지 말자.
	if( $this->_levels[$level] < 5 ) {
		return FALSE;
	}
		
	//약 169 라인쯤에 아래의 내용 위에 위 코드를 입력해줍니다.
	if (( ! isset($this->_levels[$level]) OR ($this->_levels[$level] > $this->_threshold)) && ! isset($this->_threshold_array[$this->_levels[$level]]))
	{
		return FALSE;
	}

자 이렇게할경우 4로 지정했을시에 모든 메세지가 뜨고요


5를 적용했을때 MYLOG만 뜹니다.


즉 로그 남기고싶은대에 log_message("MYLOG",'로그내용'); 만 입력하면 깔끔하게 자신의 로그만 뜹니다...


실서비스가 들어가는곳에 로그기록남기는건 성능저하가있지만 때때로 실서비스에서 혹시나 문제생길수있는 부분에


부득이하게 로그를 남겨야된다라면 위와 같이 코드로 살짝쿵 적용해보는것도 나쁘지않습니다.