openfalcon源码分析之agent】的更多相关文章

本节内容 agent功能 1.1 agent上报数据 1.2 agent与HBS同步 1.3 agent Http服务 agent源码分析 2.1 初始化config配置 2.2 初始化根目录,本地IP和rpc连接池 big mapper 2.3 定时同步各种数据 2.4 HTTP服务 agent设计优缺点 优点: 1. agent功能 agent的目的是收集目标机器上的所有数据,并动态同步hbs中的配置信息,将数据上报到transfer中,是所有监控数据的产生源头. 1.1 agent上报数据…
openfalcon源码分析之hbs 本节内容 hbs功能 hbs源码分析 hbs设计优劣 1. hbs功能 hbs在整个open-falcon项目中承担的角色就是连接数据库,作为数据库缓存,缓存配置,主要给agent和judge提供服务. 2. hbs源码分析 hbs源码分析将列出其对外提供的rpc服务以及其缓存的数据,并在最后尝试阐述其最重要的两个rpc服务GetExpressions和GetStrategies的执行过程. 对外提供服务 hbs对外提供服务的方式有RPC和http,主要使用…
openfalcon源码分析之graph 本节内容 graph功能 graph源码分析 2.1 graph中重要的数据结构 2.2 graph的简要流程图 2.3 graph处理数据过程 2.4 graph数据迁移 graph设计优缺点 优点: 缺点: 1. graph功能 graph在整个falcon项目中的位置就是把transfer push上来的数据进行采样存储,并提供查询接口. graph使用rrdtool保存数据,上报来的数据,被存在一个个的rrd文件中,同时会对数据进行采采样,最大值…
openfalcon源码分析之Judge 本节内容 Judge功能 源码分析 设计优缺点 1. Judge功能 在open-falcon中,Judge模块的功能是通过从HBS上同步告警的strategys(告警策略),及Expression,用来在接收transfer上报过来的数据时,对数据进行检测,每收到一条上报的数据,就去匹配对应的strategy和Expression是否满足条件,判断是否需要向redis发送告警. 告警策略 open-falcon中的策略有两类,strategys和Exp…
本节内容 transfer功能 transfer接收数据来源 transfer数据去向 transfer的一致性hash transfer的一致性hash key的计算 transfer源码分析 2.1 初始化连接池,发送队列 2.2 初始化rpc和socket接收端 2.3 初始化http服务 transfer设计优缺点 优点: 缺点: 1. transfer功能 transfer模块的作用是接收所有被监控服务器上发送过来的数据进行一些判断和处理之后转发至后面的graph和judge模块. t…
3 Skywalking源码导入 接上文,已经学习了Skywalking的应用,接下来我们将剖析Skywalking源码,深度学习Skywalking Agent. 3.1 源码环境搭建 当前最新版本是8.3.0,我们首先找到8.3.0的版本,然后下载并导入到IDEA,下载地址 https://github.com/apache/skywalking.git,我们直接用git克隆到本地. 1.推荐大家将github仓库拷贝到码云上,以提升下载速度 2.为了避免clone过程出错,可以设置git的…
前言: 本文是我阅读了TOMCAT源码后的一些心得. 主要是讲解TOMCAT的系统框架, 以及启动流程.若有错漏之处,敬请批评指教! 建议: 毕竟TOMCAT的框架还是比较复杂的, 单是从文字上理解, 是不那么容易掌握TOMCAT的框架的. 所以得实践.实践.再实践. 建议下载一份TOMCAT的源码, 调试通过, 然后单步跟踪其启动过程. 如果有不明白的地方, 再来查阅本文, 看是否能得到帮助. 我相信这样效果以及学习速度都会好很多! 1. Tomcat的整体框架结构 Tomcat的基本框架,…
昨天晚上写完angular源码分析:angular中jqLite的实现--你可以丢掉jQuery了,给今天定了一个题angular源码分析:injector.js文件,以及angular的加载流程,但是想了想,加载流程还是放到后面统一再讲比较好. 如果你没有看过笔者的angular源码分析:angular中的依赖注入式如何实现的,可以点击看看,在其中讲过的内容,我将不会再这里重复,这一期将作那一期的补充. 一.从createInjector函数开始 先省去具体实现,总体看看:函数拥有两个参数,m…
Openrasp是百度关于rasp技术的开源项目,由于工作需要,之前对rasp的源码进行了简单的分析.文章是之前就写好的,现在放出了,希望对大家有写帮助. OpenRASP中java引擎的源码分析 安装包解压后目录结构如下: RaspInstall.jar是OpenRASP中java引擎的安装(卸载)运行文件,在终端中执行以下命令进行安装(以tomcat为例): java -jar RaspInstall.jar -install <tomcat_root> 值得注意的是:<tomcat…
Piwik现已改名为Matomo,这是一套国外著名的开源网站统计系统,类似于百度统计.Google Analytics等系统.最大的区别就是可以看到其中的源码,这正合我意.因为我一直对统计的系统很好奇,很想知道里面的运行原理是怎么样的,碰巧了解到有这么一个系统,因此马上尝试了一下.国内关于该系统的相关资料比较匮乏,大多是分享怎么安装的,并没有找到有关源码分析的文章.下面先对其做个初步的分析,后面会越来越详细,本人目前的职位是前端,因此会先分析脚本代码,而后再分析后台代码. 一.整体概况 Piwi…