一、如何将log输出到文件中?

1、配置xml文件

 <?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<!-- 将log信息记录到指定文件夹中 -->
<!-- “.”表示当前路径, ./logs表示将log信息存放到该项目的logs文件夹中 -->
<Properties>
<Property name="basePath">./logs</Property>
</Properties>
<!-- appenders表示日志输出的位置 -->
<Appenders>
<!-- 给记录日志的文件命名 -->
<RollingFile
name="File"
fileName="${basePath}/app.log"
filePattern="${basePath}/app-%d{yyyy-MM-dd}.log">
<!-- 设置输出的log信息格式 -->
<PatternLayout
pattern="%d{HH:mm:ss.SSS} %-5level %c{2} -%msg%n" />
<Policies>
<!-- 基于时间触发生成文件的策略 -->
<!-- interval="1"表示每隔一天就会创建新的日志文件 -->
<TimeBasedTriggeringPolicy
interval="1"
modulate="true" />
<!-- 基于大小触发生成文件的策略 -->
<SizeBasedTriggeringPolicy size="100 KB" />
</Policies>
</RollingFile>
<!-- 表示在控制台上输出信息 -->
<Console name="Console">
<!-- 设置输出的log信息格式 -->
<PatternLayout
pattern="%d{HH:mm:ss.SSS} %-5level %c{2} -%msg%n" />
</Console>
</Appenders>
<Loggers>
<!-- 定义级别 -->
<Root level="trace">
<!-- 输出日志的目的地 -->
<AppenderRef ref="File" />
</Root>
</Loggers>
</Configuration>

注:

1、<RollingFile name="File" fileName="${basePath}/app.log" filePattern="${basePath}/app-%d{yyyy-MM-dd}.log">:
fileName="${basePath}/app.log":表示日志信息文件存放的路径和文件名
filePattern="${basePath}/app-%d{yyyy-MM-dd}.log":设置日志文件从第二天开始,生成的文件名后面都加上年月日,这样有助于我们区分日志的生成时间。
2、log文件中设置了2中输出方式,一种是直接输出到控制台,一种是输出到文件中,本文案例是为了演示输出到文件中,因此
<AppenderRef ref="File" />  ref要设置为File。

2、运行代码
 package log4jtutorial;

 import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; public class LoggingFile { private static final Logger log = LogManager.getLogger(LoggingFile.class.getName());
public static void main(String[] args) { log.debug("Debug message logged");
log.error("Error message logged");
log.fatal("Fatal message logged");
}
}

3、查看生成的日志信息

如果有不明白的小伙伴可以加群“555191854”问我,群里都是软件行业的小伙伴相互一起学习。

内容具有连惯性,未标注的地方可以看前面的博客,这是一整套关于ava+selenium自动化的内容,从java基础开始。

欢迎关注,转载请注明来源。

章节十五、8-配置文件File Logging的更多相关文章

  1. 章节十五、7- 配置文件-Console Logging

    一.创建xml文件 1.创建xml文件 在项目中我们需要专门建一个文件夹来放xml文件或者是其它文件. 2.然后对文件夹进行命名 3.选择new  其它 4.选择XML File 5.给xml文件命名 ...

  2. 章节十五、5-记录日志---Log4j

    一.为什么要用Log4j记录日志? 日志记录对于任何应用程序都非常重要. 它可以帮助我们快速调试代码,通过收集代码执行的信息让代码容易维护. 二.Log4j 是什么? Apache为Java提供的日志 ...

  3. 章节十五、9-自定义Loggers

    一.如何给不同的包设置不同的日志级别? 1.针对不同的包来记录不同级别的日志信息 2.在日志xml配置文件中加入配置信息(红色标注) <?xml version="1.0" ...

  4. 章节十五、6-log4 2-用默认的配置

    一.实例演示 package log4jtutorial; import org.apache.logging.log4j.LogManager; import org.apache.logging. ...

  5. 章节十五、3-对象仓库、Page Factory实例应用

    一.如何创建对象仓库 package pageclasses; import org.openqa.selenium.WebDriver; import org.openqa.selenium.Web ...

  6. 章节十五、2-PageObjectModel

    一.在实现自动化过程中,会有很多重复的代码,我们在维护代码时会很困难,如果想解决这个问题,我们就需要使用PageObjectModel(页面对象模型)的方式来进行自动化代码的书写. 二.案例演示 以该 ...

  7. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  8. centos Linux系统日常管理2 tcpdump,tshark,selinux,strings命令, iptables ,crontab,TCP,UDP,ICMP,FTP网络知识 第十五节课

    centos  Linux系统日常管理2  tcpdump,tshark,selinux,strings命令, iptables ,crontab,TCP,UDP,ICMP,FTP网络知识 第十五节课 ...

  9. 我的MYSQL学习心得(十五) 日志

    我的MYSQL学习心得(十五) 日志 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

随机推荐

  1. C# 使用Quartz简单实例以及备忘

    一.导入NuGet  二.创建一个类并实现接口Ijob,并实现该接口中的方法. using Buday.Gold.Cusumer.Lib; using Quartz; using System; us ...

  2. Java 代码界 3% 的王者?看我是如何解错这 5 道题的

    前些日子,阿里妹(妹子出题也这么难)发表了一篇文章<悬赏征集!5 道题征集代码界前 3% 的超级王者>——看到这个标题,我内心非常非常激动,因为终于可以证明自己技术很牛逼了. 但遗憾的是, ...

  3. OpenCV多版本切换和配置--opencv 安装与卸载、添加 opencv_contrib modules 以及 OpenCv 多版本切换

    1. 查看安装Opencv的版本.以及libs和cflags $ pkg-config --modversion opencv $ pkg-config --cflags opencv // 编译链接 ...

  4. openstack-neutron基本的网络类型以及分析

    [概述] Neutron是OpenStack中负责提供网络服务的组件,基于软件定义网络的思想,实现了网络虚拟化下的资源管理,即:网络即服务. [功能] ·二层交换 Neutron支持多种虚拟交换机,一 ...

  5. 个人永久性免费-Excel催化剂功能第104波-批量选择多种类型的图形对象

    在Excel的日常操作过程中,选择绝对是一个高频的操作,之前开发过一些快速选择单元格区域的辅助功能,除了单元格区域,Excel强大之处在于,类似PhotoShop那般可以存放多种图形,并且有图层先后顺 ...

  6. Android学习总结之开发工具AndroidStudio的安装与配置

    安装AndroidStudio 首先下载AndroidStudio的安装包,直接在百度AndroidStudio下载即可,安装过程简单,只需要修改安装路径(不要有空格和中文即可).然后下一步下一步就可 ...

  7. [leetcode] 238. Product of Array Except Self (medium)

    原题 思路: 注意时间复杂度,分别乘积左右两边,可达到O(n) class Solution { public: vector<int> productExceptSelf(vector& ...

  8. Python装饰器 (转)

    多个装饰器执行的顺序就是从最后一个装饰器开始,执行到第一个装饰器,再执行函数本身. #多个装饰器 import time def deco01(func): def wrapper(*args, ** ...

  9. Python3数据驱动ddt

    对于同一个方法执行大量数据的程序时,我们可以采用ddt数据驱动的方式,来对数据规范化整理及输出 一.需要使用python的ddt库,ddt,data,unpack方法 1.仅使用ddt和data,代码 ...

  10. js实现3D切换效果

    今天分享一个3d翻转动画效果,js+css3+h5实现,没有框架. 先看下html部分: <div class="box"> <ul> <li> ...