00:01
来这个日志这方面哈。我们现在也有日志。现在这个也有日志,但是现在这个日志。现在这个日志是这样的哈,我们现在呢,他。是导入了这个日志呢,所需要的相关的包啊,这个其实我们现在现在我们用的不是绕街。我们学买贝蒂的时候呢,可能我们用的是就是哎,单独的用一个log机。单独的用一个logo。哎,现在我们这里边儿,你看他没有log佛切的这个包。嗯,没有log街,现在呢,它其实是这个这个SLF街,然后呢和这个log back他们的一个组合。那么我们,呃,从头开始,咱们来给大家去介绍一下啊。就是说这个日志呢,其实它还是挺重要的。我们将来这个程序呢,运行过程中出了什么问题,首先想到的还是通过日志来进行这个排查。
01:03
啊,那么都有哪些东西,呃,会产生这个日志呢?啊,对于我们整个的一个系统啊,我们开发的一个项目,它的整个的这样一个系统。你看我们有这个肯定都是运行在这个硬件的服务器上的。哎,都是运行在这个硬件的服务器上的。硬件服务器上呢,装Linux系统。啊,这个我们已经有深刻的体会了。那么Linux系统本身哈,就它本身其实就是要有有很多这个日志的,但是这个日志呢,主要还是运维工程师去看。我们作为Java程序员呢,看Linux系统的这个日志呢,还是会隔隔着一层啊,但是它会有日志。除了这个呢,比如说运行我们Java程序的话,它会有我们这个tomcat。就我们tomcat会在Linux系统上面去跑,Tomcad肯定是有日志的。啊,他们看得起,肯定是有日志的,哎,你把它跑起来对吧,哎,这个肯定是有日志的。
02:03
嗯,那么我们Java程序本身啊,它肯定也要打印日志。当然它打印日志呢,其实也就是也是和tomcat一样哈,都打印到我们控制台里边了,这些是属于我们比较熟悉的。除了这些呢,比如说将来我们如果装上red,装elastic search啊,再装一些个别的,我们管这些呢,叫做中间键啊,叫做中间键。这些东西呢,他们也会打印日志啊,就是说我们可以通过装的时候呢,去指定好这个配置文件的位置啊,然后让他去把日志呢,存储到指定的配置文件,指定的日志的文件里边。哎,如果不保存到不不写入到文件里边呢,这个时间长了,这个日志它就就丢了,对吧,就是它打印打印到控制台的话啊,它打印完了最后就没有了啊,所以说一般还是会放在文件里边。那这些东西呢,我们将来要用的还有好多别的哈,那么他们也都要去让他们去打印日志。
03:04
啊,这个出了问题以后,首先呢,还是看日志看出了什么问题。啊,所以说呢,我们现在呢,我们要说的是我们Java程序里边的日志啊,现在咱们先不说别的,就说Java程序里边日志。那么这个日志有哪些个技术我们可以去用啊?首先呢,我们说分成,它分成门面和实线这两部分。门面是什么呢?门面其实我们你可以认为就是接口层。啊,门面它就是接口层。就好比说我们JDBC。啊,它是一个,它是一层这个接口,它没有具体实现啊,就类似于是他啊,只不过改了个换了个别的名叫门面。嗯。然后呢,说这个门面。门面相关的日志哈,有这样一些,有这个GCL是什么呢?Jakatas login。
04:00
这个呢,其实就是我们spring依赖的那个com slogan啊,就是其实就是它这个呢,就感觉它比较陈旧了。我们SL for街呢,叫simple looking for for Java啊,这是一个简单的日志的门面,是专门为我们Java服务的,哎,这是我们觉得比较适合使用的。这有一个同一作者哈,他指的是和我们log机和log back是同一个作者。还一个呢,解boss。嗯,解boss我们其实接触的比较相对少一些啊,其实这个我们现在因为不怎么用harmnet了啊,Harmlet就属于解boss公司的。啊,他这个这个这一套日志系统吧,是比较适合一些个特殊的专业领域使用。啊,这个这个东西用着就就我们接触就更少了啊,这是这个门面有这些。那么具体实现呢,我们说这个log接呢,是一个怎么说呢,简单快捷的啊,就是导log接,简单的配个proper文件就可以用。
05:02
啊,这是这是呃。这三个都是同一个作者,但是呢,Log佛街呢,是先有的先有的佛街。先有log破街以后呢?这个阿法奇哈,他把log for的收购了。收购以后呢,这个他又全面的进行了重构。可能就是买它的一个牌子。啊,因为你你因为你收购了以后,你把里边代码全部都重写了。你买的是代码,买回来以后呢,你又不用这些代码,又自己重新写一遍啊。那我们就说,那他只能说他就是为了买这么个牌子。内部实践、内部实现和log街是完全不一样的。呃,所以说它叫log佛记二。那你谁看的话都会觉得这是log佛街的升级版,但其实呢,它里边可以说完全没有关系,阿尔帕西总干这种事儿。最早有个软件叫star。其实不叫就叫stress。
06:01
跟他跟他同时期的,或者比他晚一点呢,有一个有一个框架叫web。后来人们发现web work比trus好很多。完了呢,这个内部结构呢,比stress呢,也非常的也比它也好很多啊,所以说这个stress呢,并不是说你简单的改一改就行了啊,所以说这个有有很大的差别,然后呢,阿帕奇呢,就把web work呢就给它收购了。收购了呢,他把这个web web work改了个名字呢,叫RU2。其实TRUS2和trus相对来说,TRUS1没有任何关系,WEBTRU2是web work。啊,他他经常干这种事儿。所以说其实这个和我们这个是两码事啊。完了呢,这个lock破街的这个作者呢,他这个被收购了以后呢,他又写了一个log back啊,这个log back呢,他比log破街呢,应该说还是要更好啊,优雅非常优雅,非常的强大。
07:00
然后呢,他一想呢,这个我就我自己一个人写的这个东西,它就是有好多不同的版本,那将来别人用的话呢,很不方便。啊,为了方便大家使用,这个作者呢,在写完log back以后,他就开发了这个SL机,就是这个。门面,哎,开发了这样一个门面,让我们这个日志系统呢,能够有一个统一的一个接口。啊,就后边我们会看到这个统计的接口,接口它是如何去工作的。所以说呢,因为是同一个作者开发完log back以后啊,他去开发的这个,所以说呢,这个log back你可以把它看成是这个SL街的一个天然的实现。啊,就他俩是无缝兼容的啊,是直接就是有直接这样的,有时间的这个关系。哎,他们三个是同一个作者。这还一个没说的是一个GL,这个是什么呢?java.u.lo比这是JDK自带的一个。
08:02
呃,日志的一个工具吧。那么JDK呢,它自带的东西吧,通常来说呢,因为这不是他的专长,所以这个东西都比较简易。基本上说JDK自带的东西呢,大部分来说都比较简易啊,就是就是说在Java核心之外的一些个别的工具哈,相比较人家专门实现的那个东西,JDK自己的这个东西呢,通常都比较简易。啊,所以说一般来说呢,咱们不考虑用这个JDK自带的这个啊。哎,就是先咱们先有一个初步先有这么一个概念啊,我们用的呢,就是哎,咱们基于这样一个门面,然后呢,咱们去看啊这个日志呢,呃,如何在咱们项目里边用整个的一个日志的系统。下课休息。
我来说两句