CN117667599A - 数据的存储方法和装置、存储介质及电子装置 - Google Patents
数据的存储方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN117667599A CN117667599A CN202311869099.4A CN202311869099A CN117667599A CN 117667599 A CN117667599 A CN 117667599A CN 202311869099 A CN202311869099 A CN 202311869099A CN 117667599 A CN117667599 A CN 117667599A
- Authority
- CN
- China
- Prior art keywords
- data
- program
- auxiliary program
- remote node
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000013500 data storage Methods 0.000 title claims abstract description 16
- 238000012544 monitoring process Methods 0.000 claims abstract description 115
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012423 maintenance Methods 0.000 abstract description 16
- 238000013480 data collection Methods 0.000 abstract description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000011835 investigation Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013024 troubleshooting Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种数据的存储方法和装置、存储介质及电子装置,该数据的存储方法包括:在操作节点将辅助程序发送至待收集数据的远端节点的情况下,所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。通过上述方法,可以解决现有技术中对于部署架构不同或监控平台未能覆盖到的环境需要运维人员手动收集各类日志监控数据,导致数据收集速度较慢的问题。
Description
技术领域
本申请涉及通信领域,具体而言,涉及一种数据的存储方法和装置、存储介质及电子装置。
背景技术
随着互联网和移动互联网的发展,企业的业务规模不断扩大,分布式系统成为了企业信息技术(Information Technology,简称为IT)架构的常见选择。分布式系统由多个节点组成,每个节点上均部署了各类服务。对于不同的业务场景,分布式系统往往存在各种不同的部署形式,不同的部署形式给系统的运维带来了很大的挑战。
目前的数据收集场景存在一些不便之处。例如:对于拥有监控平台的环境,虽然能在监控平台中直接观察监控数据,但是对于部署架构不同或监控平台未能覆盖到的环境就需要运维人员手动去收集各类日志监控数据。在运维过程中,对于复杂的部署场景,如何高效地收集、整理各个节点的日志、监控等各类数据成为了问题排查过程中重要的问题。
针对现有技术中,对于部署架构不同或监控平台未能覆盖到的环境需要运维人员手动收集各类日志监控数据,导致数据收集速度较慢的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种数据的存储方法和装置、存储介质及电子装置,以至少解决相关技术中,对于部署架构不同或监控平台未能覆盖到的环境需要运维人员手动收集各类日志监控数据,导致数据收集速度较慢的问题。
根据本申请实施例的一个实施例,提供了一种数据的存储方法,包括:在操作节点将辅助程序发送至待收集数据的远端节点的情况下,所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
在一个示例性实施例中,在所述目标数据为Docker服务日志的情况下,所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序建立与所述远端节点对应的后台服务的第一连接关系;所述辅助程序确定待收集的第一数据类型和目标时间范围,其中,所述第一数据类型用于指示待收集的服务数据的类型;在所述目标时间范围为第一时间范围的情况下,所述辅助程序根据所述第一数据类型和第一连接关系获取第一类型的目标数据;在所述目标时间范围为第二时间范围的情况下,所述辅助程序根据所述第一数据类型在所述远端节点的存储装置中读取第一类型的日志文件,以根据所述日志文件获取所述目标数据。
在一个示例性实施例中,在所述目标数据为K8s服务日志的情况下,所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序通过K8s的节点信息和鉴权配置建立与待收集的K8s集群的第二连接关系;所述辅助程序确定待收集的第二数据类型和第三时间范围,其中,所述第二数据类型用于指示待收集的服务数据的类型;所述辅助程序根据所述第二数据类型、所述第三时间范围和所述第二连接关系在所述K8s集群中获取第二类型的K8s服务日志。
在一个示例性实施例中,在所述目标数据为系统服务日志的情况下,所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序建立与所述远端节点的系统服务第三连接关系;所述辅助程序确定待收集的第三数据类型和第四时间范围;所述辅助程序根据所述第三数据类型、所述第四时间范围和所述第三连接关系在所述系统服务中获取第三类型的系统服务日志。
在一个示例性实施例中,在所述目标数据为系统监控数据的情况下,所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序确定所述远端节点中是否存在所述远端节点对应的监控系统的监控数据;所述辅助程序根据所述远端节点中是否存在所述监控数据确定对应的获取方式;所述辅助程序根据所述获取方式获取所述系统监控数据。
在一个示例性实施例中,所述辅助程序根据所述获取方式获取所述系统监控数据,包括:在所述远端节点中存在所述监控数据的情况下,所述辅助程序根据待收集的第五时间范围在所述监控数据中获取所述系统监控数据;在所述远端节点中不存在所述监控数据的情况下,所述辅助程序建立与所述远端节点对应的监控平台的第四连接关系,并根据所述第四连接关系在所述监控平台中获取所述系统监控数据。
在一个示例性实施例中,所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序确定所述远端节点的内存转储格式,以及确定是否允许导出所述远端节点的数据;在确定允许导出所述远端节点的数据的情况下,所述辅助程序根据内存转储格式在所述远端节点上获取内存转储文件,并根据所述内存转储文件确定所述目标数据。
根据本申请实施例的另一个实施例,还提供了一种数据的存储装置,包括:获取模块,用于在操作节点将辅助程序发送至待收集数据的远端节点的情况下,通过所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;发送模块,用于通过所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
根据本申请实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据的存储方法。
根据本申请实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的数据的存储方法。
在本申请实施例中,在操作节点将集成在收集程序中的辅助程序发送至待收集数据的远端节点的情况下,辅助程序获取远端节点的目标数据;辅助程序向运行在操作节点上的收集程序发送获取到的目标数据,以使操作节点通过收集程序对目标数据进行整合,并将整合后的目标数据存储至操作节点的存储装置上。也就是说,辅助程序获取到目标数据,并向收集程序发送目标数据,操作节点可以通过收集程序对目标程序进行整合。通过上述技术方案,可以解决现有技术中对于部署架构不同或监控平台未能覆盖到的环境需要运维人员手动收集各类日志监控数据,导致数据收集速度较慢的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例的一种数据的存储方法的硬件环境示意图;
图2是根据本申请实施例的数据的存储方法的流程图;
图3是根据本申请可选实施例的多场景的监控数据收集方法的流程图;
图4是根据本申请实施例的一种数据的存储装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例所提供的方法实施例可以在计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本申请实施例的一种数据的存储方法的硬件环境示意图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的数据的存储方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种数据的存储方法,应用于操作节点,上述操作节点可以为上述计算机终端,图2是根据本申请实施例的数据的存储方法的流程图,该流程包括如下步骤:
步骤S202,在操作节点将辅助程序发送至待收集数据的远端节点的情况下,所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;
步骤S204,所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
通过上述步骤,在操作节点将集成在收集程序中的辅助程序发送至待收集数据的远端节点的情况下,辅助程序获取远端节点的目标数据;辅助程序向运行在操作节点上的收集程序发送获取到的目标数据,以使操作节点通过收集程序对目标数据进行整合,并将整合后的目标数据存储至操作节点的存储装置上。也就是说,辅助程序获取到目标数据,并向收集程序发送目标数据,操作节点可以通过收集程序对目标程序进行整合。通过上述技术方案,可以解决现有技术中对于部署架构不同或监控平台未能覆盖到的环境需要运维人员手动收集各类日志监控数据,导致数据收集速度较慢的问题。
可选的,上述步骤S202的所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序确定所述远端节点的内存转储格式,以及确定是否允许导出所述远端节点的数据;在确定允许导出所述远端节点的数据的情况下,所述辅助程序根据内存转储格式在所述远端节点上获取内存转储文件,并根据所述内存转储文件确定所述目标数据。
可以理解的是,在确定允许导出远端节点中的数据的情况下,可以通过确定的远端节点的内存转储格式在远端节点上获取内存转储文件,并根据内存转储文件确定目标数据。其中,上述内存转储文件可以是在发生系统崩溃或错误时,保存到存储装置中的内存数据或程序状态的相关文件。
可选地,上述目标数据可以为Docker服务日志或K8s服务日志等情况,以下将通过目标数据为Docker服务日志、目标数据为K8s服务日志、目标数据为系统服务日志、目标数据为系统监控数据四种情况说明上述步骤S202的所述辅助程序获取所述远端节点的目标数据的技术方案。具体的:
(1)在目标数据为Docker服务日志的情况下,上述步骤S202的所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序建立与所述远端节点对应的后台服务的第一连接关系;所述辅助程序确定待收集的第一数据类型和目标时间范围,其中,所述第一数据类型用于指示待收集的服务数据的类型;在所述目标时间范围为第一时间范围的情况下,所述辅助程序根据所述第一数据类型和第一连接关系获取第一类型的目标数据;在所述目标时间范围为第二时间范围的情况下,所述辅助程序根据所述第一数据类型在所述远端节点的存储装置中读取第一类型的日志文件,以根据所述日志文件获取所述目标数据。
Docker(文件库)服务日志为Docker容器运行时生成时的日志信息,日志信息包括但不限于:Docker容器的运行状态、错误信息、调试信息等。
在目标数据为Docker服务日志的情况下,可以通过辅助程序建立与远端节点对应的后台服务的第一连接关系。其中,上述辅助程序对应的后台服务可以是文件后台程序(Docker daemon)。辅助程序与远端节点可以通过本地套接字(unix socket)或传输控制协议套接字(tcp socket)等建立第一连接关系。举例说明,可以通过tcp socket将远程节点连接到Docker daemon。
进一步的,辅助程序获取远端节点的目标数据可能有两种方式:
1)在目标时间范围为第一时间范围的情况下,辅助程序可以通过确定的待收集的第一数据类型与上述第一连接关系获取第一类型的目标数据。举例说明,假设第一时间范围为:最近6小时内,而目标时间范围与第一时间范围一致,即目标时间范围同样为最近6小时内的情况下,辅助程序可以根据第一连接关系,请求Docker接口,以获取Docker服务日志。
2)在目标时间范围为第二时间范围的情况下,辅助程序可以确定的待收集的第一数据类型在远端节点的存储装置中读取第一类型的日志文件,进而根据日志文件获取目标数据。举例说明,假设第二时间范围为:超过6小时,而目标时间范围与第二时间范围一致,即目标时间范围同样为超过6小时的情况下,辅助程序可以根据第一数据类型解析并读取保存在存储装置中的Docker日志文件,进而从Docker日志文件中获取Docker服务日志。
在具体实施例中,可以将上述目标时间范围为第一时间范围以及目标时间范围为第二时间范围两种情况下获取的目标数据进行合并,以确定完整的目标数据。
(2)在目标数据为K8s服务日志的情况下,上述步骤S202的所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序通过K8s的节点信息和鉴权配置建立与待收集的K8s集群的第二连接关系;所述辅助程序确定待收集的第二数据类型和第三时间范围,其中,所述第二数据类型用于指示待收集的服务数据的类型;所述辅助程序根据所述第二数据类型、所述第三时间范围和所述第二连接关系在所述K8s集群中获取第二类型的K8s服务日志。
其中,上述K8s服务日志(Kubernetes服务日志)为Kubernetes(开源容器编排系统)集群中运行的服务产生的日志,包括但不限于应用程序的输出、错误信息以及系统级别的日志等。这些日志可以用于监控、故障排除和性能分析等。
在目标数据为K8s服务日志的情况下,可以建立节点信息和鉴权配置与待收集的K8s集群的第二连接关系。其中,节点信息包括但不限于:IP地址、内存信息等,鉴权配置包括但不限于身份验证、授权机制等。
进而根据确定的待收集的第二数据类型、第三时间范围通过第二连接关系请求kube-apiserver(K8s集群中的一个组件)的接口在K8s集群中获取第二类型的K8s服务日志。
(3)在目标数据为系统服务日志的情况下,上述步骤S202的所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序建立与所述远端节点的系统服务第三连接关系;所述辅助程序确定待收集的第三数据类型和第四时间范围;所述辅助程序根据所述第三数据类型、所述第四时间范围和所述第三连接关系在所述系统服务中获取第三类型的系统服务日志。
其中,上述系统服务日志是记录系统服务运行状态、错误、警告等信息的日志文件。包括但不限于:系统启动日志、网络服务日志、安全日志等。
在目标数据为系统服务日志的情况下,辅助程序可以是systemd服务(一个系统和服务管理器)。
辅助程序和远端节点可以通过dbus(一种用于在计算机程序之间进行通信的消息总线系统)建立第三连接关系。进一步的,辅助程序根据第三数据类型、第四时间范围通过第三连接关系请求systemd(系统化的)的接口,进而获取第三类型的系统服务日志。
(4)在目标数据为系统监控数据的情况下,上述步骤S202的所述辅助程序获取所述远端节点的目标数据,包括:所述辅助程序确定所述远端节点中是否存在所述远端节点对应的监控系统的监控数据;所述辅助程序根据所述远端节点中是否存在所述监控数据确定对应的获取方式;所述辅助程序根据所述获取方式获取所述系统监控数据。
其中,所述辅助程序根据所述获取方式获取所述系统监控数据,包括:在所述远端节点中存在所述监控数据的情况下,所述辅助程序根据待收集的第五时间范围在所述监控数据中获取所述系统监控数据;在所述远端节点中不存在所述监控数据的情况下,所述辅助程序建立与所述远端节点对应的监控平台的第四连接关系,并根据所述第四连接关系在所述监控平台中获取所述系统监控数据。
其中,上述系统监控数据为对一个系统运行状态的实时监测和收集的数据。包括但不限于系统的性能指标、资源利用情况、运行错误日志等信息。
在目标数据为系统监控数据的情况下,辅助程序可以是grafana服务(一种开源的数据可视化工具)。
首先,需要确定远端节点上是否存在监控数据,其中,监控数据包括但不限于:Prometheus监控数据(一种用于监控和报告系统和服务性能指标的数据);
进一步的,在确定远端节点上存在监控数据的情况下,可以根据待收集的第五时间范围在监控数据中获取系统监控数据;在确定远端节点不存在监控数据的情况下,辅助程序可以建立与远端节点对应的监控平台的第三连接关系,并根据第三连接关系在监控平台中获取系统监控数据。
举例说明,在确定远端节点上存在Prometheus监控数据的情况下,可以解析Prometheus监控数据,并根据第五时间范围筛选出在第五时间范围内的Prometheus监控数据,将在第五时间范围内的Prometheus监控数据确定为系统监控数据。在确定远端节点上不存在Prometheus监控数据的情况下,grafana服务可以建立与远端节点对应的监控平台的第三连接关系,根据第三连接关系请求grafana的接口,进而获取监控面板数据,将监控面板数据确定为系统监控数据。
为了更好的理解上述数据的存储方法的过程,以下再结合可选实施例对上述数据的存储的实现方法流程进行说明,但不用于限定本申请实施例的技术方案。
一方面,现有技术中运维人员往往需要手动收集各个服务的日志和各类不同的监控指标数据等,但是随着系统规模和复杂性的增加,监控数据的数量也在不断增长,同样的收集工作需要再对多个节点上重复多次,进一步增加了工作量。
同时,现有的数据收集工作通常需要运维人员具备一定的技术知识和经验,能够了解各种形式的监控数据的导出方式,还需要运维人员了解业务系统的运行机制和相关的技术知识,才能确定监控数据收集的范围,对运维人员提出了较高的要求。
另一方面,现有技术中,运维人员可能缺乏对具体业务的理解,可能因在收集数据时没有关注到关键的问题,导致收集到的数据无法协助正在排查的问题,运维人员需要重复进行收集操作,使问题的排查的效率降低。
针对上述问题,在本实施例中提供了一种多场景的监控数据收集方法,图3是根据本申请可选实施例的多场景的监控数据收集方法的流程图,如图3所示,具体如下:
本实施例包括两部分,分别是:
辅助程序:集成在收集程序中,用于被发送到待收集数据的远端节点,执行实际的收集工作并将结果传回给收集程序。
收集程序:用于将辅助程序发送到远端的节点并远程执行,随后接收辅助程序收集的内容进行聚合并保存到本地磁盘。
步骤S301:在操作节点上运行的收集程序通过安全外壳协议(Secure Shell,简称为SSH)或Docker套接字(docker socket)连接到待收集的远程节点;
步骤S302,将收集程序中内置的辅助程序分发到多个待收集节点上(即本申请的待收集数据的远端节点,附图3中仅示出两个待收集节点,在实际应用中,包括但不限于两个待收集节点);
步骤S303,运行辅助程序,辅助程序收集各类监控数据(即本申请的远端节点的目标数据,也就是附图3中的节点1数据、节点2数据),并通过远程连接的形式将节点1数据、节点2数据传回给操作节点上的收集程序;
步骤S304,操作节点上的收集程序接收传回的节点1数据、节点2数据;
步骤S305,将节点1数据、节点2数据进行整合;
步骤S306,操作节点上的收集程序将整合后的结果(即本申请的目标数据)保存到本地磁盘(即本申请的存储装置)中。
其中,上述辅助程序用于执行收集监控数据的操作,可以运行在例如:远程服务器节点,docker容器中,Kubernetes容器组(K8s pod)中,并以插件的形式集成了多种可收集的内容。
根据上述实施例,辅助程序可以对不同收集项进行收集,具体的:
具体实施例一、在收集Docker服务日志的情况下:
步骤11,通过unix socket或tcp socket连接到docker daemon(即本申请的第一连接关系);
步骤12,获取所有待收集服务(例如:业务服务、监控服务等)的列表;
步骤13,解析待收集的时间范围,可以将时间范围分为:最近6小时内(即本申请的第一时范围)、超过6小时(即本申请的第二时间范围);
步骤S14,在目标时间范围为最近6小时内的情况下,通过请求docker接口收集Docker服务日志;
步骤S15,在目标时间范围为超过6小时的情况下,通过解析并读取分割保存在本地磁盘中的日志文件(即本申请的第一类型的日志文件),并根据日志文件获取Docker服务日志;
步骤S16,合并上述两个时间段(即最近6小时内、超过6小时)的日志,并将结果传回到操作节点的收集程序。
具体实施例二、在收集K8s服务日志的情况下:
步骤S21,通过K8s的节点信息和鉴权配置,连接到待收集的K8s集群(即本申请的第二连接关系);
步骤S22,获得所有待收集服务容器(pod)的列表;
步骤S23,请求kube-apiserver的接口,获得K8s服务日志;
步骤S24,将K8s服务日志传回到操作节点的收集程序。
具体实施例三、在收集系统服务日志的情况下:
步骤S31:通过dbus连接到待收集节点的systemd服务(一个系统和服务管理器)(即本申请的第三连接关系);
步骤S32:获得所有待收集服务的列表;
步骤S33:请求systemd的接口,获得收集系统服务;
步骤S34:将收集系统服务传回操作节点的收集程序。
具体实施例四、在收集系统监控数据的情况下:
步骤S41:确定节点上是否存在prometheus监控数据(即本申请的监控数据);
步骤S42:在节点中存在prometheus监控数据的情况下,解析prometheus监控数据,根据待导出的时间范围(即本申请的第五时间范围)筛选要导出的系统监控数据;
步骤S43:将筛选出的要导出的系统监控数据单独提出,传回操作节点的收集程序;
步骤S44:节点连接到grafana服务(即本申请的第四连接关系);
步骤S45:通过grafana的接口,获得待导出的监控面板数据(即系统监控数据);
步骤S46:将系统监控数据传回操作节点的收集程序。
通过上述具体实施例中的自动化收集数据的过程,可以减少运维人员的工作量;同时,通过上述具体实施例收集的数据内容全部,可以一次性获取所有辅助问题排查的监控数据。此外,上述具体实施例适配各种部署形态,运维人员无需关心待收集环境系统的具体部署形式和内容,可以由软件自动查找并收集所有可收集内容。
其中,上述实施例中获取节点1数据、节点2数据还包括以下方式:
步骤S51,获取远端节点上的内存转储生成格式,检查是否支持导出节点1数据、节点2数据;
步骤S52:若支持导出节点1数据、节点2数据,则根据内存转储的格式,查找远端节点上存在的内存转储文件;
步骤S53:在确定内存转储文件的情况下,将内存转储文件传回到操作节点的收集程序。
通过上述具体实施例,可以灵活拓展可导出内容,辅助程序中可以任意添加新的导出功能以拓展可导出内容。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
图4是根据本申请实施例的一种数据的存储装置的结构框图;如图4所示,包括:
获取模块42,用于在操作节点将辅助程序发送至待收集数据的远端节点的情况下,通过所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;
发送模块44,用于所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
通过上述装置,在操作节点将集成在收集程序中的辅助程序发送至待收集数据的远端节点的情况下,辅助程序获取远端节点的目标数据;辅助程序向运行在操作节点上的收集程序发送获取到的目标数据,以使操作节点通过收集程序对目标数据进行整合,并将整合后的目标数据存储至操作节点的存储装置上。也就是说,辅助程序获取到目标数据,并向收集程序发送目标数据,操作节点可以通过收集程序对目标程序进行整合。通过上述技术方案,可以解决现有技术中对于部署架构不同或监控平台未能覆盖到的环境需要运维人员手动收集各类日志监控数据,导致数据收集速度较慢的问题。
在一个示例性实施例中,在所述目标数据为Docker服务日志的情况下,所述获取模块42,还用于所述辅助程序建立与所述远端节点对应的后台服务的第一连接关系;所述辅助程序确定待收集的第一数据类型和目标时间范围,其中,所述第一数据类型用于指示待收集的服务数据的类型;在所述目标时间范围为第一时间范围的情况下,所述辅助程序根据所述第一数据类型和第一连接关系获取第一类型的目标数据;在所述目标时间范围为第二时间范围的情况下,所述辅助程序根据所述第一数据类型在所述远端节点的存储装置中读取第一类型的日志文件,以根据所述日志文件获取所述目标数据。
在一个示例性实施例中,在所述目标数据为K8s服务日志的情况下,所述获取模块42,还用于所述辅助程序通过K8s的节点信息和鉴权配置建立与待收集的K8s集群的第二连接关系;所述辅助程序确定待收集的第二数据类型和第三时间范围,其中,所述第二数据类型用于指示待收集的服务数据的类型;所述辅助程序根据所述第二数据类型、所述第三时间范围和所述第二连接关系在所述K8s集群中获取第二类型的K8s服务日志。
在一个示例性实施例中,在所述目标数据为系统服务日志的情况下,所述获取模块42,还用于所述辅助程序建立与所述远端节点的系统服务第三连接关系;所述辅助程序确定待收集的第三数据类型和第四时间范围;所述辅助程序根据所述第三数据类型、所述第四时间范围和所述第三连接关系在所述系统服务中获取第三类型的系统服务日志。
在一个示例性实施例中,在所述目标数据为系统监控数据的情况下,所述获取模块42,还用于所述辅助程序确定所述远端节点中是否存在所述远端节点对应的监控系统的监控数据;所述辅助程序根据所述远端节点中是否存在所述监控数据确定对应的获取方式;所述辅助程序根据所述获取方式获取所述系统监控数据。
在一个示例性实施例中,所述获取模块42,还用于在所述远端节点中存在所述监控数据的情况下,所述辅助程序根据待收集的第五时间范围在所述监控数据中获取所述系统监控数据;在所述远端节点中不存在所述监控数据的情况下,所述辅助程序建立与所述远端节点对应的监控平台的第三连接关系,并根据所述第三连接关系在所述监控平台中获取所述系统监控数据。
在一个示例性实施例中,所述获取模块42,还用于所述辅助程序确定所述远端节点的内存转储格式,以及确定是否允许导出所述远端节点的数据;在确定允许导出所述远端节点的数据的情况下,所述辅助程序根据内存转储格式在所述远端节点上获取内存转储文件,并根据所述内存转储文件确定所述目标数据。
本申请的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项的方法。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,在操作节点将辅助程序发送至待收集数据的远端节点的情况下,所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;
S2,所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,在操作节点将辅助程序发送至待收集数据的远端节点的情况下,所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;
S2,所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种数据的存储方法,其特征在于,包括:
在操作节点将辅助程序发送至待收集数据的远端节点的情况下,所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;
所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
2.根据权利要求1所述的数据的存储方法,其特征在于,在所述目标数据为Docker服务日志的情况下,所述辅助程序获取所述远端节点的目标数据,包括:
所述辅助程序建立与所述远端节点对应的后台服务的第一连接关系;
所述辅助程序确定待收集的第一数据类型和目标时间范围,其中,所述第一数据类型用于指示待收集的服务数据的类型;
在所述目标时间范围为第一时间范围的情况下,所述辅助程序根据所述第一数据类型和第一连接关系获取第一类型的目标数据;
在所述目标时间范围为第二时间范围的情况下,所述辅助程序根据所述第一数据类型在所述远端节点的存储装置中读取第一类型的日志文件,以根据所述日志文件获取所述目标数据。
3.根据权利要求1所述的数据的存储方法,其特征在于,在所述目标数据为K8s服务日志的情况下,所述辅助程序获取所述远端节点的目标数据,包括:
所述辅助程序通过K8s的节点信息和鉴权配置建立与待收集的K8s集群的第二连接关系;
所述辅助程序确定待收集的第二数据类型和第三时间范围,其中,所述第二数据类型用于指示待收集的服务数据的类型;
所述辅助程序根据所述第二数据类型、所述第三时间范围和所述第二连接关系在所述K8s集群中获取第二类型的K8s服务日志。
4.根据权利要求1所述的数据的存储方法,其特征在于,在所述目标数据为系统服务日志的情况下,所述辅助程序获取所述远端节点的目标数据,包括:
所述辅助程序建立与所述远端节点的系统服务第三连接关系;
所述辅助程序确定待收集的第三数据类型和第四时间范围;
所述辅助程序根据所述第三数据类型、所述第四时间范围和所述第三连接关系在所述系统服务中获取第三类型的系统服务日志。
5.根据权利要求1所述的数据的存储方法,其特征在于,在所述目标数据为系统监控数据的情况下,所述辅助程序获取所述远端节点的目标数据,包括:
所述辅助程序确定所述远端节点中是否存在所述远端节点对应的监控系统的监控数据;
所述辅助程序根据所述远端节点中是否存在所述监控数据确定对应的获取方式;
所述辅助程序根据所述获取方式获取所述系统监控数据。
6.根据权利要求5所述的数据的存储方法,其特征在于,所述辅助程序根据所述获取方式获取所述系统监控数据,包括:
在所述远端节点中存在所述监控数据的情况下,所述辅助程序根据待收集的第五时间范围在所述监控数据中获取所述系统监控数据;
在所述远端节点中不存在所述监控数据的情况下,所述辅助程序建立与所述远端节点对应的监控平台的第四连接关系,并根据所述第四连接关系在所述监控平台中获取所述系统监控数据。
7.根据权利要求1所述的数据的存储方法,其特征在于,所述辅助程序获取所述远端节点的目标数据,包括:
所述辅助程序确定所述远端节点的内存转储格式,以及确定是否允许导出所述远端节点的数据;
在确定允许导出所述远端节点的数据的情况下,所述辅助程序根据内存转储格式在所述远端节点上获取内存转储文件,并根据所述内存转储文件确定所述目标数据。
8.一种数据的存储装置,其特征在于,包括:
获取模块,用于在操作节点将辅助程序发送至待收集数据的远端节点的情况下,通过所述辅助程序获取所述远端节点的目标数据,其中,所述辅助程序集成在收集程序中,所述收集程序在所述操作节点上运行;
发送模块,用于通过所述辅助程序向所述收集程序发送获取到的目标数据,以使所述操作节点通过所述收集程序对所述目标数据进行整合,并将整合后的目标数据存储至所述操作节点的存储装置中。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311869099.4A CN117667599A (zh) | 2023-12-29 | 2023-12-29 | 数据的存储方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311869099.4A CN117667599A (zh) | 2023-12-29 | 2023-12-29 | 数据的存储方法和装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117667599A true CN117667599A (zh) | 2024-03-08 |
Family
ID=90082714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311869099.4A Pending CN117667599A (zh) | 2023-12-29 | 2023-12-29 | 数据的存储方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117667599A (zh) |
-
2023
- 2023-12-29 CN CN202311869099.4A patent/CN117667599A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10200506B2 (en) | Method, system and device for monitoring data | |
US10187272B2 (en) | Interface management service entity, function service entity, and element management method | |
US20120311016A1 (en) | System and method for providing self-healing capabilites in a distributed knowlegde network/intelligent sensor network | |
CN111400127B (zh) | 业务日志的监控方法及装置、存储介质、计算机设备 | |
CN106339273A (zh) | 一种应用程序修复方法、终端及服务器 | |
CN115242894B (zh) | 数据处理方法、装置、存储介质和计算机设备 | |
CN113709777A (zh) | 一种故障处理方法、装置及系统 | |
CN112100020A (zh) | 基站的数据上报方法、装置、电子装置和存储介质 | |
US6779186B2 (en) | Method for operating and maintenance by base station using remote procedure call in IMT-2000 system | |
CN112671586B (zh) | 一种业务配置自动迁移和保障方法及装置 | |
CN116755799A (zh) | 一种服务编排系统和方法 | |
CN112527618A (zh) | 一种日志收集方法及日志收集系统 | |
CN116915827A (zh) | 物联网边缘网关的数据传输方法、装置、电子设备及介质 | |
CN115004650A (zh) | 节点配置方法、装置、分布式系统及计算机可读介质 | |
CN117667599A (zh) | 数据的存储方法和装置、存储介质及电子装置 | |
CN112437146B (zh) | 一种设备状态同步方法、装置及系统 | |
CN114157561B (zh) | 故障处理系统以及方法 | |
CN112650815B (zh) | 环境数据的同步方法及装置、存储介质及电子装置 | |
CN115987963A (zh) | 一种车辆数据上传方法、无线网联控制器及系统 | |
CN114461501A (zh) | 资源的异常检测方法及装置、存储介质、电子装置 | |
CN112835766A (zh) | 应用监控方法及装置 | |
CN115543491A (zh) | 微服务处理方法和装置 | |
CN115687036A (zh) | 日志采集方法、装置及日志系统 | |
CN113541988A (zh) | 一种网络故障的处理方法及装置 | |
JP6502783B2 (ja) | 一括管理システム、一括管理方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |