CI 묻고 답하기

제목 Log 파일이 생성되지 않습니다.
글쓴이 세라프메이트 작성시각 2015/06/16 19:03:27
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 22872   RSS
안녕하세요. CI로 뭔가 개발하고 있는 개발자입니다.

Log를 파일로 떨어뜨리는 설정을 진행하고 있는데 제가 수행한 작업 순서는 다음과 같습니다.

1. codeigniter 3.0 버전을 설치했습니다. 메뉴얼 대로.
2. 튜토리얼을 열심히 따라해봤구요. 정상적으로 동작하는 것도 확인했습니다.
3. Android에서 Volley를 통해 JSON Object Request로 던지고 CI에서 해당 Request를 받아서 JSON 형태의 스트링이 오는 것도 확인했습니다.
4. 해당 JSON 스트링을 decode해서 Array로 바꾸고 DB에 넣는 로직을 만들었습니다.
5. 500에러가 발생하길래 Chrome 확장 프로그램인 Postman으로 같은 JSON 스트링을 RAW 형태로 던져서 DB에 정상적으로 INSERT 되는 것을 확인하고 왜 안드로이드만 500에러가 발생하는지 확인하기 위해 Log 설정을 했습니다.
6. 메뉴얼 및 포럼을 찾아보니
/application/config/config.php 파일에
1) $config['log_threshold'] = 4; 로 설정
2) $config['log_path'] = ''; 그대로 둠(/application/logs/, (doc_root)/application/logs, 모두 해봤습니다.)
3) 755였던 logs 디렉토리를 777로 변경
4) index 컨트롤러 아무데나 log_message('error', 'error message'); 찍어보았습니다.
했는데도 /application/logs/ 아래 Log 파일이 생성이 안되네요.
777로 해보고 chown 해서 nginx로도 해보고 root로도 해보고 최 상위 디렉토리도 만들어보고 했는데도 안됩니다.

환경은 nginx + php 5.4 + CodeIgniter 3.0 버전입니다.
선배님들의 조언을 구합니다.
 다음글 템플릿 parser 관련된 질문입니다. (6)
 이전글 코드이그나이터에서 Oracle Sequence 사용시 ... (3)

댓글

변종원(웅파) / 2015/06/16 21:19:01 / 추천 0
application과 그 위 디렉토리 권한도 바꿔보세요. 적어주신 대로라면 문제 될거 딱히 없습니다. nginx 특성일지도 모르겠네요
세라프메이트 / 2015/06/17 16:02:11 / 추천 0
nginx, php-fpm OS User를 nginx로 변경하고, 최상위 디렉토리에 /www를 만들고 755권한에 owner역시 nginx:nginx로 만들어줘도, 777로 변경해도 로그 파일은 안생기네요. 아무것도 수정하지 않은 초기 설치판을 받아서 테스트 해도 안됩니다. 혹시나 싶어 윈도우에서 테스트 해보니 바로 되네요 ㅋㅋ; 원인을 알 수가 없네요....흑.... 당췌 뭐가 문제인지 ㅠㅠ
변종원(웅파) / 2015/06/17 18:00:01 / 추천 0
selinux가 on인지 보세요. 그 설정이 켜져있을 경우 보안강화때문에 디렉토리 권한 작업이 좀 애매해집니다.
세라프메이트 / 2015/06/17 18:25:36 / 추천 0
@웅파 // selinux를 disabled 시켜놓으니 로그파일이 생기는군요...흐억...이틀째 삽질한 느낌입니다. 조언 감사드립니다. ^^ 그런데 혹시 selinux를 on 시켜둔 상태에서 처리할 수 있는 설정이 있으신가요? 혹시 있으시다면 조언 부탁드립니다. 정말 고맙습니다 ^^
변종원(웅파) / 2015/06/18 00:13:30 / 추천 0
보통은 끄고 작업합니다.

사용법은 http://wiki.centos.org/HowTos/SELinux#head-4f1e4e4307ab4e76c81ae5fbebc24a907b24fd92 참고하시면 됩니다. ^^
세라프메이트 / 2015/06/18 11:07:43 / 추천 0
@웅파 // 조언 감사드립니다!!
세라프메이트 / 2015/06/25 11:38:22 / 추천 0
SELINUX를 꺼두는 것이 조금 찝찝해서 찾아보니
/var/log/audit/audit.log 를 확인하면서 CI 관련 로그가 발생하면 해당 로그의 고유 번호를 따서 audit2allow 유틸로 설정 파일을 만들어서 실행해줬습니다.
대략 9개 정도 설정을 추가하니 정상적으로 동작됩니다. 조언 감사드립니다. ^^