tomcat:日志配置详解(避免日志过多撑爆磁盘)
一,tomcat日志配置
tomcat 对应日志的配置文件:tomcat目录下的/conf/logging.properties。
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################1catalina.org.apache.juli.FileHandler.level = INFO
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.2localhost.org.apache.juli.FileHandler.level = INFO
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.3manager.org.apache.juli.FileHandler.level = INFO
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.4host-manager.org.apache.juli.FileHandler.level = INFO
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandlerorg.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandlerorg.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler# For example, set the org.apache.catalina.util.LifecycleBase logger to log
# each component that extends LifecycleBase changing state:
#org.apache.catalina.util.LifecycleBase.level = INFO# To see debug messages in TldLocationsCache, uncomment the following line:
#org.apache.jasper.compiler.TldLocationsCache.level = INFO
二,tomcat 日志文件详解
tomcat有五类日志:catalina、localhost、manager、admin、host-manager
catalina.out
catalina.out即标准输出和标准出错,所有输出到这两个位置的都会进入catalina.out,这里包含tomcat运行自己输出的日志以及应用里向console输出的日志。默认这个日志文件是不会进行自动切割的,我们需要借助其他工具进行切割(注意:catalina.out文件如果过大会影响)
catalina.YYYY-MM-DD.log
catalina.{yyyy-MM-dd}.log是tomcat自己运行的一些日志,这些日志还会输出到catalina.out,但是应用向console输出的日志不会输出到catalina.{yyyy-MM-dd}.log,它是tomcat的启动和暂停时的运行日志,注意,它和catalina.out是里面的内容是不一样的。
localhost.YYYY-MM-DD.log
localhost.{yyyy-MM-dd}.log主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志,它也是包含tomcat的启动和暂停时的运行日志,但它没有catalina.2018-09-19.log日志全。它只是记录了部分日志。
localhost_access_log.YYYY-MM-DD.txt
localhost_access_log.2018-09-19.txt:这个是访问tomcat的日志,请求时间和资源,状态码都有记录。
host-manager.YYYY-MM-DD.log
host-manager.2018-09-19.log:这个估计是放tomcat的自带的manager项目的日志信息的,未看到有什么重要的日志信息。
manager.YYYY-MM-DD.log
manager.2018-09-19.log : 这个是tomcat manager项目专有的日志文件.
三,Tomcat日志总结
1 Tomcat 日志信息分为两类 :
一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息 。
二是访问日志信息,它记录的访问的时间,IP ,访问的资料等相关信息。
2 访问日志的配置
2.1 默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志
编辑 catalina/conf/server.xml文件.注:catalina/conf/server.xml文件.注:{catalina} 是 tomcat 的安装目录
把以下的注释 (<!-- -->) 去掉即可。
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
-->
2.2 配置tomcat 写出更详细的日志
通过对 2.1 示例中 pattern 项的修改,可以改变日志输出的内容。
该项值可以为: common 与 combined ,这两个预先设置好的格式对应的日志输出内容如下:
common 的值: %h %l %u %t %r %s %b
combined 的值: %h %l %u %t %r %s %b %{Referer}i %{User-Agent}i
pattern 也可以根据需要自由组合, 例如 pattern="%h %l"
对于各fields字段的含义请参照 :
http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html 中的 Access Log Valve 项
3 修改Tomcat运行日志的等级
3.1 日志类型与级别
Tomcat 日志分为下面5类:
catalina 、 localhost 、 manager 、 admin 、 host-manager
每类日志的级别分为如下 7 种:
SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)
3.2 日志级别的设定方法
修改 conf/logging.properties 中的内容,设定某类日志的级别
示例:
设置 catalina 日志的级别为: FINE
1catalina.org.apache.juli.FileHandler.level = FINE
禁用 catalina 日志的输出:
1catalina.org.apache.juli.FileHandler.level = OFF
输出 catalina 所有的日志消息均输出:
1catalina.org.apache.juli.FileHandler.level = ALL
配置完成后,记得重启Tomcat
./shutdown.sh
./startup.sh
tomcat:日志配置详解(避免日志过多撑爆磁盘)相关推荐
- Log4j日志配置详解(Log4j2)
Log4j日志配置详解 一.Log4j升级Log4j2 首先来说一下日志升级,log4j配置的变化,配置文件从log4j.xml变成了log4j2.xml,配置文件的内容也有很大不同,log file ...
- 运维配置:Nginx日志配置详解
Nginx日志配置详解 前言 Nginx日志对于统计.系统服务排错很有用.Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志).通过访问日志我们可以得到用户的I ...
- Tomcat基本配置详解
Tomcat基本配置详解 1.Tomcat的启动与关闭 Tomcat是基于Java开发的,所以在运行Tomcat是必须配置了jre (1)启动 在Tomcat的bin目录下startup.bat( ...
- Apache日志配置详解(rotatelogs LogFormat)
logs/error_log CustomLog logs/access_log common --默认为以上部分 修改为如下: ErrorLog "|/usr/sbin/rotatelog ...
- log4j配置详解及日志等级设置
官方网址: http://logging.apache.org/log4j/1.2/ 参考:http://blog.csdn.net/maxracer/article/details/7920997 ...
- bind日志配置详解
在默认情况下,BIND把日志消息写到/var/log/messages文件中,而这些日志消息是非常少的,主要就是启动,关闭的日志记录和一些严重错误的消息,所以要详细记录服务器的运行状况,需要自己配置服 ...
- springboot日志配输出路径配置_SpringBoot日志配置详解
前言 记录应用系统曰志主要有三个原因 记录操作轨迹.监控系统运行状况.回溯系统故障.记录操作行为及操作轨迹数据,可以数据化地分析用户偏好,有助于优化业务逻辑,为用户提供个性化的服务.例如,通过 ac ...
- Nginx日志配置详解
前言 Nginx日志对于统计.系统服务排错很有用.Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志).通过访问日志我们可以得到用户的IP地址.浏览器的信息,请 ...
- logback日志配置详解
一. 近期自己的项目想要一个记录日志的功能,而springboot本身就内置了日志功能,然而想要输入想要的日志,并且输出到磁盘,然后按天归档,或者日志的切分什么的,自带的日志仅仅具有简单的功能,百度了 ...
- Log4J日志配置详解3
log4j.properties文件一log4j.rootLogger=DEBUG,LogFileCometd,LogFile,ErrorFile,Console# 控制台输出,info级别(Syst ...
最新文章
- 压力测试和负载测试区别_如何理解与区分软件性能测试、负载测试、稳定性测试、压力测试...
- 容器编排技术 -- Init 容器
- 解决nginx下connect() to 127.0.0.1:3000 failed
- 为什么数据库连接很消耗资源?
- ffmpeg源码分析_ffmpeg音视频同步的几种策略
- LeetCode(709)——转换成小写字母(JavaScript)
- JDK自带内存及线程分析工具
- 求解偏微分方程开源有限元软件deal.II学习--Step 7
- 小米路由器刷 linux,小米路由器刷入Padavan系统
- 使用ffmpeg下载m3u8流媒体
- 2018麦考林杂志计算机科学,加拿大大学2020年最新的麦考林杂志排名
- 2020牛客暑期多校训练营(第九场)	The Escape Plan of Groundhog
- 手机构建Linux环境,Linux手机DIY.构建统一安装包
- Unity3d 录屏功能教程指南 | Cross Platform Replay Kit
- 漫谈测试成长之探索——测试排期
- ADAMS 常用快捷键速记
- HTML5 新的 Input 类型
- 内容社区:始于内容,火于流量,困于商业化
- BUPT-CSAPP 期末复习书后参考题节选及评注
- QML---Repeater