【トラブル】【Tomcat】Tomcatのトラブルシューティング

Tomcat起動できない

https://blogs.yahoo.co.jp/dk521123/36706185.html
Tomcatを設定して、開始しよう試みたら(sudo systemctl start tomcat)、
以下の「エラー内容」が表示

発生環境

 * OS : CentOS7
 * Java : openjdk version 1.8.0_111
 * Tomcat : Apache Tomcat v8.5.20

エラー内容

Tomcat起動開始実行後のメッセージ
Job for tomcat.service failed because the control process exited with error code. See "systemctl status tomcat.service" and "journalctl -xe" for details.
「journalctl -xe」実行後のエラーメッセージ・一部抜粋
 9月 05 22:27:45 localhost.localdomain startup.sh[14447]: touch: `/usr/local/tomcat/logs/catalina.out' に touch できません: 許可がありません
 9月 05 22:27:45 localhost.localdomain systemd[1]: tomcat.service: main process exited, code=exited, status=1/FAILURE
 9月 05 22:27:45 localhost.localdomain startup.sh[14447]: /usr/local/tomcat/bin/catalina.sh: 行 434: /usr/local/tomcat/logs/catalina.out: 許可がありません
 9月 05 22:27:45 localhost.localdomain systemd[1]: Failed to start Apache Tomcat 8.5.
-- Subject: Unit tomcat.service has failed

原因

Tomcatを実行する所有者がちゃんと設定されていない

解決方法

所有者をTomcatを実行するユーザに設定しなおす
# sudo chown -R 【ユーザ名】:【グループ名】 【Tomcatパス】
sudo chown -R tomcat:tomcat /usr/local/tomcat

■ Win起動時にエラー「Unable to open the service 'Tomcat6'」が表示される

概要

 Windows7を起動時に以下のエラーダイアログが表示される

■タイトル
Application System Error

■文言
アクセスが拒否されました
Unable to open the service 'Tomcat6'

原因

TomcatのExeが管理者として実行されていないため

解決方法

[1] TomcatのExeがあるところまで、移動
[2] 「Tomcat6w.exe」を右クリックし[プロパティ]を選択
[3] 「互換性」タブの中の「特権レベル」にある「管理者としてこのプログラムを実行する」にチェックを入れる

参考文献

http://www.javadrive.jp/servlet/install/index8.html
http://d.hatena.ne.jp/dooluka/20110925/1316958078

■ 「Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler...」が表示される

概要

 * Tomcat8において、しばらく放置していたら、以下のようなエラー内容が表示された

エラー内容

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "http-bio-8080-exec-2"

原因

 * メモリ不足

解決方法

 * メモリを増やす

Linux

 * 【Tomcat Home】/bin/setenv.sh を用意し、以下のようにメモリを設定する(数字は以下の目安を参考に)

export JAVA_OPTS="-Dfile.encoding=UTF-8 -Xms3072m -Xmx6144m -XX:PermSize=512m -XX:MaxPermSize=1024m"

# 【目安】
# メモリ最大使用量(-Xmx)搭載メモリの半分程度。
# メモリ初期使用量(-Xms)Xmxで指定した数値の半分位

Windows

http://groupsession.jp/v4/support/tomcat_setting.html