log 파일 만들기
- src/main/resources 밑에 있는 log4j.xml에서 설정
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!--
%d : 로그의 기록 시간을 출력
%p : 로그 레벨을 출력
%F : 로그가 발생한 프로그램 파일명 출력
%M : 로그가 발생한 메서드명 출력
%l : 로그가 발생한 호출지의 정보를 출력
%L : 로그가 발생한 호출지의 라인을 출력
%t : 로그가 발생한 thread의 정보를 출력
%c : 로그가 발생한 카테고리(패키지)의 정보를 출력
%C : 로그가 발생한 클래스의 정보를 출력
%m : 로그 메시지 출력
%n : 개행문자(줄바꿈)
%% : % 출력
%r : 앱 실행 후 로깅이 발생한 시점까지 걸린시간(ms)
-->
<!-- Appenders -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<!-- INFO : kr.co.gudi.controller.BoardController - list call -->
<!-- %-5 : 좌측 정렬 5자가 안되면 나머지는 공백으로 채움 -->
<!-- <param name="ConversionPattern" value="%-5p: %c - %m%n" /> -->
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss, SSS} %-5p: %c %L - %m%n" />
</layout>
</appender>
<!--
.yyyy-MM : 매달 첫번째 날에 로그파일 변경
.yyyy-ww : 매주 시작 시 로그파일 변경
.yyyy-MM-dd : 매일 자정 로그파일 변경
.yyyy-MM-dd-a : 매일 자정과 정오에 로그파일 변경
.yyyy-MM-dd-HH : 매시간 로그파일 변경
.yyyy-MM-dd-HH-mm : 매분 로그파일 변경
-->
<!-- log 파일 생성 설정 / 아래 root에서도 appender 추가해주어야함-->
<!-- Appenders -->
<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
<!-- 파일 저장 경로 설정 -->
<param name="File" value="/usr/local/tomcat/logs/spring.log" />
<!-- 파일을 특정 날짜 조건대로 rolling 하기 위한 옵션 -->
<param name="DatePattern" value=".yyyy-MM-dd-HH" />
<layout class="org.apache.log4j.PatternLayout">
<!-- INFO : kr.co.gudi.controller.BoardController - list call -->
<!-- %-5 : 좌측 정렬 5자가 안되면 나머지는 공백으로 채움 -->
<!-- <param name="ConversionPattern" value="%-5p: %c - %m%n" /> -->
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss, SSS} %-5p: %c %L - %m%n" />
</layout>
</appender>
<!-- Application Loggers -->
<!-- 로거를 찍어줄 패키지 영역 -->
<!-- trace > debug > info(일반적 정보) > warn > fatal(심각) -->
<logger name="kr.co.gudi">
<level value="info" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="info" />
</logger>
<logger name="org.springframework.beans">
<level value="info" />
</logger>
<logger name="org.springframework.context">
<level value="info" />
</logger>
<logger name="org.springframework.web">
<level value="info" />
</logger>
<!-- Root Logger -->
<root>
<priority value="warn" />
<appender-ref ref="console" />
<!-- appender 추가 -->
<appender-ref ref="file" />
</root>
</log4j:configuration>
- putty에서 log 파일 존재 확인
docker exec -it tomcat /bin/bash
cd webapps
cd ../logs
ls # spring.log 존재 확인
- log가 정상적으로 찍히는지 확인(마지막 한페이지 정도만 출력)
tail -f spring.log
# ctrl + c로 빠져나오기
파일 업로드
- 소스코드에서 파일 저장 경로 변경
Path path = Paths.get("/usr/local/tomcat/webapps/upload/"+newFileName);
- putty에서 서버에 upload 폴더 생성
mkdir upload
ls # 확인
- server.xml 수정하기(다른 키 누르지 않도록 주의 / 마우스 사용x)
docker exec -it tomcat /bin/bash
# 에디터 수정
apt-get update
apt-get install vim
# sercer.xml에 아래 내용 추가
<Context docBase="/usr/local/tomcat/webapps/upload" path="/photo"/>
cd conf
vim server.xml
O -> 편집모드
esc -> :wq # 저장 후 종료
esc -> :q! # 저장하지 않고 종료
exit
docker restart tomcat
'코딩도전기 > CLOUD' 카테고리의 다른 글
AWS - Docker / MariaDB / Tomcat 설치 (0) | 2023.05.23 |
---|---|
AWS - Amazon Web Service(인스턴스 시작) (0) | 2023.05.22 |