将运行信息打印日志到文件中

开发程序经常要从控制台当中获取程序运行的情况,最近在开发在服务器端,导师要求要记录好运行信息,包括异常信息,客户连接情况等信息,但控制台观看有种种限制,如窗口过小阅读不方便,或者在服务器上通过命令行运行jar包时的行数限制等等。于是就想到将运行信息打印日志到文件中。接下来就分享一下这几天研究出来的几种打印日志到文件中的方法。

一:通过开发工具Eclipse设置来直接打印输出到本地文件中。

   在上方的工具栏打开Run -> Run Configuration 或者 Debug Configurations菜单。 然后点击工具栏的Common,勾选 “Output File:”, 填写输出文件路径及文件名。如果你勾选了“Append”,输出的日志将会被追加写入到文件最后,否则将会覆盖重写文件。




二:通过log4j把异常信息打印到日志。

首先是要先把log4j的jar包导入到工程中(jar到可以在网上下载)。然后在log4j.properties配置文件中配置如下信息:

    # 定义 DEBUG 优先级, R 为日志输出目的的
    log4j.rootLogger= DEBUG, R 
    # 设置日志输出类型 , 为文件类型
    log4j.appender.R= org.apache.log4j.FileAppender 
    # 设置日志文件的位置
    log4j.appender.R.file=D\:/Java/logs/logRecord.log
    # 每次在文件尾写入新的日志信息 
    log4j.appender.R.Append= true 
    # 日志输出信息格式类型 
    log4j.appender.R.layout= org.apache.log4j.PatternLayout 
    # 日志输出信息格式为 换行、日期、优先级、 [ 全类名 ] 、日志信息、换行 
    log4j.appender.R.layout.ConversionPattern= %n%d%p [%l] %m%n

示例代码如下:

import org.apache.log4j.Logger;

    public class Test {
           public static void main(String[] args) {
           Logger logger = Logger.getLogger(Test.class.getName());//获取日志记录器,这个记录器将负责控制日志信息
              try {
                            //some code;
                   } catch (Exception e) {
                   logger.info(e.getMessage());//使用Logger对象的debug、info方法输出日志信息
                  }
                }
        }

三:把cmd命令提示符的信息打印到文本文件(如:在服务器上用命令提示符运行jar包的时候可用)

在输入命令后再加上“>”和你想保存的文件地址和名字就行了。
例如:将Ping命令的加长包输出到D盘的ping.txt文本文件。
1、在D:目录下创建文本文件ping.txt(这步可以省略,偶尔提示无法创建文件时需要)
2、在提示符下输入ping www.idoo.org.ru -t > D:ping.txt
3、这时候发现D盘下面的ping.txt里面已经记录了所有的信息
备注:
只用“>”是覆盖现有的结果,每一个命令结果会覆盖现有的txt文件,如果要保存很多命令结果的话,就需要建立不同文件名的txt文件。
那么有没有在一个更好的办法只用一个txt文件呢?答案是肯定的,要在同一个txt文件里面追加cmd命令结果,就要用“>>”替换“>” 就可以了.


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用Python内置的`logging`模块来实现将打印信息保存到txt文件作为日志。 首先,你需要导入logging模块,并且创建一个`logger`对象。然后,你可以使用`logger.addHandler()`方法来添加一个处理器,处理器可以将日志信息输出到控制台或者文件。在添加处理器之后,你就可以使用`logger.info()`等方法来输出日志信息。 下面是一个简单的例子,演示如何将日志信息保存到txt文件: ```python import logging # 创建logger对象 logger = logging.getLogger('my_logger') logger.setLevel(logging.DEBUG) # 创建文件处理器 file_handler = logging.FileHandler('my_log.txt') file_handler.setLevel(logging.DEBUG) # 创建格式化器 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') file_handler.setFormatter(formatter) # 将处理器添加到logger logger.addHandler(file_handler) # 输出日志信息 logger.debug('debug message') logger.info('info message') logger.warning('warning message') logger.error('error message') logger.critical('critical message') ``` 在上面的例子,我们首先创建了一个`logger`对象,并将其日志级别设置为`DEBUG`。然后,我们创建了一个`FileHandler`对象,用于将日志信息保存文件。我们还创建了一个格式化器,将日志信息按照特定的格式输出。最后,我们将文件处理器添加到`logger`对象,并使用`debug`、`info`、`warning`、`error`和`critical`方法输出不同级别的日志信息运行上面的代码后,你将在同级目录下生成一个名为`my_log.txt`的文件,其包含了输出的日志信息

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值