00:00
行,那关于我们这个JC日志分析啊,咱们就说到这儿了,那一方面呢,是我们这个垃圾回收,那另外一个呢,就是我们这个堆空间的一个占用的情况,哎,我们就解释清楚了,那么接下来的话呢,咱们想再说一个事儿啊,就是刚才呢,我们前面提到过,就是说咱们可以使用一个参数啊,是不是可以导出这个日志啊,对吧?哎,导出这个日志,那你导出这个日志啊,我们可以使用相关的这个呃,日志分析工具呢,去做一个显示,那也就是说呢,咱们现在呢,你看写的都是一些实验代码,这个代码呢,你看展示出来的这个垃圾回收这个行为呢,是不是不是特别多呀,那么真正如果在开发当中,我们呢,这个最后发生一些垃圾回收行为了,咱们要想看这个日志的话呢,你想用肉眼去看这个事儿呢,显然就不太靠谱了。很显然的问题对吧,诶,那这样我们就可以使用相关的一些工具呢,帮我们去读取这些信息,那么这个信息呢,我们就可以呢,提前把它保存在我们相关的一个日志文件当中,使用的指令呢,就是我们这里边的这样的一个指令。哎,就是这样一个指令,OK,那么这块我们就针对前面咱们写的这个程序啊,这呢就是用这个X log j c啊这块呢去写啊CTRLC一下,针对于我们之前写的这个程序,我们把它粘过来。
01:11
啊,在这啊,然后CTRLV一下,嗯,这个注意咱们这个点斜杠的话呢,就表示咱们当前的目录,然后呢,有一个logs的一个文件夹,然后下面有个J c.log。对吧,OK,你看我现在呢,就先就还这样写啊,我我来应一下,然后OK一下,我呢,在没有任何这个说明的情况下呢,我上来我就直接来解这个run了。你看我1.run的话呢,这块提示我说你就没有这个,诶logs这个文件,诶这个文件目录没有对吧?诶我们需要呢,去创建一下这个创建的话呢,大家需要注意咱们当前这个程序的运行,它识别的当前路径啊,不是咱们当前这个module,诶不是当前的module,而是我们当前这个工程,所以呢,你应该在当前这个工程下呢,咱们去创建一个factory啊,这个factory名字呢,就是我们这个叫locks。
02:00
哎,就是跟你这个名字呢一致啊,跟你名字一致,好,我这块呢点一下OK。完成了,然后接下来我们再做一个run操作。看就结束了,当然这个结束的话呢,我们这样子啊,咱把这个踹呢给它加上,要不的话呢,我们这个GC这个日志的话呢,它显示的这个时间段啊,就比较小了啊,我这块呢,每隔50毫秒,咱们让它做一个添加。嗯,咱们你看首先看一下这块已经生成这个文件了,对吧,这个文件呢,就是我们在这块命名的。啊,你可以把它删除也行,或者我们重新覆盖也可以啊,这块我们做一个run。哎,那他这块呢,就先执行着,他会对我们这个这些呢,就这些这个log呢,就重新的覆盖啊,再写出去一份行,那我们使用这个指令呢就可以了啊,这是说的这个事儿,然后呢,生成这个JC日志之后呢,我们如何去使用啊,咱们可以使用相关的一些日志分析工具。哎,那么常见的日志分析工具有哪些呢?我这呢也罗列出来了一些啊j c viver啊,J c easy啊,J c history啊,J c log viver啊等等等等,还有这些,那么大家呢,也可以根据自己的使用情况呢去做选择,这块呢,我想给大家演示的话呢,就可以说一下我们这里边这个前两个,哎可以说一下这个前两个,那J些viewvo的话呢,它实际上呢,是我们对应的一个getthu上的一个地址啊,当然呢,这个可以去对应的去百度搜索一下都行啊,我这呢是提前已经都把它呢下载下来了,对应的就是J些VIVO啊这样一个jar文件了,诶可以直接呢,我们双击一下就可以。
03:30
诶双击一下呢,我就把它启动起来了,整个呢,应该算是比较简单的,对吧,然后我们可以在这呢去导入这个log文件就行。啊,这是我们说这个叫j c VIVO,然后另外一个的话呢,我们可以使用的叫j c easy啊它呢相对来说我觉得功能还是比较强大的,J c easy大家直接去直接呢去百度搜索就可以了,这是他的一个地址。啊,这是他一个地址,这个登录的话呢,稍微的慢一点是吧。那我们先来看一下咱们这块这个文档呢,呃,这个JC日志呢,是不是已经输出了,那没有问题,已经输出完了,对吧?当前呢,咱们是在这个JDK啊八的这个环境下呢,我们生成的这个日志,好,那我们把这个日志呢,CTRLC,为了方便起见呢,我直接呢把它放在咱们的桌面上。
04:16
哎,我就放在这儿了,行,那么一方面的话呢,我们可以使用这个叫JCVI,另外一方面呢,可以用这个叫j c easy,那这块已经出来了,要想能够去读取我们这个日志文件呢,那这个日志文件的一个分析器是吧,直接呢大家在一块儿呢去选择文件。哎,找到我们桌面上的这个j c log。诶找到它,然后我们做一个打开,这个时候呢,做一个alyze,它就给我们做分析啊,需要联网呢,借用服务器的这个资源呢,做分析,咱们呢就先不等它了啊然后的话呢,这个j c view的话呢,直接在这块呢,大家去选择open一个file,哎找到哎正好是desktop是吧,桌面上的我们这个j c lock打开一下。哎,这就行。那这就行,只不过这块呢,你看整个咱们刚才呢,运行的话呢,花的时间啊,我这块写的不长,还是比较短的啊,真正在这个企业当中生产环境下呢,大家可能是运行了好几个小时,是不是才会发生这个,呃,相应的一些这个异常信息啊等等是吧,或者我们运行了几个小时以后呢,你把这个对应的这个j c log呢,你可能可能呢。
05:18
在我们这个日志分析工具里边呢,你想做一个查看,诶这块因为时间比较时间比较短,所以这块大家看到这个,呃,信息量呢,也就比较少一点哈,我这块呢,是截了一个网上的一个图,呃,这个时候呢,它显示这个信息呢,这个持续时间就比较长一些,所以我们看到这个信息呢就更多,在这呢,我们也能看到,这是一个总体的一个情况。哎,总体的一个情况,关于相关这个数据的一个统计分析啊,内存的一个占用情况。诶,你看这块都有显示。啊,这块都有显示,OK,然后这是一个,然后另外的话呢,诶如果我们看一下这个叫呃这些一级的话呢,它就诶更全面一些啊你看这块给我们显示这个信息量呢,它就更大一些,诶我这个图呢,还好出来了一些行,那么针对我们刚才这个文档的话呢,你看呃是这个j c log是吧,这个文件的话呢,我们这个young generation花费的这个。
06:08
呃,多少的这个内存空间啊,这块都给我们显示了啊,老年代这个原空间啊,分别是多少啊,整个加起呢是多少,这块呢,是我们说的一个内存的一个memory占用的一个情况,下面呢,显示的是我们相应的一个,哎,平均的一个GC花费的时间,最大的GC花费的时间啊,20毫秒,这上平均的是12.5毫秒。嗯,还可以是吧,哎,这个停顿时间不算特别大啊。行,然后下边呢,就是关于我们这个相应的这个啊堆空间啊,在这空这个JC之前啊是多少啊,JC之后是多少,诶你看这块呢,它显示的还是非常的友好的。那这些前后的一些变化情况啊,这个呢,给我们提供这个信息量呢,就更加的全面一些啊,那我建议大家呢,你可以考虑使用的就叫j CE easy啊具体一个细节的话呢,我就不在这块呢,给大家一个一个的去读了啊,不一个去读了啊行这呢就是我们来介绍了一下,如何呢,大家去导出我们的这个日志文件,以及呢,咱们可以使用哪些相关的日志分析工具呢,大家做一个日志的分析,通过这个分析啊,咱们再反过来看一下你这个程序呢,如何再进行一个优化,咱们到后边呢,讲到这个调优的时候呢,我们呃,再具体的带着大家呢,去读这个详细的一些信息啊,OK啊,那我们呢,就先关于这个日志分析工具啊,咱们就先说到这儿。
我来说两句