首页主机资讯Ubuntu Tomcat错误如何排查

Ubuntu Tomcat错误如何排查

时间2025-12-01 12:06:04发布访客分类主机资讯浏览1175
导读:Ubuntu 上 Tomcat 错误排查步骤 一 快速定位 先看日志 确认日志目录:常见为 $CATALINA_HOME/logs(手动安装)或 /var/log/tomcat[9]/(apt 安装)。核心文件包括:catalina.ou...

Ubuntu 上 Tomcat 错误排查步骤

一 快速定位 先看日志

  • 确认日志目录:常见为 $CATALINA_HOME/logs(手动安装)或 /var/log/tomcat[9]/(apt 安装)。核心文件包括:catalina.out(主输出/错误)、localhost.log(应用初始化)、localhost_access_log.*.txt(访问日志)。
  • 常用命令:
    • 实时查看:tail -f $CATALINA_HOME/logs/catalina.out
    • 过滤错误:grep -i “error|exception|fail” $CATALINA_HOME/logs/catalina.out
    • 查看应用初始化日志:less $CATALINA_HOME/logs/localhost.log
  • 若访问异常但进程在,优先查 localhost.loglocalhost_access_log
  • 日志级别调整:编辑 conf/logging.properties,将感兴趣的包或类调到 FINE/FINER 以获取更详细输出。

二 常见故障与对应处理

  • 端口被占用(如 8080/8005
    • 检查:lsof -i :8080 或 netstat -anp | grep 8080
    • 处理:kill 占用进程,或编辑 conf/server.xml 的 改为未占用端口。
  • Java 环境或版本不匹配
    • 检查:java -version、which java;确认 JAVA_HOME 指向 JDK 而非 JRE。
    • 版本匹配:Tomcat 10.x 需 JDK 11+Tomcat 9.x 需 JDK 8+
  • 启动即闪退或进程很快退出
    • 先看 catalina.out 报错;常见为内存不足(OutOfMemoryError)、端口冲突、应用部署失败。
  • 权限或日志目录不可写
    • 检查 logs 目录属主与权限,必要时:chown -R tomcat:tomcat $CATALINA_HOME/logs
  • 应用部署失败或访问 404
    • 检查 webapps 下 WAR/目录是否存在与完整;查看 localhost.log 具体异常;确认访问路径(如应用名或 ROOT)。
  • 下载包错误导致无法启动
    • 若使用源码包(Source Distribution)执行 startup.sh 可能报“找不到主类”,应下载 Binary Distributions 解压使用。

三 环境与版本检查

  • 验证 Java:java -version、javac -version;确保 JAVA_HOME 正确且指向 JDK
  • 兼容性核对:
    • Tomcat 9.x ↔ JDK 8+
    • Tomcat 10.x ↔ JDK 11+
  • APT 安装场景:使用系统 OpenJDK 时,避免与手动设置的 JAVA_HOME 冲突;必要时清理或统一环境变量。
  • 手动安装场景:在 setclasspath.sh 或环境脚本中显式设置 JAVA_HOME/JRE_HOME,避免脚本找不到 JVM。

四 深入诊断与性能排查

  • 线程与内存快照:
    • jps -l | grep tomcat 获取 PID
    • jstack > thread_dump.log 分析线程阻塞/死锁;
    • 结合 VisualVM/JConsole 监控堆、线程、类加载。
  • GC 日志:在 catalina.sh 中设置 CATALINA_OPTS 开启 GC 日志,例如:
    -Djava.awt.headless=true -Xlog:gc*:file=catalina-gc.log:time
  • 连接与数据库:检查 server.xml 连接器参数(maxThreads、connectionTimeout)、连接池配置与数据库响应;必要时用监控工具观察连接数与延迟。

五 服务管理与日志维护

  • APT 服务管理:
    • 状态:sudo systemctl status tomcat9
    • 启动/重启:sudo systemctl start|restart tomcat9
  • 日志轮转:配置 /etc/logrotate.d/tomcat,示例:
    • /usr/local/tomcat/logs/catalina.out { daily; rotate 7; compress; missingok; notifempty; copytruncate; }
  • 清理与保留策略:定期归档/清理旧日志,避免磁盘占满导致无法写入。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Tomcat错误如何排查
本文地址: https://pptw.com/jishu/759958.html
cmatrix在Linux中如何实现彩色矩阵效果 Ubuntu Tomcat更新如何进行

游客 回复需填写必要信息