CN111782432B - 用于容器异常分析的数据的采集方法及装置 - Google Patents

用于容器异常分析的数据的采集方法及装置 Download PDF

Info

Publication number
CN111782432B
CN111782432B CN202010606024.7A CN202010606024A CN111782432B CN 111782432 B CN111782432 B CN 111782432B CN 202010606024 A CN202010606024 A CN 202010606024A CN 111782432 B CN111782432 B CN 111782432B
Authority
CN
China
Prior art keywords
container
data
target container
anomaly analysis
analysis
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.)
Active
Application number
CN202010606024.7A
Other languages
English (en)
Other versions
CN111782432A (zh
Inventor
武文轩
任政
白佳乐
齐颀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010606024.7A priority Critical patent/CN111782432B/zh
Publication of CN111782432A publication Critical patent/CN111782432A/zh
Application granted granted Critical
Publication of CN111782432B publication Critical patent/CN111782432B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种用于容器异常分析的数据的采集方法及装置,该方法包括:根据目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常;若所述目标容器运行异常,采集所述目标容器的用于异常分析的数据;将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。本发明实现了用于容器异常分析的数据的采集,解决了现有技术由于容器异常重启后原有容器会被编排工具销毁导致相关文件无法有效获取,难以进行容器异常分析的技术问题。

Description

用于容器异常分析的数据的采集方法及装置
技术领域
本发明涉及容器技术领域,具体而言,涉及一种用于容器异常分析的数据的采集方法及装置。
背景技术
随着容器化部署的逐渐普及,其轻量化和敏捷性为开发人员带来了极大的便利。同时为了保证容器高可用性能,当进程重启导致容器退出后编排工具会对容器进行驱逐并重启容器。导致对于容器的异常分析较为困难。
而导致容器进程异常停止的原因主要有如下几个方面:1)应用进程意外停止,比如JAVA应用程序,由于JVM虚拟机内存无法释放超出会导致程序进程停止;2)程序资源使用超出编排分配资源,触发编排工具的相应处理机制。而对于上述提及的两个异常重启对于容器运行产生的运行日志与相关文件信息等都对于实际问题的分析具有重要的意义。但是由于容器重启后通常会漂移至另一台宿主机,原有容器会被编排工具销毁导致相关文件无法有效获取,为实际问题的分析带来极大障碍。
在这种背景下,如何收集容器异常时的数据,进而根据该数据分析容器异常的原因,成为了现有技术亟待解决的问题。
发明内容
本发明为了解决上述背景技术中的技术问题,提出了一种用于容器异常分析的数据的采集方法及装置。
为了实现上述目的,根据本发明的一个方面,提供了一种用于容器异常分析的数据的采集方法,该方法包括:
根据目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常;
若所述目标容器运行异常,采集所述目标容器的用于异常分析的数据,其中,所述用于异常分析的数据包括:运行日志、容器快照、容器资源使用情况以及容器性能数据中的至少一种;
将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。
可选的,当所述目标容器为JAVA应用容器时,该用于容器异常分析的数据的采集方法还包括:
若所述JAVA应用容器运行异常,生成所述JAVA应用容器对应的javacore文件和heapdump文件,其中,所述JAVA应用容器的用于异常分析的数据包含所述javacore文件和所述heapdump文件。
可选的,该用于容器异常分析的数据的采集方法还包括:
根据所述目标容器的进程的运行情况判断所述目标容器是否运行异常。
可选的,在所述将所述用于异常分析的数据发送到预设的容器异常分析节点之后,还包括:
删除存储在所述宿主机本地的所述用于异常分析的数据。
为了实现上述目的,根据本发明的另一方面,提供了一种用于容器异常分析的数据的采集装置,该装置包括:
异常判断单元,用于根据目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常;
数据采集单元,用于在所述目标容器运行异常时采集所述目标容器的用于异常分析的数据,其中,所述用于异常分析的数据包括:运行日志、容器快照、容器资源使用情况以及容器性能数据中的至少一种;
数据存储单元,用于将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。
可选的,所述目标容器包括JAVA应用容器,所述用于容器异常分析的数据的采集装置还包括:
文件生成单元,用于在所述JAVA应用容器运行异常时生成所述JAVA应用容器对应的javacore文件和heapdump文件,其中,所述JAVA应用容器的用于异常分析的数据包含所述javacore文件和所述heapdump文件。
可选的,该用于容器异常分析的数据的采集装置还包括:
进程分析单元,用于根据所述目标容器的进程的运行情况判断所述目标容器是否运行异常。
可选的,该用于容器异常分析的数据的采集装置还包括:
数据清除单元,用于删除存储在所述宿主机本地的所述用于异常分析的数据。
为了实现上述目的,根据本发明的另一方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述用于容器异常分析的数据的采集方法中的步骤。
为了实现上述目的,根据本发明的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述用于容器异常分析的数据的采集方法中的步骤。
本发明的有益效果为:本发明根据目标容器的运行日志对目标容器进行异常判断,并在判断目标容器运行异常时采集目标容器的用于异常分析的数据并存储在宿主机本地,最后根据宿主机的网络负载状况将数据发送给容器异常分析节点进行容器异常分析,实现了用于容器异常分析的数据的采集,解决了现有技术由于容器异常重启后漂移至另一台宿主机,原有容器会被编排工具销毁导致相关文件无法有效获取,为容器异常分析带来极大障碍的技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明实施例用于容器异常分析的数据的采集方法的流程图;
图2是本发明实施例宿主机内部结构示意图;
图3是本发明实施例用于容器异常分析的数据的采集装置的结构框图;
图4是本发明实施例计算机设备示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
本发明为解决现有技术由于容器异常重启后漂移至另一台宿主机,原有容器会被编排工具销毁,导致相关文件(用于容器异常分析的数据)无法有效获取的问题,提出了一种用于容器异常分析的数据的采集方法及装置。本发明基于对于容器的日志、进程以及相关数据的监控对容器进行异常状态进行实时监控。同时当容器异常重启前,通过日志分析或进程异常等进行相关文件信息与监控信息的留存,并对于数据件进行多级缓存。为保证少占用网络先将数据保存至宿主机本地,再逐步发送至预设的容器异常分析节点,为容器异常的分析提供分析物料。
图1是本发明实施例用于容器异常分析的数据的采集方法的流程图,如图1所示,在本发明一实施例中,本发明的用于容器异常分析的数据的采集方法包括步骤S101至步骤S103。
步骤S101,根据目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常。
图2是本发明实施例宿主机内部结构示意图,如图2所示,在本发明可选实施例中,宿主机中部署了多个应用容器(图2中的目标容器)。同时宿主机中还部署了监控容器,该监控容器用于对宿主机中的所有目标容器进行监控,判断目标容器是否运行异常。此外,宿主机中还部署了数据采集模块、文件存储模块以及文件发送模块,其中,当监控容器判断目标容器运行异常时生成警报信息,数据采集模块根据所述警报信息采集目标容器的多种用于异常分析的数据,并将采集的数据打包成文件存储在宿主机中的文件存储模块中,文件发送模块根据宿主机的网络负载状况对文件存储模块中的文件(即用于异常分析的数据)进行转发,当宿主机的网络负载状况满足预设条件时,将用于异常分析的数据的文件发送到预设的容器异常分析节点,以进行容器异常分析,并在将用于异常分析的数据的文件发送成功后将文件存储模块中的该文件删除,以节省宿主机的存储空间。
在本发明可选实施例中,本步骤的实施主体可以为图2中的监控容器。在本步骤中,监控容器从目标容器的日志储存地址实时获取运行日志,并根据预设的该目标容器对应的日志异常判断条件实时判断该目标容器是否运行异常。
在本发明可选实施例中,日志异常判断条件可以为运行日志中出现异常日志,例如对于JAVA应用容器,当出现JVM异常日志时则说明容器运行出现异常。本发明预先针对目标容器设置对应的日志异常判断条件,便于异常情况的及时发现。
在本发明一可选实施例中,本发明还可以根据所述容器的进程的运行情况判断所述目标容器是否运行异常。具体可以为,监控容器对目标容器的进程进行实时监控,当目标容器的进程出现异常时,判断目标容器运行异常,其中,进程出现异常可以包括进程异常退出、进程卡死或者进程持续在某步骤执行等情况。
步骤S102,若所述目标容器运行异常,采集所述目标容器的用于异常分析的数据,其中,所述用于异常分析的数据包括:运行日志、容器快照、容器资源使用情况以及容器性能数据中的至少一种。
在本发明可选实施例中,本步骤的实施主体可以为图2中的数据采集模块。在本发明实施例中,当监控容器判断目标容器运行异常时生成警报信息,并将警报信息发送给数据采集模块,数据采集模块在接收到警报信息时触发数据(用于异常分析的数据)的采集。
在本发明可选实施例中,数据采集模块在接收到警报信息时从目标容器的日志储存地址获取目标容器的运行日志,具体的,可以获取接收到警报信息之前预设时间内的运行日志,也可以获取接收到警报信息前后预设时间内的运行日志。在本发明可选实施例中,数据采集模块在接收到警报信息时生成目标容器的容器快照,并对容器快照进行保存,保留异常时相关环境信息与配置信息。在本发明可选实施例中,数据采集模块在接收到警报信息时采集当前目标容器的容器资源使用情况以及容器性能数据。最终,数据采集模块将采集的所有数据打包成一个文件,存储在宿主机中的文件存储模块中。
在本发明一可选实施例中,当所述目标容器为JAVA应用容器时,本发明的用于容器异常分析的数据的采集方法还包括:
当JAVA应用容器运行异常时,生成所述JAVA应用容器对应的javacore文件和heapdump文件,其中,所述JAVA应用容器的用于异常分析的数据包含所述javacore文件和所述heapdump文件。
具体的,当JAVA应用容器运行异常时,数据采集模块还用于在接收到警报信息时生成该JAVA应用容器对应的javacore文件和heapdump文件。javacore文件为用于分析进程运行状态的日志文件,可以表示cpu的使用情况,可以用于分析具体运行时间是否合理。Heapdump文件用于内存使用的分析,保存JVM中各个对象的使用情况是否存在对象创建无法释放情况,可以用于对导致进程oom的问题进行分析。
步骤S103,将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。
在本发明可选实施例中,本步骤的实施主体可以为图2中的文件发送模块。在本发明实施例中,文件发送模块根据宿主机的实时网络负载状况对文件存储模块中的文件(即用于异常分析的数据)进行转发,当宿主机的网络负载状况满足预设的数据发送条件时,将用于异常分析的数据的文件发送到预设的容器异常分析节点,以进行容器异常分析,并在将用于异常分析的数据的文件发送成功后将文件存储模块中的该文件删除,以节省宿主机的存储空间。
本发明在宿主机的网络负载状况较小时,文件发送模块进行文件转发,若宿主机的网络负载状况持续较高,则文件临时保存在文件存储模块中,避免了文件(即用于异常分析的数据)因为容器重启被销毁。
在本发明可选实施例中,容器异常分析节点可以为运维人员的客户端、容器异常分析服务器中的预设存储空间、数据中转服务器或者为分布式文件系统等。
在本发明一可选实施例中,所述宿主机的网络负载状况可以为宿主机的数据流量;预设的数据发送条件可以为宿主机的当前数据流量小于预设阈值。
在本发明可选实施例中,在步骤S103的将所述用于异常分析的数据发送到预设的容器异常分析节点之后,本发明的方法还包括:
删除存储在所述宿主机本地的所述用于异常分析的数据。
本发明为了解决现有云部署的容器难以进行异常分析的问题,提出了一种用于容器异常分析的数据的采集方法。本发明在尽可能不影响应用网络和存储的情况下,监控日志与进程实现异常容器排查,并将相关信息进行保存,确认网络低负载时进行文件传输减小网络压力。同时将异常容器相关文件发送给责任运维人员。本发明的优点如下:
1、对现有应用容器单进程运行无侵入性。
2、对于异常容器进行自动化的日志与监控信息获取,避免云上容器重启导致的相关问题分析困难。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
基于同一发明构思,本发明实施例还提供了一种用于容器异常分析的数据的采集装置,可以用于实现上述实施例所描述的用于容器异常分析的数据的采集方法,如下面的实施例所述。由于用于容器异常分析的数据的采集装置解决问题的原理与用于容器异常分析的数据的采集方法相似,因此用于容器异常分析的数据的采集装置的实施例可以参见用于容器异常分析的数据的采集方法的实施例,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是本发明实施例用于容器异常分析的数据的采集装置的结构框图,如图3所示,在本发明一实施例中,本发明的用于容器异常分析的数据的采集装置包括:
异常判断单元1,用于根据目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常;
数据采集单元2,用于在所述目标容器运行异常时采集所述目标容器的用于异常分析的数据,其中,所述用于异常分析的数据包括:运行日志、容器快照、容器资源使用情况以及容器性能数据中的至少一种;
数据存储单元3,用于将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。
在本发明一可选实施例中,所述目标容器包括JAVA应用容器,本发明的用于容器异常分析的数据的采集装置还包括:
文件生成单元,用于在所述JAVA应用容器运行异常时生成所述JAVA应用容器对应的javacore文件和heapdump文件,其中,所述JAVA应用容器的用于异常分析的数据包含所述javacore文件和所述heapdump文件。
在本发明一可选实施例中,本发明的用于容器异常分析的数据的采集装置还包括:
进程分析单元,用于根据所述目标容器的进程的运行情况判断所述目标容器是否运行异常。
在本发明一可选实施例中,本发明的用于容器异常分析的数据的采集装置还包括:
数据清除单元,用于删除存储在所述宿主机本地的所述用于异常分析的数据。
为了实现上述目的,根据本申请的另一方面,还提供了一种计算机设备。如图4所示,该计算机设备包括存储器、处理器、通信接口以及通信总线,在存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例方法中的步骤。
处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及单元,如本发明上述方法实施例中对应的程序单元。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及作品数据处理,即实现上述方法实施例中的方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个单元存储在所述存储器中,当被所述处理器执行时,执行上述实施例中的方法。
上述计算机设备具体细节可以对应参阅上述实施例中对应的相关描述和效果进行理解,此处不再赘述。
为了实现上述目的,根据本申请的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述用于容器异常分析的数据的采集方法中的步骤。本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种用于容器异常分析的数据的采集方法,其特征在于,应用于宿主机中的监控容器,所述方法包括:
根据所述宿主机中的目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常,其中,所述监控容器从所述目标容器的日志储存地址实时获取运行日志,所述日志异常判断条件为运行日志中出现异常日志;
若所述目标容器运行异常,采集所述目标容器的用于异常分析的数据,其中,所述用于异常分析的数据包括:运行日志、容器快照、容器资源使用情况以及容器性能数据中的至少一种;当所述监控容器判断目标容器运行异常时生成警报信息,并将警报信息发送给所述监控容器中的数据采集模块;所述数据采集模块在接收到警报信息时:从所述目标容器的日志储存地址获取所述目标容器的运行日志、生成目标容器的容器快照以及采集当前所述目标容器的容器资源使用情况以及容器性能数据;
将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。
2.根据权利要求1所述的用于容器异常分析的数据的采集方法,其特征在于,当所述目标容器为JAVA应用容器时,还包括:
若所述JAVA应用容器运行异常,生成所述JAVA应用容器对应的javacore文件和heapdump文件,其中,所述JAVA应用容器的用于异常分析的数据包含所述javacore文件和所述heapdump文件。
3.根据权利要求1所述的用于容器异常分析的数据的采集方法,其特征在于,还包括:
根据所述目标容器的进程的运行情况判断所述目标容器是否运行异常。
4.根据权利要求1所述的用于容器异常分析的数据的采集方法,其特征在于,在所述将所述用于异常分析的数据发送到预设的容器异常分析节点之后,还包括:
删除存储在所述宿主机本地的所述用于异常分析的数据。
5.一种用于容器异常分析的数据的采集装置,其特征在于,应用于宿主机中的监控容器,所述装置包括:
异常判断单元,用于根据所述宿主机中的目标容器的运行日志以及预设的所述目标容器对应的日志异常判断条件判断所述目标容器是否运行异常,其中,所述监控容器从所述目标容器的日志储存地址实时获取运行日志,所述日志异常判断条件为运行日志中出现异常日志;
数据采集单元,用于在所述目标容器运行异常时采集所述目标容器的用于异常分析的数据,其中,所述用于异常分析的数据包括:运行日志、容器快照、容器资源使用情况以及容器性能数据中的至少一种;当所述监控容器判断目标容器运行异常时生成警报信息,并将警报信息发送给所述监控容器中的数据采集模块;所述数据采集模块在接收到警报信息时:从所述目标容器的日志储存地址获取所述目标容器的运行日志、生成目标容器的容器快照以及采集当前所述目标容器的容器资源使用情况以及容器性能数据;
数据存储单元,用于将所述用于异常分析的数据存储在所述目标容器所在的宿主机本地,并根据所述宿主机的网络负载状况以及预设的数据发送条件将所述用于异常分析的数据发送到预设的容器异常分析节点。
6.根据权利要求5所述的用于容器异常分析的数据的采集装置,其特征在于,所述目标容器包括JAVA应用容器,所述用于容器异常分析的数据的采集装置还包括:
文件生成单元,用于在所述JAVA应用容器运行异常时生成所述JAVA应用容器对应的javacore文件和heapdump文件,其中,所述JAVA应用容器的用于异常分析的数据包含所述javacore文件和所述heapdump文件。
7.根据权利要求5所述的用于容器异常分析的数据的采集装置,其特征在于,还包括:
进程分析单元,用于根据所述目标容器的进程的运行情况判断所述目标容器是否运行异常。
8.根据权利要求5所述的用于容器异常分析的数据的采集装置,其特征在于,还包括:
数据清除单元,用于删除存储在所述宿主机本地的所述用于异常分析的数据。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序在计算机处理器中执行时实现如权利要求1至4任意一项所述的方法。
CN202010606024.7A 2020-06-29 2020-06-29 用于容器异常分析的数据的采集方法及装置 Active CN111782432B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010606024.7A CN111782432B (zh) 2020-06-29 2020-06-29 用于容器异常分析的数据的采集方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010606024.7A CN111782432B (zh) 2020-06-29 2020-06-29 用于容器异常分析的数据的采集方法及装置

