tomcat 启动时使用的是java.util.logger 日志框架
tomcat 实现类
package org.apache.juli.logging;
import java.util.logging.ConsoleHandler;
import java.util.logging.Formatter;
import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
* Hardcoded java.util.logging commons-logging implementation.
*/
class DirectJDKLog implements Log {
下面在启动类中定义了一个log 对象
package org.apache.catalina.startup;
import java.io.File;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.catalina.Globals;
import org.apache.catalina.security.SecurityClassLoad;
import org.apache.catalina.startup.ClassLoaderFactory.Repository;
import org.apache.catalina.startup.ClassLoaderFactory.RepositoryType;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
/**
* Bootstrap loader for Catalina. This application constructs a class loader
* for use in loading the Catalina internal classes (by accumulating all of the
* JAR files found in the "server" directory under "catalina.home"), and
* starts the regular execution of the container. The purpose of this
* roundabout approach is to keep the Catalina internal classes (and any
* other classes they depend on, such as an XML parser) out of the system
* class path and therefore not visible to application level classes.
*
* @author Craig R. McClanahan
* @author Remy Maucherat
*/
public final class Bootstrap {
private static final Log log = LogFactory.getLog(Bootstrap.class);
在main函数中我们打印一个debug日志
/**
* Main method and entry point when starting Tomcat via the provided
* scripts.
*
* @param args Command line arguments to be processed
*/
public static void main(String args[]) {
String javaVersion = System.getProperty("java.version");
log.debug("starting ..."+javaVersion);
该日志是打不出来的
为什么呢?
如何让这该日志打印出来呢?
第一修改tomcat_home/conf/logger.properties 文件日志级别
结果依然没有打印出来
为什么呢?
因此此刻tomcat 并没有启动,默认读的日志文件依然是java_home/jar/lig/logger.properties 文件
修改该文件日志级别后日志打印正常。
细心的朋友们可能会注意到,tomcat为什么会打印红色日志?
因为
/**
* Create a ConsoleHandler for System.err.
*
* The ConsoleHandler is configured based on
* LogManager properties (or their default values).
*
*/
public ConsoleHandler() {
sealed = false;
configure();
setOutputStream(System.err);
sealed = true;
}
System.err 是打印红色字体的
结束...
tomcat 日志从这里开始,欢迎持续关注
跟着疯子从0 学计算机,从这里开始...
https://github.com/sparrowzoo
分享到:
相关推荐
Linux shell脚本定时清理tomcat日志文件 本文将详细介绍 Linux 环境中使用 shell 脚本来定时清理 Tomcat 日志文件的方法。该方法使用 cron 机制来实现每天自动切割日志文件,并删除 4 天前的日志文件。 知识点一:...
### Tomcat日志过大问题及解决方案 在日常的运维工作中,Tomcat作为一款广泛使用的Java应用服务器,其日志管理尤为重要。特别是在生产环境中,随着系统的持续运行,日志文件(如`catalina.out`)可能会不断增大,...
"Linux中Tomcat日志切割"是指通过特定的工具或脚本,将Tomcat的日志文件`catalina.out`按照日期进行分割,以实现日志的有序管理和存储。通常,日志切割有助于保持日志文件的大小可控,避免单个文件过大导致的读写...
1. 创建配置文件:在`/etc/logrotate.d/`目录下创建一个针对Tomcat日志的配置文件,例如`/etc/logrotate.d/tomcat`。使用`vim`编辑器写入日志文件的路径,例如`/home/odysee/General/tomcat8.5/logs/catalina.out`。...
本文将详细介绍 Tomcat 的日志配置,包括日志开关文件、日志信息、修改日志级别和使用 Log4j 记录应用程序日志或系统日志。 一、Tomcat 中的日志开关文件 Tomcat 中的日志开关文件是 logging.properties,位于 ...
### Tomcat日志详细说明 #### 一、Tomcat日志概述 Apache Tomcat作为一款开源的Servlet容器,被广泛应用于Java Web应用的部署。它不仅支持Servlet还支持JSP等技术,是学习和开发Java Web项目的理想选择之一。为了...
"win系统下的tomcat日志按日期切割工具"指的是在Windows环境下对Tomcat日志进行自动切割的解决方案。通常,Linux系统中有一个名为`logrotate`的工具用于此目的,但在Windows上,我们可以使用类似功能的`cronolog`...
本篇将详细讲解Tomcat日志设置的相关知识点,旨在提供一套实用的解决方案。 首先,Tomcat的日志主要分为两种类型:Catalina日志和Host日志。Catalina日志记录了Tomcat服务器整体运行的信息,而Host日志则针对每个...
标题 "Tomcat日志配置所有包" 涉及到的是Apache Tomcat服务器的日志管理,这是一项关键的系统维护任务,确保应用的稳定性和问题排查能力。在Tomcat中,日志配置允许开发者和管理员监控服务器的行为,记录错误信息...
标题中的“tomcat日志切分方案”是指在Apache Tomcat服务器中管理日志文件的一种策略,目的是为了更好地管理和分析日志数据。日志切分通常涉及到日志滚动,即根据时间或者其他规则(如文件大小)自动创建新的日志...
### Linux-定期清理Tomcat日志 在现代IT环境中,服务器日志管理是维护系统稳定性和性能的关键环节之一。特别是对于部署了Tomcat等应用服务器的环境来说,随着时间的推移,日志文件会不断积累并占用大量磁盘空间。这...
Tomcat 不显示详细日志的问题解决方案 Tomcat 是一个流行的 Java Web 服务器,用于部署和运行基于 Java 的 Web 应用程序。但是,在某些情况下,Tomcat 的详细错误日志可能会消失,只报一个万恶的 Context [] ...
win7自动清除tomcat缓存及日志
这个“最新Tomcat日志查看包”正是为了帮助我们更好地管理和分析Tomcat的日志而设计的。 首先,我们需要理解为什么只依赖控制台打印的错误信息是不足的。在开发和调试阶段,控制台输出可以提供实时反馈,但在生产...
在IT行业中,日志管理是系统运维和故障排查的关键环节,尤其对于服务器应用程序如Tomcat来说,日志记录能够提供宝贵的诊断信息。Tomcat作为一款流行的开源Java Servlet容器,其日志配置对于开发者和运维人员至关重要...
本篇文章将详细探讨Tomcat日志文件的配置和日常管理。 首先,Tomcat的日志输出主要分为两种类型:Catalina日志和主机应用日志。Catalina日志主要记录Tomcat服务器本身的操作信息,而主机应用日志则针对每个部署的...
在Linux环境中,Tomcat作为广泛使用的Java应用服务器,其日志管理是系统监控和问题排查的重要环节。默认情况下,Tomcat的主要日志输出文件是`catalina.out`,它记录了服务器启动、运行和关闭过程中的所有标准输出和...
【标题】:Tomcat日志切割与Tomcat优化 【内容】: Tomcat作为流行的Java Servlet容器,其性能和日志管理是运维人员关注的重点。日志切割是保持日志文件大小合理、便于管理和分析的重要手段,而Tomcat优化则关乎...
为了帮助开发者更好地理解并解决这些问题,我们可以调整Tomcat的配置,使其输出更详细的错误日志。本篇文章将详细介绍如何进行这样的设置。 1. **启用Tomcat的详细错误日志** Tomcat的错误日志主要通过`logging....
用java swing写的一个简单的日志分析工具,读取的是tomcat默认的日志格式,用的是jdk1.7编译的。...如果日志文件比较大,可以用命令设置内存启动(如:java -Xms512m -Xmx2048m -jar tomcat日志分析器.jar)