4.64Tomcat的日志
2019独角兽企业重金招聘Python工程师标准>>>
Tomcat的日志
FTP服务
测试登录FTP
Tomcat的日志
- Tomcat的日志在/usr/local/tomcat/log目录下
[root@localhost logs]# ls
catalina.2019-02-25.log catalina.out host-manager.2019-02-26.log localhost.2019-02-26.log localhost_access_log.2019-02-26.txt manager.2019-02-26.log
catalina.2019-02-26.log host-manager.2019-02-25.log localhost.2019-02-25.log localhost_access_log.2019-02-25.txt manager.2019-02-25.log
- 在这个目录下有这么多日志文件,当我们遇到问题应该cha 查看哪个呢?
- 遇到问题查看catalina.out,这个日志是核心日志,无论正确或者错误的访问信息,不管是Tomcat服务本身还是Tomcat上跑的应用(如zrlog)产生的日志都会记录到这个日志里
- manager日志是管理台相关的日志,不用关注
- access_log是访问日志,记录的是客户访问站点的情况,这个日志可以yi不用让它记录,而是在nginx代理商记录访问信息,所以也不用关注
- 这个带日期的catalina.xxxx-xx-xx.log是catalina的引擎相关的日志,可以认为是Tomcat服务本身的日志,这个也不用关注,因为它和catalina.out是重复的,也就是说这个日志中记录的内容在catalina.out这个日志中就有
- locashhost xxxx-xx-xx.log,它主要是应用初始化(listener,filter,servlet)未处理的异常最后被Tomcat捕获而输出的日志,也不用太关注
日志配置文件conf/logging.properties
- 这里面主要定义了非访问日志的一些属性,比如日志路径、哪些日志记录到哪个文件中(名字)、日志级别、存储周期等信息,这个配置文件我们
一般都不会去更改。而访问日志的格式、路径是在server.xml中定义的,如下是在server.xml配置文件中为访问日志的配置片段:
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_access_log" suffix=".txt"pattern="%h %l %u %t "%r" %s %b" />
catalina.out文件并没有日期后缀,意味着该文件不会自动切割,它会越写越大、直到将硬盘的容量写满、解决这个问题的办法有两个。
一:新增一个计划任务,每隔一段时间就清空该文件
crontab的任务计划格式
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root# For details see man 4 crontabs# Example of job definition:
# .---------------- minute (0 - 59) ##分
# | .------------- hour (0 - 23) ##时
# | | .---------- day of month (1 - 31) ##日
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ... ##月
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR ##周 sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed ##执行的命令
- 定时清空catalina.out
[root@localhost etc]# crontab -l
0 0 */5 * * echo "" > /usr/local/tomcat/logs/catalina.out
补充:
- 有两个文件可以控制crontab能否被其他用户使用,/etc/cron.deny和/etc/cron.allow系统默认保留的是/etc/cron.deny,最好选择一个使用,避免逻辑混乱。如果不想用户使用crontab功能,可以将用户添加到/etc/corn.deny文件
- crontab命令
- crontab -u只有root用户能够使用该参数,也就是帮其他用户添加删除crontab任务计划
- crontab -e编辑crontab的工作内容
- crontab -l查阅crontab的工作内容
- crontab -r删除所有的crontab的内容,如果要删除一项,可以使用crontab -e去删除一项
- 使用crontab来新建了任务计划之后,该项计划就会被记录到/var/spool/cron里面,且是以账号来判别的。比如,root用户建了任务计划就会被写到/var/spool/cron/root中;另外cron执行的每一项工作都会被写到/var/log/cron这个日志文件中,所有如果不知道系统是否被恶意运行过cron,可以查看该日志文件
二:用系统自带的logrotate工具切割
- 在logrotate.d下创建Tomcat的切割配置文件
vi /etc/logrotate.d/tomcat
- 在配置文件中添加如下内容
/usr/local/tomcat/logs/catalina.out {copytruncate # 创建新的catalina.out副本后,截断源catalina.out文件daily # 每天进行catalina.out文件的轮转rotate 7 # 至多保留7个副本missingok # 如果要轮转的文件丢失了,继续轮转而不报错compress # 使用压缩的方式(节省硬盘空间)size 16M # 当catalina.out文件大于16MB时,就轮转}
转载于:https://my.oschina.net/u/4080783/blog/3018146
4.64Tomcat的日志相关推荐
- python的日志库logging,真香!!!
学习资源 Python之日志处理(logging模块) python之配置日志的几种方式 logging 官方高级用法 使用方法 LOG_FORMAT = "%(asctime)-15s - ...
- Docker学习(五)-----Docker查看日志
八.Docker查看日志 docker logs 容器名称/ID docker logs -f -t --since="2018-12-1" --tail=10 qfjy_exam ...
- Springboot 利用AOP编程实现切面日志
前言 踏入Springboot这个坑,你就别想再跳出来.这个自动配置确实是非常地舒服,帮助我们减少了很多的工作.使得编写业务代码的时间占比相对更大.那么这里就讲一下面向切面的日志收集.笔者使用lomb ...
- 【Springboot】日志
springBoot日志 1.目前市面上的日志框架: 日志门面 (日志的抽象层): JCL(Jakarta Commons Logging) ...
- log4j屏蔽掉某个包下的log日志打印
在log4j的配置文件下配置 ## Disable other log log4j.logger.com.summaryday.framework.db=OFF log4j定义了8个级别的log(除去 ...
- SpringBoot集成AOP管理日志
写在前面 如何将所有的通过url的请求参数以及返回结果都输出到日志中? 如果在controller的类中每个方法名都写一个log输出肯定是不明智的选择.使用Spring的AOP功能即可完成. AOP ...
- 日志处理logger
20220127 https://mp.weixin.qq.com/s/CgmfVqogqKBzezmIR7ZfsQ https://blog.csdn.net/kyle1314608/article ...
- 2021年大数据ELK(二十二):采集Apache Web服务器日志
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 采集Apache Web服务器日志 一.需求 二.准备日志数据 三.使用Fil ...
- 2021年大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 使用FileBeat采集Kafka日志到Elasticsearch 一.需求分 ...
最新文章
- 使用Categorical_endcoder包对标称变量进行个性化编码
- Android Studio查看Android源代码失败
- python爬虫技术可以干什么-Python实战:网络爬虫都能干什么?
- js const 和 var 的区别
- TCP/IP的层次结构以及各层数据封装的过程 (一)
- 文件管理器android实现,Android开发之简单文件管理器实现方法
- itms-services 格式
- Exchange与ADFS单点登录 PART 5:添加ADFS信赖方信任
- Kotlin学习笔记26 协程part6 协程与线程的关系 Dispatchers.Unconfined 协程调试 协程上下文切换 Job详解 父子协程的关系
- 微电子 半导体 网址 一览表
- 中国锂电池设备行业投资价值评估及竞争策略建议报告2021-2027年
- 微信小程序挑战赛:全校级人脸门禁系统
- 《电动自行车充电领域的液体冷却技术研究》论文笔记
- 【MFC】MFC修改菜单名后不更新问题
- Go slice和arry的区别
- 日常计算机网络基础练习题(每天进步一点点系列)
- pywin32下载安装
- [损失设计]2.Softmax Loss
- 网易服务器修改权限等级,网易企业邮箱新增“管理员权限分级”功能
- 联想键盘最上面一行切换功能
热门文章
- Apache Kafka-生产者_批量发送消息的核心参数及功能实现
- Spring5源码 - 13 Spring事件监听机制_@EventListener源码解析
- 设计模式 - 创建型模式_ 单例模式 Singleton Pattern
- Go中的Map实现机制
- 在Android中实现监听 返回键,主键,菜单键
- python知识:numpy的维度之变
- 显示部分数据标签_长春市农贸市场监测数据显示:粮油和水果价格平稳,部分副食品价格小幅波动...
- python操作hdfs_python 操作hdfs
- npm 安装less插件_Gulp 开发 HTML 静态页面和 Less 实时更新
- windows下配置odbc时userid填什么_BurpSuite + Xray 被动扫描配置