发表于: 2017-11-27 23:27:22

1 634


今天完成的事情:

1.主要学习log4j

2.看了看阿里云的API

(1)早先注册过阿里云。这次开启OSS存储

(2)存储空间(Bucket)

  • 同一个存储空间的内部是扁平的,没有文件系统的目录等概念,所有的对象都直接隶属于其对应的存储空间。
  • 每个用户可以拥有多个存储空间。
  • 存储空间的名称在 OSS 范围内必须是全局唯一的,一旦创建之后无法修改名称。
  • 存储空间内部的对象数目没有限制。
  • 只能包括小写字母、数字和短横线(-)。
  • 必须以小写字母或者数字开头和结尾。
  • 长度必须在3-63字节之间。

  • 存储空间是您用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。您可以设置和修改存储空间属性用来控制地域、访问权限、生命周期等,这些属性设置直接作用于该存储空间内所有对象,因此您可以通过灵活创建不同的存储空间来完成不同的管理功能。

  • (3)存储空间的命名规范如下:
  • 只能包括小写字母、数字和短横线(-)。
  • 必须以小写字母或者数字开头和结尾。
  • 长度必须在3-63字节之间。

明天计划的事情:

继续做任务,要沉淀菜鸡的自己。

遇到的问题:

日志的输出过程有过报错,主要原因是没有搞通配置文件的加载过程

收获:

Log4j 由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。日志信息的优先级从高到低有 ERROR 、 WARN 、 INFO 、 DEBUG ,分别用来指定这条日志信息的重要程度;日志信息的输出目的地指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容。

1.配置Appender

(1)--log4j.appender.appenderName= appenderClassName

appenderClassName必须为类的全名,log4j提供以下几种: 

1)org.apache.log4j.ConsoleAppender            : 控制台 

2)org.apache.log4j.FileAppender               : 文件 

3)org.apache.log4j.DailyRollingFileAppender   : 每天产生一个新的日志文件 

4)org.apache.log4j.RollingFileAppender        : 文件达到指定大小时产生一个新的日志文件

5)org.apache.log4j.WriterAppender             : 将日志以流形式发送到任意指定地方

(2)--log4j.appender.appenderName.option1= value1 

option根据appenderClass的不同而有所区别,但有些是共同的. 

option为layout时指定appenderName的布局 

--log4j.appender.appenderName.layout= layoutClassName 

--log4j.appender.appenderName.layout.option1= value1       

layoutClassName必须为类的全名,log4j提供以下几种: 

1)org.apache.log4j.HTMLLayout     : 以HTML表格形式布局

2)org.apache.log4j.PatternLayout  : 指定格式布局 

3)org.apache.log4j.SimpleLayout   : 包含日志级别和信息的字符串

4)org.apache.log4j.TTCCLayout     : 包含日志产生的时间、线程、类别等等信息 

(3)option根据layoutClass的不同而有所区别,但有些是共同的. 

option为ConversionPattern时指定布局格式. 

--log4j.appender.appenderName.layout.ConversionPattern= PatternString 

PatternString为格式字符串,如下 

1)%m : 要输出的信息 

2)%p : 输出级别 

3)%r : 输出自应用启动到输出该log信息耗费的毫秒数 

4)%c : 输出所在类全名

5)%t : 线程名 

6)%n : 换行符(根据平台不同而不同)

7)%d : 输出日期和时间,可以指定格式,如: %d{yyyy MM dd HH:mm:ss}

8)%l : 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。

2.得到记录器

使用 Log4j ,第一步就是获取日志记录器,这个记录器将负责控制日志信息。

其语法为: public static Logger getLogger( String name)

3.加载配置文件

(1)自动加载配置文件:

log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件。然后加载配置。配置文件放置位置正确,不用在程序中手动加载log4j配置文件。如果将配置文件放到了config文件夹下,在build Path中设置下就好了。

(2)若要手动加载配置文件如下:

1)PropertyConfigurator.configure("log4j.properties") 默认读取的是项目根目录的路径。此时的log4j.properties要放在项目目录下。

2)一般,一个java项目会有很多的配置文件,建议把所有的配置文件放到一个文件夹下

3)如果不手动设置,不用人为的写加载log.properties文件的代码时,直接放src目录下,千万要记得,如果新建一个JAVA项目,src文件要弄成原文件包才行

4)项目打成jar包时,一般不会把配置文件也打进jar包

如果是第一种方式,直接将log4j.properties文件和生成的HelloWorld.jar放在同一目录下,项目就能顺利读取配置文件。

如果是第二种方式,要建立config文件夹,把配置文件放入其中,再将config文件和生成的HelloWorld.jar放在同一目录下,项目就能顺利读取配置文件。


返回列表 返回列表
评论

    分享到