windows下tomcat控制台按天输出catalina.out日志

windows下tomcat控制台按天输出catalina.out日志

    • 方法一
    • 方法二

windows服务器情况下,无法和linux服务器一样,启动web服务之后,直接tail查看日志,而windwos控制台的输出空间有限,如果遇到大量错误的情况下,console日志刷新太快,无法看到首次错误是在哪里出现的,会产生很多不必要的麻烦,所以从网上查找了windows控制台信息输出到文件的方法,记录一下。

catalina.日期.log
1、主要是记录tomcat启动时候的信息;
2、启动的JVM参数以及操作系统等日志信息;
3、没有使用log4j等日志机制,系统的的错误信息与打印语句也在这个日志文件中记录;
4、linux下所有的日志都在catalina.out中。

方法一

步骤1:打开bin下面的startup.bat文件,

把 call "%EXECUTABLE%" start %CMD_LINE_ARGS%
改为 call "%EXECUTABLE%" run %CMD_LINE_ARGS%
此修改:不会弹出新的cmd窗口,直接在本窗口运行

步骤2:打开bin下面的catalina.bat文件(文件末尾),
在每个%ACTION%后面添加

>> %CATALINA_HOME%\logs\catalina.%date:~0,4%-%date:~5,2%-%date:~8,2%.out

生成的日志如下
在这里插入图片描述

结果:
控制台不会打印运行日志(只有少量的信息),运行日志(包括一些错误信息)会存在./log目录下的日志文件中,只能在文件里面看了。不利于维护人员直接判断项目是否启动成功。

方法二

步骤:打开bin下面的startup.bat文件,

把 call "%EXECUTABLE%" start %CMD_LINE_ARGS%
直接改为 call "%EXECUTABLE%" run %CMD_LINE_ARGS% >>%CATALINA_HOME%\logs\catalina.%date:~0,4%-%date:~5,2%-%date:~8,2%.out 2>&1

其中将start修改为run是修改tomcat的启动方式。在>>之后加的是在tomcat安装目录下的logs文件夹中生成catalina.年-月-日.out的日志存储文件。

修改完成后双击startup.bat启动tomcat服务器会发现命令窗口中没有内容,这样就对了。
在这里插入图片描述
生成的日志如下
在这里插入图片描述

由于配置 run 启动方式,导致catalina.bat文件的窗口名称配置已失效
只能去startup.bat文件里面重新配置
在这里插入图片描述

结果:
命令窗口中直接什么内容都没有了,同样不利于维护人员直接判断项目是否启动成功,只能查看日志文件了解是否启动成功。

通过以上两种方法得知,windows下的startup.bat 方式改为 run 以后
控制台是没有办法再输出内容的,只能去生成的日志文件里面判断项目的启动情况,
要么控制台打印,没有日志存储;
要么日志存储;没有控制台打印;
两者不能同时都有,让人很无语。

有不有什么办法去实现呢?最后终于找到了,要通过tee.exe 去实现这个效果

在http://sourceforge.net/projects/unxutils/?source=dlp 下载UnxUtils.zip,
请添加图片描述
解压后把UnxUtils\usr\local\wbin下的tee.exe 复制到windows\system32 里面即可

打开bin下面的startup.bat文件,
在末尾加上 chcp 65001 且修改 call “%EXECUTABLE%” start %CMD_LINE_ARGS%
如下:

chcp 65001call "%EXECUTABLE%" run %CMD_LINE_ARGS% 2>&1 | tee %CATALINA_HOME%\logs\catalina.%Date:~0,0%%Date:~3,4%-%Date:~8,2%-%Date:~11,2%.out

如果执行不成功的话,可能是cmd下无法执行chcp命令
出现这种报错(chcp不是内部或外部命令,也不是可运行的程序),就需要去配置环境变量

在系统变量PATH下添加路径C:\WINDOWS\system32(最好去复制电脑上面的路径,直接复制这里,可能有符号转义)
我这边环境为Windows10下的截图
在这里插入图片描述
如果是Windows xp 或者 Windows 7 的话,记得前面加个;(如果原来有了的话,就不要加了)
完整的为
;C:\WINDOWS\system32

该处的配置可能需要重启电脑才会生效(重启我自己没有操作,可能我之前就配置过了这个变量)

最后,我是实现了既可以日志存储;又可以控制台打印

