发布远程tomcat后如何查看日志

本文描述了一个Spring MVC项目在本地Eclipse环境下正常运行,但在远程Tomcat服务器上出现启动失败的问题,并通过检查日志文件定位到了具体原因,最终解决了部署问题。

今天遇到一个问题,web的后台工程在eclipse的maven管理的tomcat插件中运行是正常的,但是发布到远程的taocat服务器上运行,却失败了,显示
FAIL - Application at context path /arcgis/rest could not be started
开始,以为是本地的jdk版本和远程tomcat的jdk版本不一致造成的,后来把远程tomcat所在的linux的jdk版本也换成1.8的,发现还是不行。
后来,查看tomcat的log日志文件localhost.2018-02-07.log,发现了错误所在,

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in file [/usr/local/tomcat/webapps/ROOT/WEB-INF/classes/spring/applicationContext-dao.xml]: Invocation of init method failed; nested exception is java.io.FileNotFoundException: class path resource [SqlMapConfig.xml] cannot be opened because it does not exist

说明在class目录下,没有找到SqlMapConfig.xml文件,仔细查找,才发现文件名是sqlMapConfig.xml。改过来后,重新发布,可以运行了。
比较奔溃的是在本地的tomcat上运行,没有发现这个错误。。。
附tomcat下的log文件说明:
tomcat每次启动时,自动在logs目录下生产以下日志文件,按照日期自动备份

localhost.2016-07-05.txt //经常用到的文件之一 ,程序异常没有被捕获的时候抛出的地方

catalina.2016-07-05.txt //经常用到的文件之一,程序的输出,tomcat的日志输出等等

manager.2016-07-05.txt //估计是manager项目专有的

host-manager.2016-07-05.txt//估计是manager项目专有的

localhost_access_log.2016-10-01.txt //tomcat访问日志记录,需要配置。
另:用notepad++可以远程查看和操作linux系统上的文件,非常方便。具体可以看
http://blog.youkuaiyun.com/guoyuannan/article/details/77168387

### 远程Tomcat配置和管理指南 Tomcat 是一个广泛使用的 Java Web 容器,支持通过多种方式实现远程配置和管理。以下是一些关键的配置和管理方法,结合实际应用场景和相关工具。 #### 1. 使用 Manager Web 应用进行远程管理 Tomcat 提供了内置的 Manager Web 应用,允许管理员通过 Web 界面或 HTTP 接口执行部署、启动、停止、重载等操作。为了启用远程管理功能,需要在 `tomcat-users.xml` 文件中为用户分配相应的角色,例如 `manager-script` 或 `manager-gui`: ```xml <role rolename="manager-script"/> <user username="admin" password="admin" roles="manager-script"/> ``` 通过访问 `http://<host>:<port>/manager/html`,可以使用分配的用户名和密码登录并管理部署的应用。此功能支持通过 HTTP 请求执行操作,例如使用 `curl` 命令进行应用部署或重载 [^1]。 #### 2. 配置自动启动与集成 Nginx 在生产环境中,通常需要 Tomcat 在系统启动时自动运行,并通过反向代理(如 Nginx)实现负载均衡和高可用性。在 Windows 环境下,可以通过将 Tomcat 注册为 Windows 服务来实现自动启动。具体步骤包括修改 `service.bat` 文件并执行安装命令: ```bash service.bat install ``` 此外,可以将 Tomcat 与 Nginx 整合,通过 Nginx 的反向代理功能将请求转发到 Tomcat 服务器,从而提升性能和安全性 [^2]。 #### 3. 日志系统的远程管理 Tomcat 6 及其后续版本对日志系统的配置进行了重要改进,使得日志管理更加灵活。通过修改 `logging.properties` 文件,可以实现日志格式的自定义、日志级别的动态调整以及日志管理器的扩展性增强。例如,可以配置日志输出到远程日志服务器或通过 JMX 监控日志信息,从而实现集中化的日志管理 [^3]。 #### 4. 使用 LambdaProbe 进行远程监控 LambdaProbe 是一种基于 Web 的开源监控工具,适用于监控 Tomcat 及其他 Java 应用服务器。它提供了实时监控内存使用、线程信息和 JVM 性能指标的功能。通过简单的配置,可以将 LambdaProbe 集成到 Tomcat 中,从而实现远程监控和管理。具体步骤包括下载 LambdaProbe、将其 WAR 文件部署到 Tomcat,并通过 Web 界面访问监控数据 [^4]。 #### 5. 安全性与远程访问控制 在进行远程管理时,安全性是首要考虑的因素。Tomcat 提供了基于角色的访问控制机制,管理员可以通过配置 `tomcat-users.xml` 文件限制用户权限。此外,建议启用 HTTPS 加密通信,以防止敏感信息在传输过程中被窃取。可以通过配置 `server.xml` 文件中的 `<Connector>` 元素启用 SSL/TLS: ```xml <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS"/> ``` 通过上述配置,可以确保远程管理的安全性 [^1]。 #### 6. 远程调试与故障排查 Tomcat 支持通过 JMX(Java Management Extensions)进行远程调试和监控。通过在 `catalina.sh` 或 `catalina.bat` 文件中添加 JVM 参数,可以启用 JMX 远程监控: ```bash JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" ``` 启用 JMX 后,可以使用 JConsole 或 VisualVM 等工具连接到 Tomcat 实例,实时监控 JVM 的性能指标并进行故障排查 。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值