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 &quot;%r&quot; %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的日志相关推荐

  1. python的日志库logging,真香!!!

    学习资源 Python之日志处理(logging模块) python之配置日志的几种方式 logging 官方高级用法 使用方法 LOG_FORMAT = "%(asctime)-15s - ...

  2. Docker学习(五)-----Docker查看日志

    八.Docker查看日志 docker logs 容器名称/ID docker logs -f -t --since="2018-12-1" --tail=10 qfjy_exam ...

  3. Springboot 利用AOP编程实现切面日志

    前言 踏入Springboot这个坑,你就别想再跳出来.这个自动配置确实是非常地舒服,帮助我们减少了很多的工作.使得编写业务代码的时间占比相对更大.那么这里就讲一下面向切面的日志收集.笔者使用lomb ...

  4. 【Springboot】日志

    springBoot日志 1.目前市面上的日志框架: 日志门面 (日志的抽象层):                JCL(Jakarta Commons Logging)                ...

  5. log4j屏蔽掉某个包下的log日志打印

    在log4j的配置文件下配置 ## Disable other log log4j.logger.com.summaryday.framework.db=OFF log4j定义了8个级别的log(除去 ...

  6. SpringBoot集成AOP管理日志

    写在前面 如何将所有的通过url的请求参数以及返回结果都输出到日志中? 如果在controller的类中每个方法名都写一个log输出肯定是不明智的选择.使用Spring的AOP功能即可完成. AOP ...

  7. 日志处理logger

    20220127 https://mp.weixin.qq.com/s/CgmfVqogqKBzezmIR7ZfsQ https://blog.csdn.net/kyle1314608/article ...

  8. 2021年大数据ELK(二十二):采集Apache Web服务器日志

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 采集Apache Web服务器日志 一.需求 二.准备日志数据 三.使用Fil ...

  9. 2021年大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 使用FileBeat采集Kafka日志到Elasticsearch 一.需求分 ...

最新文章

  1. 使用Categorical_endcoder包对标称变量进行个性化编码
  2. Android Studio查看Android源代码失败
  3. python爬虫技术可以干什么-Python实战:网络爬虫都能干什么?
  4. js const 和 var 的区别
  5. TCP/IP的层次结构以及各层数据封装的过程 (一)
  6. 文件管理器android实现,Android开发之简单文件管理器实现方法
  7. itms-services 格式
  8. Exchange与ADFS单点登录 PART 5:添加ADFS信赖方信任
  9. Kotlin学习笔记26 协程part6 协程与线程的关系 Dispatchers.Unconfined 协程调试 协程上下文切换 Job详解 父子协程的关系
  10. 微电子 半导体 网址 一览表
  11. 中国锂电池设备行业投资价值评估及竞争策略建议报告2021-2027年
  12. 微信小程序挑战赛:全校级人脸门禁系统
  13. 《电动自行车充电领域的液体冷却技术研究》论文笔记
  14. 【MFC】MFC修改菜单名后不更新问题
  15. Go slice和arry的区别
  16. 日常计算机网络基础练习题(每天进步一点点系列)
  17. pywin32下载安装
  18. [损失设计]2.Softmax Loss
  19. 网易服务器修改权限等级,网易企业邮箱新增“管理员权限分级”功能
  20. 联想键盘最上面一行切换功能

热门文章

  1. Apache Kafka-生产者_批量发送消息的核心参数及功能实现
  2. Spring5源码 - 13 Spring事件监听机制_@EventListener源码解析
  3. 设计模式 - 创建型模式_ 单例模式 Singleton Pattern
  4. Go中的Map实现机制
  5. 在Android中实现监听 返回键,主键,菜单键
  6. python知识:numpy的维度之变
  7. 显示部分数据标签_长春市农贸市场监测数据显示:粮油和水果价格平稳,部分副食品价格小幅波动...
  8. python操作hdfs_python 操作hdfs
  9. npm 安装less插件_Gulp 开发 HTML 静态页面和 Less 实时更新
  10. windows下配置odbc时userid填什么_BurpSuite + Xray 被动扫描配置