Java素人なので、教えて下さい。
Java EclipseからTomcat8を起動して、エラーが発生した場合、Eclipseのコンソールおよび、ログ設定ファイルLog4j.xmlで設定した「C:\applog\error.log」に出力したいのですが、出力されません。
開発していく上で、ログがでないと、何が悪いかわからないので、
Eclipseコンソールおよび、log4j.xmlで設定しているエラーログファイル「C:\applog\error.log」に出力させる方法を教えて下さい。
■同じような事象でいうと、下記の様な状態です。(私の説明が分かり辛いかと思って、載せました)
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=30182&forum=12
以下、情報
■ツールバージョン
・Java Eclipse4.5
・Apache Tomcat/8.0.30
<Eclipse>
■log4j.xmlの抜粋(出力先ファイルを "applog/error.log"に指定しています)
xml
1<?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 3 <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 4 5 <appender name="console" class="org.apache.log4j.ConsoleAppender"> 6 <layout class="org.apache.log4j.EnhancedPatternLayout"> 7 <param name="ConversionPattern" value="%d{yyyy-MMM-dd HH:mm:ss}{Asia/Tokyo} %-5p %t %m%n" /> 8 </layout> 9 </appender> 10 <appender name="rolling" class="org.apache.log4j.RollingFileAppender" > 11 <param name="File" value="/applog/error.log" /> 12 <param name="Append" value="true" /> 13 <param name="MaxFileSize" value="10MB" /> 14 <param name="MaxBackupIndex" value="10" /> 15 <layout class="org.apache.log4j.EnhancedPatternLayout"> 16 <param name="ConversionPattern" value="%d{yyyy-MMM-dd HH:mm:ss}{Asia/Tokyo} %5p %c{1} - %m%n" /> 17 </layout> 18 </appender> 19
■実行構成(Apache Tomcat)
VM引数:-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
<実施したこと>
1.EclipseからTomcat起動
2.ローカルからWebサービス起動「http://localhost:8080/mcloud-service/loginService/login.do」
※エラーを発生させるため、ユーザーID・パスワード入力なしで、いきなりログイン後の画面にアクセスしています。
3.EclipseコンソールおよびEclipseのlog4j.xml「C:\applog\error.log」には下記のTomcat起動、エラー発生までしか出力されず、エラーの詳細が出力されない。
周囲の方は同じソースコードでちゃんとエラー詳細が出力されているので、ソースの問題ではなく、設定の問題だと考えているのですが。。
■以下、Eclipseログ詳細
Log
1情報: Server version: Apache Tomcat/8.0.30 [木 5 25 10:19:42 JST 2017] 2情報: Server built: Dec 1 2015 22:30:46 UTC [木 5 25 10:19:42 JST 2017] 3情報: Server number: 8.0.30.0 [木 5 25 10:19:42 JST 2017] 4情報: OS Name: Windows 10 [木 5 25 10:19:42 JST 2017] 5情報: OS Version: 10.0 [木 5 25 10:19:42 JST 2017] 6情報: Architecture: amd64 [木 5 25 10:19:42 JST 2017] 7情報: Java Home: C:\typical\eclipse4.5\java\8\jre [木 5 25 10:19:42 JST 2017] 8情報: JVM Version: 1.8.0_60-b27 [木 5 25 10:19:42 JST 2017] 9情報: JVM Vendor: Oracle Corporation [木 5 25 10:19:42 JST 2017] 10情報: CATALINA_BASE: C:\typical\Tomcat8 [木 5 25 10:19:42 JST 2017] 11情報: CATALINA_HOME: C:\typical\Tomcat8 [木 5 25 10:19:42 JST 2017] 12情報: Command line argument: -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:59805 [木 5 25 10:19:42 JST 2017] 13情報: Command line argument: -Dcatalina.home=C:\typical\tomcat8 [木 5 25 10:19:42 JST 2017] 14情報: Command line argument: -Djava.endorsed.dirs=C:\typical\tomcat8\endorsed [木 5 25 10:19:42 JST 2017] 15情報: Command line argument: -Dcatalina.base=C:\typical\tomcat8 [木 5 25 10:19:42 JST 2017] 16情報: Command line argument: -Djava.io.tmpdir=C:\typical\tomcat8\temp [木 5 25 10:19:42 JST 2017] 17情報: Command line argument: -Dfile.encoding=UTF-8 [木 5 25 10:19:42 JST 2017] 18情報: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\typical\eclipse4.5\java\8\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\typical\eclipse4.5\java\8\jre\bin;C:/typical/eclipse4.5/eclipse/jre/bin/../jre/bin/server;C:/typical/eclipse4.5/eclipse/jre/bin/../jre/bin;C:/typical/eclipse4.5/eclipse/jre/bin/../jre/lib/amd64;;C:\apache-maven-3.2.5;C:\Program Files\Amazon\AWSCLI\;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\typical\eclipse4.5\eclipse;;. [木 5 25 10:19:42 JST 2017] 19情報: Initializing ProtocolHandler ["http-nio-8080"] [木 5 25 10:19:43 JST 2017] 20情報: Using a shared selector for servlet write/read [木 5 25 10:19:43 JST 2017] 21情報: Initializing ProtocolHandler ["ajp-nio-8009"] [木 5 25 10:19:43 JST 2017] 22情報: Using a shared selector for servlet write/read [木 5 25 10:19:43 JST 2017] 23情報: Initialization processed in 1893 ms [木 5 25 10:19:43 JST 2017] 24情報: サービス Catalina を起動します [木 5 25 10:19:43 JST 2017] 25情報: Starting Servlet Engine: Apache Tomcat/8.0.30 [木 5 25 10:19:43 JST 2017] 26情報: Webアプリケーションアーカイブ C:\typical\Tomcat8\webapps\mcloud-service.war を配備します [木 5 25 10:19:43 JST 2017] 27情報: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. [木 5 25 10:19:50 JST 2017] 28情報: Initializing Spring root WebApplicationContext [木 5 25 01:19:51 UTC 2017] 29情報: Set web app root system property: 'webapp.root' = [C:\typical\Tomcat8\webapps\mcloud-service\] [木 5 25 01:20:12 UTC 2017] 30情報: Initializing log4j from [C:\typical\Tomcat8\webapps\mcloud-service\WEB-INF\classes\log4j.xml] [木 5 25 01:20:12 UTC 2017] 31情報: Deployment of web application archive C:\typical\Tomcat8\webapps\mcloud-service.war has finished in 29,201 ms [木 5 25 01:20:12 UTC 2017] 32情報: Webアプリケーションディレクトリ C:\typical\Tomcat8\webapps\docs を配備します [木 5 25 01:20:12 UTC 2017] 33情報: Deployment of web application directory C:\typical\Tomcat8\webapps\docs has finished in 109 ms [木 5 25 01:20:13 UTC 2017] 34情報: Webアプリケーションディレクトリ C:\typical\Tomcat8\webapps\flex を配備します [木 5 25 01:20:13 UTC 2017] 35情報: Deployment of web application directory C:\typical\Tomcat8\webapps\flex has finished in 49 ms [木 5 25 01:20:13 UTC 2017] 36情報: Webアプリケーションディレクトリ C:\typical\Tomcat8\webapps\manager を配備します [木 5 25 01:20:13 UTC 2017] 37情報: Deployment of web application directory C:\typical\Tomcat8\webapps\manager has finished in 100 ms [木 5 25 01:20:13 UTC 2017] 38情報: Webアプリケーションディレクトリ C:\typical\Tomcat8\webapps\ROOT を配備します [木 5 25 01:20:13 UTC 2017] 39情報: Deployment of web application directory C:\typical\Tomcat8\webapps\ROOT has finished in 44 ms [木 5 25 01:20:13 UTC 2017] 40情報: Starting ProtocolHandler ["http-nio-8080"] [木 5 25 01:20:13 UTC 2017] 41情報: Starting ProtocolHandler ["ajp-nio-8009"] [木 5 25 01:20:13 UTC 2017] 42情報: Server startup in 29659 ms [木 5 25 01:20:13 UTC 2017] 43重大: サーブレット serviceServlet のServlet.service()が例外を投げました [木 5 25 01:22:05 UTC 2017]
<実現したい事>
Eclipse「log4j.xml」で設定している様に、Tomcatに投げて発生したログをEclipseコンソールに表示させたいです。
※Tomcatの起動時のログまではEclipseのコンソールには表示されますが、「C:\applog\error.log」には出力されません。
Java触り始めて、数日の素人なので、分かり易く教えて頂けると幸いです。
また、回答する上で、必要な情報があれば、ご教授下さい。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/25 04:19
2017/05/25 08:12
2017/05/26 01:37
2017/05/26 05:32
2017/05/26 10:32