【技术实现步骤摘要】
一种基于akka框架的云原生日志收集方法和系统
[0001]本专利技术涉及日志收集
,特别涉及一种基于akka框架的云原生日志收集方法和系统。
技术介绍
[0002]目前云原生场景下通过spark on kubernetes, flink on kubernetes产生日志,存在于kubernetes 容器中,产生的日志将随着容器结束而清除。针对上述云原生场景下的现有日志收集方法和系统主要为elasticSearch + logstash + kibana架构的技术方案,上述在云原生场景下的日志收集系统架构中logstash需要占用大量的资源从而使得架构比较沉重,由于logstash缺少消息队列缓存,从而容易导致数据丢失,现有技术系统中需要维护多个服务,并且通过上述现有技术收集到日志时,后续通过kibana进行查询时无法保证查询结果的顺序。
技术实现思路
[0003]本专利技术其中一个专利技术目的在于提供一种基于akka框架的云原生日志收集方法和系统,所述方法和系统在系统内部配置了调度任务,并且配置以文 ...
【技术保护点】
【技术特征摘要】
1.一种基于akka框架的云原生日志收集方法,其特征在于,所述方法包括:构建akka框架的日志同步服务,并将所述日志同步服务植入到应用容器中,利用akka框架的actor模型构建日志事件传递方法;利用所述akka框架的actor模型监控系统日志事件,并判断是否存在新增日志事件;在系统内部构建文件队列,监控的日志事件判断当前存在新增日志事件的日志文件名是否存在于所述文件队列中,若存在于所述文件队列中,执行对应日志文件的同步,否则将所述日志文件名放入到所述文件队列中;创建Hadoop Configuration对象,并根据所述Hadoop Configuration对象Hadoop文件系统并将Hadoop Configuration对象传入到Hadoop文件系统中;利用Akka HdfsFlow连接HDFS,创建用于日志文件传输的数据管道,执行每一个变化文件日志同步到HDFS中。2.根据权利要求1所述的一种基于akka框架的云原生日志收集方法,其特征在于,所述文件队列根据监控到的新增日志事件进行内部调度,所述内部调度方法包括:利用actor模型监控每一日志事件,并根据监控到的日志事件识别存在文件行为目标文件的日志文件名,将所述目标文件的日志文件名和预先构建的文件队列进行匹配,若匹配到所述文件队列中存在所述目标文件的日志文件名,则执行当前目标文件日志的同步操作。3.根据权利要求1所述的一种基于akka框架的云原生日志收集方法,其特征在于,若利用所述actor模型监控到每一日志事件并识别日志事件对应的目标文件的日志文件名后,在所述文件队列中不存在所述目标文件的日志文件名,则将所述目标文件放入到所述文件队列中,进一步将所述文件队列中的目标文件日志执行同步操作。4.根据权利要求2所述的一种基于akka框架的云原生日志收集方法,其特征在于,所述内部调度操作还包括:在系统内部设置超时阈值,计算当前目标文件的日志文件名在所述文件队列中的时长,若利用所述actor模型监控到目标文件名新日...
【专利技术属性】
技术研发人员:王家敏,陈吉平,
申请(专利权)人:杭州玳数科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。