Publications (2)

Publication Number Publication Date
CN111782432A CN111782432A (zh) 2020-10-16
CN111782432B true CN111782432B (zh) 2024-03-22

Family

ID=72760231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010606024.7A Active CN111782432B (zh) 2020-06-29 2020-06-29 用于容器异常分析的数据的采集方法及装置

Country Status (1)

Country Link
CN (1) CN111782432B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238956B (zh) * 2021-05-31 2024-04-05 康键信息技术(深圳)有限公司 异常应用的故障分析方法、装置、设备及存储介质
CN113726553A (zh) * 2021-07-29 2021-11-30 浪潮电子信息产业股份有限公司 一种节点故障恢复方法、装置、电子设备及可读存储介质
CN114679391A (zh) * 2022-02-23 2022-06-28 网宿科技股份有限公司 采集docker容器网络流量的方法、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014021612A (ja) * 2012-07-13 2014-02-03 Nippon Telegr & Teleph Corp <Ntt> 障害解析情報収集プログラム
CN108446211A (zh) * 2018-03-05 2018-08-24 广东欧珀移动通信有限公司 浏览器异常收集方法、装置、移动终端以及存储介质
CN109614290A (zh) * 2018-12-10 2019-04-12 苏州思必驰信息科技有限公司 容器中的进程异常信息记录方法及系统
CN109858244A (zh) * 2019-01-16 2019-06-07 四川大学 一种容器内进程异常行为检测方法与系统
CN110830289A (zh) * 2019-10-21 2020-02-21 华中科技大学 一种容器异常监测方法及监测系统
CN110851241A (zh) * 2019-11-20 2020-02-28 杭州安恒信息技术股份有限公司 Docker容器环境的安全防护方法、装置及系统
CN111107019A (zh) * 2019-12-29 2020-05-05 浪潮电子信息产业股份有限公司 一种数据传输方法、装置、设备及计算机可读存储介质
CN111176789A (zh) * 2019-12-30 2020-05-19 重庆紫光华山智安科技有限公司 一种容器集异常处理方法、装置、存储介质及服务器

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4220899B2 (ja) * 2001-09-13 2009-02-04 株式会社ティアンドデイ データ収集方法
US10042697B2 (en) * 2015-05-28 2018-08-07 Oracle International Corporation Automatic anomaly detection and resolution system
US10530840B2 (en) * 2017-03-31 2020-01-07 Ca, Inc. Container-based system analytics appliance
US11157394B2 (en) * 2019-03-05 2021-10-26 International Business Machines Corporation Exception cause analysis during computer program execution

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014021612A (ja) * 2012-07-13 2014-02-03 Nippon Telegr & Teleph Corp <Ntt> 障害解析情報収集プログラム
CN108446211A (zh) * 2018-03-05 2018-08-24 广东欧珀移动通信有限公司 浏览器异常收集方法、装置、移动终端以及存储介质
CN109614290A (zh) * 2018-12-10 2019-04-12 苏州思必驰信息科技有限公司 容器中的进程异常信息记录方法及系统
CN109858244A (zh) * 2019-01-16 2019-06-07 四川大学 一种容器内进程异常行为检测方法与系统
CN110830289A (zh) * 2019-10-21 2020-02-21 华中科技大学 一种容器异常监测方法及监测系统
CN110851241A (zh) * 2019-11-20 2020-02-28 杭州安恒信息技术股份有限公司 Docker容器环境的安全防护方法、装置及系统
CN111107019A (zh) * 2019-12-29 2020-05-05 浪潮电子信息产业股份有限公司 一种数据传输方法、装置、设备及计算机可读存储介质
CN111176789A (zh) * 2019-12-30 2020-05-19 重庆紫光华山智安科技有限公司 一种容器集异常处理方法、装置、存储介质及服务器

