ÃֽŠ°Ô½Ã±Û(OS/WAS)
2020.01.30 / 11:22

Tomcat Log ÆÄÀÏ Á¾·ù

±îÄ¡¼³³¯
Ãßõ ¼ö 205

°³¿ä

·Î±× ÆÄÀÏ ºÐ¼® ¿äûÀ» ó¸®ÇÏ´ø Áß »ý¼º¿ø¸® ¹× ¼³Á¤ÀÌ ±Ã±ÝÇØ Á¤¸®ÇÑ´Ù.

1. Tomcat ¿¡¼­ log¸¦ ±â·ÏÇÏ´Â ¹æ½Ä, JULI

Java 1.4 ºÎÅÍ java.util.loggingÀ̶ó´Â java Logging FrameworkÀÌ Á¦°øµÇ¾ú´Ù. ¿©·¯ ÀåÁ¡ÀÌ ÀÖ´Â ¹Ý¸é¿¡ JVM ·¹º§ÀÇ ¼³Á¤¸¸ °¡´É ÇÏ´Ù´Â ´ÜÁ¡ÀÌ ÀÖ´Ù. Áï, À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ´ÜÀ§·Î´Â ·Î±×¸¦ ³²±æ ¼ö ¾ø´Ù´Â °ÍÀÌ´Ù.

Tomcat Àº ÀÌ·¯ÇÑ Java Logging ÀÇ ´ÜÁ¡À» ÇØ°áÇϱâ À§ÇÏ¿© Java Logging À» È®ÀåÇÑ JULI ¶ó´Â À̸§ÀÇ ·Î±× °ü¸®¸¦ »ç¿ëÇÏ°í ÀÖ´Ù. ¶§¶§·Î JULI ´Â Java Logging ÀÇ Tomcat ¹öÀüÀ¸·Î Ç¥ÇöµÇ±âµµ Çϸç, Java Logging ÀÇ ¼³Á¤ ¹æ¹ý°ú ±âº»ÀûÀ¸·Î µ¿ÀÏÇÏ´Ù. JULI ´Â ${INSTANCE_DIR}/bin/tomcat-juli.jar ÆÄÀÏ·Î Á¸ÀçÇÏ°í ÀÖ´Ù.


2. logging.properties

log¿¡ ´ëÇÑ ¼³Á¤À» ´ã´çÇÑ´Ù. ÆÄÀÏÀº ´ÙÀ½ À§Ä¡¿¡ Á¸ÀçÇÑ´Ù.

  • ${INSTANCE_DIR}/conf/logging.properties : Java Logging ¿¡ ´ëÇÑ ¼³Á¤ ÆÄÀÏ. ÀÌ ÆÄÀÏ °æ·Î´Â Tomcat ¿¡ ÀÇÇÏ¿© java.util.logging.config.file À̶ó´Â JVM ½Ã½ºÅÛ¼Ó¼ºÀ¸·Î Á¤ÀǵǾî ÀÖ´Ù. (¸¸ÀÏ ÀÌ ¼Ó¼ºÀÌ ¾ø´Ù¸é default ${JAVA_HOME}/lib/logging.properties ¸¦ »ç¿ëÇÏ°Ô µÈ´Ù.)

  • WEB-INF/classes/logging.properties : °¢ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¼³Á¤ ÆÄÀÏ. ¾ÖÇø®ÄÉÀÌ¼Ç º°·Î ´Þ¶óÁú ¼ö ÀÖ´Ù. (¾ÖÇø®ÄÉÀÌ¼Ç ·Î±×¸¦ log4j·Î °ü¸®ÇÏ´Â °æ¿ì lolog4j2.xml ÆÄÀÏÀÌ WEB-INF/classes Æú´õ¿¡ ÀÖÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù.)

logging.properties ¿¡ ´ëÇÑ ¼³Á¤ ¿É¼ÇÀº ÇÏ´Ü ¸µÅ© Âü°í Access ·Î±×ÀÇ °æ¿ì JULI°¡ ¾Æ´Ñ AccessLogValve °¡ ´ã´çÇÑ´Ù.



3. log ÆÄÀÏÀÇ Á¾·ù

log ÆÄÀÏÀº º°µµÀÇ ¼³Á¤ÀÌ ¾ø´Ù¸é ${INSTANCE_DIR}/logs ¿¡ »ý¼ºµÈ´Ù. »ý¼ºµÇ´Â ·Î±× ÆÄÀÏÀÇ Á¾·ù´Â ´ÙÀ½°ú °°´Ù

  • catalina.out
  • catalina.yyyy-mm-dd.log
  • manager.yyyy-mm-dd
  • localhost_access_log.yyyy-mm-dd
  • localhost.yyyy-mm-dd
  • host-manager.yyyy-mm-dd

¾Æ·¡´Â °¢ ·Î±× ÆÄÀÏ¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù.

catalina.out

Tomcat ±âµ¿ ½Ã ${INSTANCE_DIR}/bin/catalina.sh ¿¡ ÀÇÇØ »ý¼ºµÇ´Â ·Î±× ÆÄÀÏ. ±âº»ÀûÀ¸·Î ¼­¹ö»ó ¹ß»ýÇÑ ¸ðµç ³»¿ëÀ» ±â·Ï ÇÑ´Ù.