相关链接
https://blog.csdn.net/weixin_42250959/article/details/103474660
标题改为中文后标题乱码问题:
https://blog.csdn.net/lixingecho/article/details/115945423
https://www.cnblogs.com/dannylinux/p/10873993.html
https://www.jianshu.com/p/22202f4268af
windwos下保存tomcat日志,同时控制台输出
https://blog.csdn.net/itlijinpeng/article/details/129142114

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/160144.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【leetcode】88. 合并两个有序数组(图解)

目录 1. 思路(图解)2. 代码 题目链接:leetcode 88. 合并两个有序数组 题目描述: 1. 思路(图解) 思路一:(不满足题目要求) 1. 创建一个大小为nums1和nums2长度之和的…

ADO实战指南

这里写目录标题 ADO概念ADO主要对象对象间的相互联系对象模型示意图 关键代码关于代码中的一些问题设置字符串连接对象OLE DB是什么?与ADO的关系是什么?执行命令时,使用连接对象来访问数据库。close与nothing做了什么事?连接对象为…

回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测

回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测 目录 回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测&…

产品经理入门学习(三):产品解决方案

参考引用 黑马-产品经理入门基础课程 1. 需求分析 1.1 需求分析的目的 1.2 需求分析的方法 案例分析 福特公司的创始人亨利福特说:如果我当年去问顾客他们想要什么,他们肯定会告诉我:一匹更快的马 1.3 需求分析的实际应用 人性七宗罪&#…

“01”滴答“摩尔斯电码”加密解密单个字符

“01”替换滴嗒“.-”“摩尔斯电码”字符,加密解密键盘输入的单个字符。 (本笔记适合熟悉循环和列表的 coder 翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程《 python 完全自学教程》&a…

【LeetCode刷题-队列】--933.最近的请求次数

933.最近的请求次数 class RecentCounter {Queue<Integer> queue new LinkedList<>();public RecentCounter() {}public int ping(int t) {queue.offer(t);while(t - queue.peek() > 3000){queue.poll();}return queue.size();} }/*** Your RecentCounter obje…

STM32HAL-完全解耦面向对象思维的架构-时间轮片法使用(timeslice)

目录 概述 一、开发环境 二、STM32CubeMx配置 三、编码 四、运行结果 五、代码解释 六、总结 概述 timeslice是一个时间片轮询框架&#xff0c;完全解耦的时间片轮询框架&#xff0c;非常适合裸机单片机引用。接下来将该框架移植到stm32单片机运行&#xff0c;单片机…

QT 实现解密m3u8文件

文章目录 概要如何解密M3U8文件呢实现思路和代码序列图网络请求解密 结论 概要 视频文件很多已M3U8文件格式来提供&#xff0c;先复习下什么是M3U8文件&#xff01;用QT的 mutimedia框架来播放视频时&#xff0c;有的视频加载慢&#xff0c;有的视频加载快&#xff0c;为啥&am…

回归预测 | Matlab实现POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机多变量回归预测

Matlab实现POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机多变量回归预测 目录 Matlab实现POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机的多变量回归…

Rust语言和curl库编写程序

这是一个使用Rust语言和curl库编写的爬虫程序&#xff0c;用于爬取视频。 use std::env; use std::net::TcpStream; use std::io::{BufReader, BufWriter}; ​ fn main() {// 获取命令行参数let args: Vec<String> env::args().collect();let proxy_host args[1].clon…

[双指针] (三) LeetCode LCR 179. 查找总价格为目标值的两个商品 和 15. 三数之和

[双指针] (三) LeetCode LCR 179. 查找总价格为目标值的两个商品 和 15. 三数之和 文章目录 [双指针] (三) LeetCode LCR 179. 查找总价格为目标值的两个商品 和 15. 三数之和查找总价格为目标值的两个商品题目分析解题思路代码实现总结 三数之和题目分析解题思路代码实现总结 …

陕西某小型水库雨水情测报及大坝安全监测项目案例

项目背景 根据《陕西省小型病险水库除险加固项目管理办法》、《陕西省小型水库雨水情测报和大坝安全监测设施建设与运行管理办法》的要求&#xff0c;为保障水库安全运行&#xff0c;对全省小型病险水库除险加固&#xff0c;建设完善雨水情测报、监测预警、防汛道路、通讯设备、…