2020_07_09 学习日记

今天之前都有点迷茫,没有文档,代码量又大(虽然确实挺小的,但是对于我的阅读速度来说的话),如果我想把技术了解了,再去进行修改,根本是不可能的事情。

今天下午,旁边的高级开发学长,带着我去和架构开了个小会。沟通了一下后,学长跟我讲了两个很重要的地方,

1、开会前,他让我明白了,我来公司是工作的,不是来第一线学习的。我之前一直当作,我是来公司里学习一线生产环境提升自己,这确实是我的思想误区。

2、开会后,他问我:“HashMap,会用吗?” 我:“这个肯定大致还是会的。” 他:“那你有把HashMap的源码全看一遍吗?” 我突然明白了我真正应该怎么去了解一个新的项目,不是对着他的一行行代码读过去,力求相关知识全部掌握。 

并且,他还说到了“代码不要从底层开始看,那根本看不完。” 恰恰与此相对应的,我专门找到了项目里最底层的代码在往上面看,真是被自己蠢到。加油吧,刘宇轩。你是有能力的,不要放弃。

 

进度:

1、按学长说的只看方法的功能,于是,把jmx_exporter的项目里所有方法不看实现,然后挨个注释上了该方法的功能。

2、学长说还要看这个方法在生产环境中怎么调用的,这个我看代码没搞懂,于是去看博客了。

3、学长还让我看看SpringBoot的简单入门,我也去看了几篇。

 

我把代码按照看方法功能的方式通读完了顺手给了注释,然后博客看了看《jmx_exporter源码分析》、《jmx_exporter 配置详解》,然后还看了4,5篇其他的博客。

但我遇到的问题是,我不知道该继续去干什么可以推进我的工作进度。

现在的疑惑是,我不清楚 jmx_exporter 是在哪里配置了对 jvm 进行监控的 metric ,以及我是否有必要通过在电脑上安装配置 prometheus 和 grafana 来感受一下 jmx_exporter 是怎么运行的呢。因为我也看了网上博客的 jmx_exporter + prometheus + grafana 来实现 jvm 监控的手把手教程,但感觉看了后没有对我认识这个东西还是没什么帮助。

嗯,应该就是,我不清楚原本的 java agent 的机制是怎么调用他的这些基础类的

然后,我想知道的是:我现在遇到的问题,是因为我不会 yaml 导致的,还是因为我需要学习 SpringBoot 的相关技术,还是应该学什么其他方面的……

另外不知道为什么我下载的 JD 反编译工具 打不开那个邮件里发下来的 jar 包里的文件……

 

 

其实,知道自己不会什么需要学什么还真的挺舒服的,现在这种连学什么都不知道,真的就很迷茫。

目前我的进度总结一下就是我明白了:

        这个开源项目是基于jmx的。大概意思是普罗米修斯提供了现成的接口,这个jmx_exporter实现了collect方法,在里面实现了具体的收集方法,在这个方法里又有个scraper,这个应该是按照配置文件的时间间隔扫jmx端口,拿配置文件里指定的jmxMbean的监控项。

我去请教了大牛,大牛问了我这么几个问题:

问你个问题,你现在搞清楚怎么通过jmx拿mbean监控项了吗?自己有没有试过直接用里面的方法或者工具拿jmxmbean的数据?jconsole 知道吗?你可以先了解一下怎么用jconsole拿一个Java进程的jmxMean监控数据。其实这个项目应该就是用Java的JmxMBean库拿具体的进程的数据。只不过包在了普罗米修斯里。然后还有就是怎么解析yaml文件,因为要通过配置指定监控项。

大牛给的建议是:

问题拆解一下:
1.搞清楚怎么用Java获取Java进程的JmxMbean数据。
2.搞清楚怎么把获取到的数据发给普罗米修斯。比如collect,describe等那些接口的实现方法是干什么的。
3.它是怎么通过读配置来拿JmxMbean的。
4.想办法搭一个测试环境。

我想我又有方向了,加油吧少年

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值