if [ -z "$CATALINA_OUT" ] ; then
      *CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out*
    fi
    ¡¦
    >> "$CATALINA_OUT" 2>&1 "&"

À§ ¼Ò½º´Â catalina.sh ÀÇ ½ºÅ©¸³Æ®ÀÌ¸ç ±âµ¿½Ã Standard Output °ú Standard Error ¸ðµÎ¸¦ ${CATALINA_OUT}À¸·Î º¸³»´Â °ÍÀ» È®ÀÎ ÇÒ ¼ö ÀÖ´Ù. ${CATALINA_OUT}Àº ${CATALINA_BASE}/logs ÇÏÀ§¿¡ catalina.out ÆÄÀÏÀÇ À§Ä¡¸¦ ÀǹÌÇÑ´Ù.

catalina.out Àº Tomcat ÀÌ ±âµ¿µÇ¾î ÀÖ´Â µ¿¾È¿¡´Â ´Ü ÇϳªÀÇ ÆÄÀÏ¿¡ °è¼Ó ³»¿ëÀÌ Ãß°¡µÈ´Ù. Áï, º°µµÀÇ ¼³Á¤ÀÌ ¾øÀ» ¶§ ÀÌ ÆÄÀÏÀÇ Å©±â´Â ¹«ÇÑÁ¤ Áõ°¡ÇÏ°Ô µÈ´Ù. ³¯Â¥º°·Î »ý¼º½ÃÅ°°Å³ª, /dev/null ·Î »ý¼ºÇÏÁö ¾Ê´Â ¹æ¹ýÀ¸·Î °ü¸®ÇÒ ¼ö ÀÖ´Ù.

catalina.out shutdownÀÌ ¾Æ´Ñ ServerDown À¸·Î Á¾·á(°úºÎÇÏ·Î ÀÎÇØ ¸Þ¸ð¸® Èü´ýÇÁ¸¦ ³²°åÀ»¶§)½Ã, Startup ½ÃÁ¡¿¡ µ¤¾î¾²±â µÇ¹Ç·Î ÁÖÀÇÇÑ´Ù.


catalina.yyyy-mm-dd.log

${INSTANCE_DIR}/conf/logging.properties ¿¡ ÀÇÇÏ¿© »ý¼º/Á¦¾î µÇ´Â ·Î±× ÆÄÀÏ

Tomcat ¿¡¼­ »ý¼ºÇÏ´Â ·Î±×¸¸À» ±â·Ï ÇÑ´Ù. Tomcat System log¶ó ÇÒ ¼ö ÀÖÀ¸¸ç Standard output, Standard error ÀÇ ·Î±ëÀº Á¦¿ÜµÈ´Ù. (¼Ò½º»ó System.out.println À̳ª System.err.println À¸·Î ³²±â´Â ·Î±×´Â Á¦¿ÜÇÑ´Ù´Â ÀǹÌ)

À§ µÎ °¡Áö ·Î±×¸¸À¸·Îµµ ¼­¹ö ¸ð´ÏÅ͸µÀÌ °¡´ÉÇÏ´Ù. ¿î¿µ½Ã ´ÙÀ½ ó·³ °ü¸®ÇÏ´Â °ÍÀÌ ÀÌ»óÀûÀÌ´Ù.

  1. catalina.out À» »ý¼ºÇÏÁö ¾Êµµ·Ï catalina.sh ÆÄÀÏÀ» ¼öÁ¤ÇÑ´Ù.
  2. Tomcat System log : catalina.yyyy-mm-dd.log ¸¦ ÅëÇØ ¸ð´ÏÅ͸µ
  3. Application log : FrameworkLog or Log4j ¸¦ ÅëÇØ µ¥ÀϷα׷Π¿î¿µ

¹°·Ð À§ »óȲÀº ÀÌ»óÀûÀÎ ±Ç°í¾ÈÀÏ »Ó catalina.out À» µ¥Àϸ®·Î ³ª´©´Â ¹æ¹ýÀÌ ÆíÇÒ ¼öµµ ÀÖ´Ù.


Access log (±×¿Ü)

cilentÀÇ Request¸¦ ±â·ÏÇÏ´Â ·Î±× ÆÄÀÏÀÌ´Ù. Á¢±Ùºê¶ó¿ìÀú ¹× ip µîÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. Tomcat ¹èÆ÷ ¹öÀü¿¡ µû¶ó ÀÌ AccessLogValve°¡ ºñÈ°¼ºÈ­µÇ¾î Àֱ⵵ ÇÏ°í, È°¼ºÈ­µÇ¾î Àֱ⵵ ÇÏ´Ù. ${INSTANCE_DIR}/conf/server.xml ¿¡¼­ È°¼ºÈ­ ¿©ºÎ¸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù.



Âü°íÀÚ·á

Apache Tomcat(ÅèĹ) ·Î±×¿¡ ´ëÇÏ¿© (Java Logging°ú JULI)

Tomcat 7.x¿Í 8.x °£ÀÇ Default Configuration ºñ±³

(ÀÌ ºí·Î±×ÀÇ ±ÛÀ» ³»°¡ ÀÌÇØÇÒ ¼ö ÀÖ´Â ¼öÁØ¿¡¼­ Á¦Á¤¸®ÇÑ °Í¿¡ ºÒ°úÇÏ´Ù)