Also Published As

Publication number Publication date
CN111782432A (zh) 2020-10-16

Similar Documents

Publication Publication Date Title
CN111782432B (zh) 用于容器异常分析的数据的采集方法及装置
CN109714192B (zh) 一种监控云平台的监控方法及系统
CN107547273B (zh) 一种电力系统虚拟实例高可用的保障方法及系统
CN107508722B (zh) 一种业务监控方法和装置
CN109960634B (zh) 一种应用程序监控方法、装置及系统
CN102929773B (zh) 信息采集方法和装置
CN112350854B (zh) 一种流量故障定位方法、装置、设备及存储介质
CN105991458B (zh) 一种负载均衡的方法及负载均衡装置
CN107135088B (zh) 云计算系统中处理日志的方法和装置
CN113051075A (zh) 一种Kubernetes智能化扩缩容的方法及装置
WO2016058318A1 (zh) 虚拟机vm资源弹性伸缩处理方法、装置及系统
CN101741635B (zh) 一种同步告警信息的方法、系统及设备
CN113760652B (zh) 基于应用的全链路监控的方法、系统、设备和存储介质
US10613922B2 (en) Synchronously generating diagnostic data
CN110855481B (zh) 数据采集系统及方法
CN112134754A (zh) 压力测试方法、装置、网络设备及存储介质
EP4239476A1 (en) Method, system, and device for managing artificial intelligence application task, and storage medium
CN111190875A (zh) 基于容器平台的日志聚合方法及装置
CN116781488A (zh) 数据库高可用实现方法、装置、数据库架构、设备和产品
CN114900515A (zh) 一种列车文件回传方法、列车主机、站点及控制中心
CN116170275A (zh) 一种云网络运维管理方法和装置
CN112953792B (zh) 网络流量监测方法及装置
CN106375372B (zh) 一种大数据资源分配方法和装置
CN114584573A (zh) 一种基于长轮询机制的节点机信息同步方法
CN114116906A (zh) 数据同步方法、装置、电子装置和存储介质

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
GR01 Patent grant
GR01 Patent grant