CN111274091B - 日志的处理方法、装置、计算机设备和存储介质 - Google Patents

日志的处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111274091B
CN111274091B CN202010054266.XA CN202010054266A CN111274091B CN 111274091 B CN111274091 B CN 111274091B CN 202010054266 A CN202010054266 A CN 202010054266A CN 111274091 B CN111274091 B CN 111274091B
Authority
CN
China
Prior art keywords
log
subtask
container
task
distributed
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
CN202010054266.XA
Other languages
English (en)
Other versions
CN111274091A (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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202010054266.XA priority Critical patent/CN111274091B/zh
Publication of CN111274091A publication Critical patent/CN111274091A/zh
Application granted granted Critical
Publication of CN111274091B publication Critical patent/CN111274091B/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/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3079Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by reporting only the changes of the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请涉及一种日志的处理方法、装置、计算机设备和存储介质,所述方法包括:采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;确定用于输出所述变动容器日志的应用容器所属的目标子任务;将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。采用本方法能够提高在进行深度学习训练过程中的信息处理效率。

Description

日志的处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种日志的处理方法、装置、计算机设备和存储介质。
背景技术
深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。
然而,在使用分布式机器学习系统进行深度学习训练过程中,用户往往需要查看在进行深度学习训练时生成的日志文件,从而及时找出深度学习训练过程中存在的异常。然而,分布式机器学习系统往往会产生数量庞大的日志文件,且缺乏统一地配置和管理,使得用户往往需要进行复杂的手工配置和处理,这大大降低了用户查看日志的效率,使得深度学习训练过程中存在信息处理效率不高的问题。
因此,现有技术在进行深度学习训练过程中存在信息处理效率不高的问题。
发明内容
基于此,有必要针对现有技术在进行机器学习训练过程中存在信息处理效率不高的问题,提供一种能够提高信息处理效率的日志的处理方法、装置、计算机设备和存储介质。
一种日志的处理方法,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,所述方法包括:
采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
确定用于输出所述变动容器日志的应用容器所属的目标子任务;
将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
在其中一个实施例中,所述将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志,包括:
判断所述目标子任务是否属于所述分布式任务中的子任务;
若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;
将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志。
在其中一个实施例中,所述将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志,包括:
提取所述变动容器日志的日志内容;
将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;
将所述转存后的子任务日志,作为所述分布式任务对应的任务日志。
在其中一个实施例中,所述确定用于输出所述变动容器日志的应用容器所属的目标子任务,包括:
获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;
查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;
根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务。
在其中一个实施例中,在所述获取所述变动容器日志对应的应用容器标识的步骤之前,还包括:
确定所述分布式任务的各个子任务;
生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;
分别建立所述各个子任务的各个应用容器标识与所述各个子任务标识之间的对应关系。
在其中一个实施例中,所述方法还包括:
接收用户端发送的日志查看请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志查看操作生成的;所述日志查看请求包括待查看日志对应的第一标识;
根据所述第一标识,在所述分布式任务的多个子任务日志中,确定所述待查看日志;
返回所述待查看日志至所述用户端,以使所述用户端展示所述待查看日志。
在其中一个实施例中,所述方法还包括:
接收用户端发送的日志下载请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志下载操作生成的;所述日志下载请求包括待下载日志对应的第二标识;
根据所述第二标识,在所述分布式任务的多个子任务日志中,确定所述待下载日志;
返回所述待下载日志至所述用户端。
一种日志的处理装置,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,其特征在于,所述装置包括:
采集模块,用于采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定模块,用于确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
查询模块,用于确定用于输出所述变动容器日志的应用容器所属的目标子任务;
聚合模块,用于将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,所述处理器执行所述计算机程序时实现以下步骤:
采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
确定用于输出所述变动容器日志的应用容器所属的目标子任务;
将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
一种计算机可读存储介质,其上存储有计算机程序,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,所述计算机程序被处理器执行时实现以下步骤:
采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
确定用于输出所述变动容器日志的应用容器所属的目标子任务;
将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
上述一种日志的处理方法、装置、计算机设备和存储介质,通过采集运行在分布式平台中的各个应用容器输出的日志,得到原始容器日志,并对原始容器日志进行监控,将出现文件变动的原始容器日志作为变动容器日志;然后,确定用于输出变动容器日志的应用容器所属的目标子任务;并将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志;如此,可以准确地对分布式任务中的各个子任务所产生的日志文件进行聚合,使用户可以在分布式任务的任务日志中快速地查找到各个子任务对应的子任务日志,从而使用户可以高效地对深度学习训练过程中所产生的日志进行查看,提高了深度学习训练过程中的信息处理效率。
附图说明
图1为一个实施例中一种日志的处理方法的应用环境图;
图2为一个实施例中一种日志的处理方法的流程示意图;
图3为另一个实施例中一种日志的处理方法的流程示意图;
图4为一个实施例中一种日志的处理装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的日志的处理方法,可以应用于如图1所示的应用环境中。分布式平台110可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种日志的处理方法,该方法应用于分布式平台,分布式平台用于运行分布式任务,分布式任务包括多个子任务,子任务对应有用于处理该子任务的应用容器。
其中,分布式平台可以是同于供用户发布分布式任务的平台。
其中,分布式任务可以是指需要拆解成若干个子任务并分配到多个设备运行的任务。
实际应用中,分布式任务可以是深度学习任务、机器训练任务等。
实际应用中,当分布式平台在运行分布式任务时,分布式平台会将分布式任务拆解成多个子任务并为每个子任务生成环境配置参数,以保障子任务间的依赖关系和控制子任务间的数据一致性。
另外,分布式平台运行有容器管理系统,该容器管理系统用于为每个子任务创建对应至少一个的应用容器。例如,在Kubernetes(一种容器管理系统)中,分布式任务的多个子任务可以采用对应的Pod运行,每个Pod由一个或者多个应用容器组成。也就是说,在分布式平台中每个Pod代表对应的一个子任务。
其中,应用容器可以是指在容器环境下运行独立应用的容器。
需要说明的是,本领域技术人员可以了解到,Pod是在容器管理系统(Kubernetes)集群中的最小可部署单元。一个Pod代表着集群中运行的一个进程。而每个Pod中由一个或者多个应用容器(例如Docker(一种应用容器引擎)容器)组成,可以称为容器组。容器组中的至少一个的应用容器均共享存储、网络和容器运行配置项。每个Pod中的应用容器总是被同时调度,拥有着共同的运行环境。
上述方法包括以下步骤:
步骤S210,采集原始容器日志。
其中,原始容器日志为运行在分布式平台中的各个应用容器输出的日志。
具体实现中,分布式平台110在运行用户在分布式平台110上发布分布式任务时,分布式平台110会对运行在分布式平台110中的各个应用容器输出的日志进行采集,得到原始容器日志;然后,将原始容器日志存放在预设的第一存储路径下。
例如,在分布式平台110在容器管理系统Kubernetes启动一个daemonset(容器管理系统Kubernetes中的一种资源)。然后,daemonset会在分布式平台110中的每个node(节点)上都启动对应一个日志处理Pod。每个node上的日志处理pod会启动一个运行有logstash(一种用于进行日志处理的程序)进程的容器进行日志处理,从而对运行在分布式平台110中的各个应用容器输出的日志进行采集,将原始容器日志存放在该日志处理Pod预先挂载的第一存储路径,例如{docker_root_dir}/containers路径下。
步骤S220,确定原始容器日志中的变动容器日志。
其中,变动容器日志为出现文件变动的原始容器日志。
具体实现中,分布式平台110会对存放在第一存储路径下的各个原始容器日志进行监控,判断各个原始容器日志是否出现文件变动,若分布式平台110监控到出现文件变动的原始容器日志,则分布式平台110将出现文件变动的原始容器日志,作为变动容器日志。
步骤S230,确定用于输出变动容器日志的应用容器所属的目标子任务。
具体实现中,当分布式平台110确定变动容器日志后,分布式平台110确定用于输出变动容器日志的应用容器所属的目标子任务。
接上例,当分布式平台110可以根据变动容器日志对应的日志文件名,在日志处理Pod预先挂载的第二存储路径,例如/var/log/containers路径下找到与日志文件名对应的软链接文件;根据该软链接文件,确定用于输出该变动容器日志的应用容器所隶属的Pod即确定用于输出变动容器日志的应用容器所属的目标子任务。
需要说明的是,分布式平台110可以在每个node上为每个原始容器日志创建一个软链接文件;并将软链接文件存储在第二存储路径下,例如/var/log/containers,软链接文件会链接到相应pod目录下的容器日志,最终链接至第一存储路径,例如{docker_root_dir}/containers路径下相应容器目录下的原始容器日志。其中,软链接文件的文件名的命名格式可以为[Pod ID]-[containers ID],如此分布式平台110分布式平台110可以根据变动容器日志对应的日志文件名,在/var/log/containers路径下找到与日志文件名对应的软链接文件;根据该软链接文件,确定用于输出该变动容器日志的应用容器所隶属的Pod。
步骤S240,将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志。
其中,任务日志用于供用户监控分布式任务。
具体实现中,当分布式平台110确定用于输出变动容器日志的应用容器所属的目标子任务后,分布式平台110可以判断该目标子任务是否为上述的分布式任务运行的子任务,进而确定该目标子任务的变动容器日志是否需要进行收集。若是,分布式平台110则将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志,供用户对分布式任务进行监控,及时了解分布式任务的运行状态。
再接上例,分布式平台110在确定该目标子任务的变动容器日志需要进行收集后,分布式平台110则将变动容器日志的内容划分至存放在日志处理Pod预先挂载的第三存储路径,例如ceph路径中的子任务日志,进而得到针对分布式任务的任务日志,以供用户监控分布式任务。具体地,可以将第三存储路径与http服务进行绑定,从而供用户分布式任务的任务日志进行读取、查看、下载等操作。
上述的一种日志的处理方法,通过采集运行在分布式平台中的各个应用容器输出的日志,得到原始容器日志,并对原始容器日志进行监控,将出现文件变动的原始容器日志作为变动容器日志;然后,确定用于输出变动容器日志的应用容器所属的目标子任务;并将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志;如此,可以准确地对分布式任务中的各个子任务所产生的日志文件进行聚合,使用户可以在分布式任务的任务日志中快速地查找到各个子任务对应的子任务日志,从而使用户可以高效地对深度学习训练过程中所产生的日志进行查看,提高了深度学习训练过程中的信息处理效率。
在另一个实施例中,将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志,包括:判断目标子任务是否属于分布式任务中的子任务;若目标子任务属于分布式任务中的子任务,则在预存的多个候选子任务日志中,确定目标子任务对应的子任务日志;将变动容器日志划分至子任务日志中,得到分布式任务对应的任务日志。
具体实现中,分布式平台110在将变动容器日志划分至与目标子任务对应的子任务日志中,得到针对分布式任务的任务日志的过程中,具体包括:分布式平台110判断目标子任务是否属于分布式任务中的子任务;若目标子任务属于分布式任务中的子任务,则在预存的多个候选子任务日志中,确定目标子任务对应的子任务日志;将变动容器日志划分至子任务日志中,得到分布式任务对应的任务日志。
再接上例,当用户在分布式平台110发布一个id为1的分布式任务后,在创建该分布式任务的子任务对应的Pod时,容器管理系统会为该分布式任务中的各个Pod生成对应的Pod名。例如,platform-job-1-worker-0、platform-job-1-ps-0、platform-job-1-worker-1d等。
如此,当在分布式平台110确定用于输出变动容器日志的应用容器所属的目标子任务后,分布式平台110通过确定该目标子任务的Pod对应的Pod名,判断该Pod名是否包含“platform-job”关键字,若包含关键字“platform-job”,则确定该目标子任务属于分布式任务中的子任务,需要对变动容器日志进行收集。然后,分布式平台110在预存的多个候选子任务日志中,确定目标子任务对应的子任务日志;最后,将变动容器日志划分至子任务日志中,得到分布式任务对应的任务日志。
本实施例的技术方案,通过判断目标子任务是否属于分布式任务中的子任务;进而判断是否需要对变动容器日志进行收集,从而避免收集到与当前分布式任务无关的应用容器日志,提高对分布式任务中的各个子任务所产生的日志文件进行聚合的准确程度,从而使用户可以准确地获取到在深度学习训练过程中所产生的日志并进行查看,提高了深度学习训练过程的信息处理效率。
在另一个实施例中,将变动容器日志划分至子任务日志中,得到分布式任务对应的任务日志,包括:提取变动容器日志的日志内容;将日志内容转存至子任务日志中,得到转存后的子任务日志;将转存后的子任务日志,作为分布式任务对应的任务日志。
具体实现中,在将变动容器日志划分至子任务日志中,得到分布式任务对应的任务日志的过程中,具体包括:提取变动容器日志的日志内容;将日志内容转存至子任务日志中,得到转存后的子任务日志;将转存后的子任务日志,作为分布式任务对应的任务日志。
再接上例,分布式平台110的日志处理Pod提取变动容器日志的日志内容,然后日志处理Pod将日志内容追加转存在日志处理Pod预先挂载的ceph路径中的子任务日志,转存后的子任务日志,例如job/1/platform-job-1-ps-0.log文件中;将转存后的子任务日志,作为分布式任务对应的任务日志,以供用户根据任务日志对该分布式任务进行监控。
本实施例的技术方案,通过提取变动容器日志的日志内容;将日志内容转存至子任务日志中,得到转存后的子任务日志;将转存后的子任务日志,作为分布式任务对应的任务日志,从而可以便于用户准确地查找并查看到各个子任务对应的子任务日志,进而提高了深度学习训练过程的信息处理效率。
在另一个实施例中,确定用于输出变动容器日志的应用容器所属的目标子任务,包括:获取变动容器日志对应的应用容器标识;查询应用容器标识对应的子任务标识;根据子任务标识,确定用于输出变动容器日志的应用容器所属的目标子任务。
其中,应用容器标识为用于输出变动容器日志的应用容器所对应的标识。实际应用中,应用容器标识可以是用于输出变动容器日志的应用容器的应用容器ID,例如,container ID。
其中,子任务标识为用于输出变动容器日志的应用容器所属的目标子任务所对应的标识。实际应用中,子任务标识可以是子任务标识对应Pod的Pod名,例如,platform-job-1-ps-0、platform-job-1-worker-1d等。
具体实现中,分布式平台110在确定用于输出变动容器日志的应用容器所属的目标子任务具体包括:然后,获取变动容器日志对应的应用容器标识;查询应用容器标识对应的子任务标识;最后,根据子任务标识,确定用于输出变动容器日志的应用容器所属的目标子任务。再接上例,已知变动容器日志为“003f0aaa325c6657a2f907b29946ba5e2566248e67e86369ff1cb0e36791d751/003f0aaa325c6657a2f907b29946ba5e2566248e67e86369ff1cb0e36791d751-json.log”时,则确定变动容器日志对应的container ID为“003f0aaa325c6657a2f907b29946ba5e2566248e67e86369ff1cb0e36791d751”。
然后,使用该container ID,在/var/log/containers路径下找到与日志文件名对应的软链接文件,例如,platform-job-1-ps-0-7ff77d8c6c-h2q7f_default-003f0aaa325c6657a2f907b29946ba5e2566248e67e86369ff1cb0e36791d751.log;根据该软链接文件,确定用于输出该变动容器日志的应用容器所属于的Pod对应的Pod名为platform-job-1-ps-0。最后,根据该Pod名确定用于输出变动容器日志的应用容器所属的Pod,进而确定用于输出变动容器日志的应用容器所属的目标子任务。
本实施例的技术方案,通过获取变动容器日志对应的应用容器标识;查询应用容器标识对应的子任务标识;根据子任务标识,准确地确定用于输出变动容器日志的应用容器所属的目标子任务,进而可以准确地实现将变动容器日志划分至与目标子任务对应的子任务日志中,使用户可以准确地查找并查看到各个子任务对应的子任务日志,提高了深度学习训练过程的信息处理效率。
在另一个实施例中,在获取变动容器日志对应的应用容器标识的步骤之前,还包括:确定分布式任务的各个子任务;生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;分别建立各个子任务的各个应用容器标识与各个子任务标识之间的对应关系。
具体实现中,分布式平台110在获取变动容器日志对应的应用容器标识的步骤之前,分布式平台110还确定分布式任务的各个子任务;然后,分布式平台110生成针对各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;最后,分布式平台110分别建立各个子任务的各个应用容器标识与各个子任务标识之间的对应关系。
再接上例,当用户在分布式平台110发布一个id为1的分布式任务后,生成针对各个子任务对应的各个子任务标识,具体地,在创建该分布式任务的子任务对应的Pod时,容器管理系统会为该分布式任务中的各个Pod生成对应的Pod名,例如platform-job-1-worker-0,作为该子任务对应的子任务标识。
同时,分布式平台110生成各个子任务中的应用容器对应的各个应用容器标识,例如,003f0aaa325c6657a2f907b29946ba5e2容器;同时,应用容器输出的应用容器日志的文件名均包括该应用容器对应的应用容器标识。最后,分别建立各个子任务的各个应用容器标识与各个子任务标识之间的对应关系。
然后,分布式平台110可以在每个node上为每个原始容器日志创建一个软链接文件;并将软链接文件存储在第二存储路径下,例如/var/log/containers,软链接文件会链接到相应pod目录下的容器日志,最终连接至第一存储路径,例如{docker_root_dir}/containers路径下相应容器目录下的原始容器日志。其中,软链接文件的文件名的命名格式可以为[Pod ID]-[containers ID]。如此,分布式平台110分布式平台110可以根据变动容器日志文件名中的应用容器标识,在/var/log/containers路径下找到与日志文件名对应的软链接文件;根据该软链接文件,确定用于输出该变动容器日志的应用容器所隶属的Pod。
本实施例的技术方案,通过确定分布式任务的各个子任务;并生成针对各个子任务对应的各个子任务标识,以及,生成各个子任务中的至少一个的应用容器对应的各个应用容器标识;最后,通过分别建立各个子任务的各个应用容器标识与各个子任务标识之间的对应关系,从而根据变动容器日志对应的应用容器标识,准确地查询到应用容器标识对应的子任务标识;进而准确地确定用于输出变动容器日志的应用容器所属的目标子任务,以便于后续将变动容器日志划分至与目标子任务对应的子任务日志中,使用户可以准确地查找并查看到各个子任务对应的子任务日志,提高了深度学习训练过程的信息处理效率。
在另一个实施例中,还包括:接收用户端发送的日志查看请求;日志查看请求为用户端响应用户实施于分布式任务的日志查看操作生成的;日志查看请求包括待查看日志对应的第一标识;根据第一标识,在分布式任务的多个子任务日志中,确定待查看日志;返回待查看日志至用户端,以使用户端展示待查看日志。
其中,日志查看请求可以是指用户端针对待查看日志生成的下载请求。
具体实现中,用于存放分布式任务的多个子任务日志的储存路径可以配置相应的http接口或者Web UI接口,如将绑定存放分布式任务的多个子任务日志的绑定到提供http服务的http服务器上,当用户需要查看上述的待查看日志时,用户可以在用户端中选择需要查看的待查看日志时,此时用户端响应该用户实施于分布式任务的日志查看操作生成日志查看请求,并通过http服务器发送该日志查看请求至分布式平台110;当分布式平台110接收用户端针对分布式任务发送的日志查看请求时,分布式平台110对日志查看请求进行解析,确定待查看日志对应的第一标识;然后,分布式平台110根据第一标识,在存放有多个子任务日志的储存路径中,查询得到待查看日志;最后,分布式平台110返回待查看日志至用户端,以使用户端展示待查看日志。
再接上例,当用户需要查看子任务id为1的待查看日志时,用户端则生成待查看日志对应的第一标识为job/1,然后,分布式平台110根据第一标识,在第三储存路径ceph文件目录中,寻找目录名为job/1/的子目录,将此子目录下的所用子任务日志读取出来,作为待查看日志,分布式平台110返回待查看日志至用户端,以使用户端展示待查看日志。
本实施例的技术方案,通过接收用户端针对分布式任务发送的日志查看请求,根据该日志查看请求在分布式任务的多个子任务日志中,确定待查看日志;返回待查看日志至用户端,以使用户端展示待查看日志,从而可以便于用户准确地查看到针对分布式任务的待查看日志,以对该分布式任务进行监控,进而提高了深度学习训练过程的信息处理效率。
在另一个实施例中,还包括:接收用户端发送的日志下载请求;日志查看请求为用户端响应用户实施于分布式任务的日志下载操作生成的;日志下载请求包括待下载日志对应的第二标识;根据第二标识,在分布式任务的多个子任务日志中,确定待下载日志;返回待下载日志至用户端。
其中,日志下载请求可以是指用户端针对待下载日志生成的下载请求。
具体实现中,用于存放分布式任务的多个子任务日志的第三储存路径可以绑定到提供http服务的http服务器上,当用户需要下载上述的待下载日志时,用户可以在用户端中选择需要下载的待下载日志时,此时用户端响应该用户实施于分布式任务的日志下载操作生成日志下载请求,并通过http服务器发送该日志下载请求;当分布式平台110接收用户端针对分布式任务发送的日志下载请求时,分布式平台110对日志下载请求进行解析,确定待下载日志对应的第二标识;然后,分布式平台110根据第二标识,在存放在第三储存路径的多个子任务日志中,确定待下载日志;最后,返回待下载日志至用户端。
再接上例,当用户需要下载子任务id为1的待下载日志时,即待下载日志对应的第二标识为job/1,然后,分布式平台110根据第二标识,在第三储存路径ceph文件目录中,寻找目录名为job/1/的子目录,将此子目录下的所用子任务日志读取出来,作为待下载日志,分布式平台110返回待下载日志至用户端。
本实施例的技术方案,通过接收用户端针对分布式任务发送的日志下载请求;根据日志下载请求,在分布式任务的多个子任务日志中,确定待下载日志;返回待下载日志至用户端,从而可以便于用户快速且准确地下载到针对分布式任务的待下载日志,以对该分布式任务进行监控,进而提高了深度学习训练过程的信息处理效率。
在另一个实施例中,如图3所示,提供了一种日志的处理方法,该方法应用于分布式平台,分布式平台用于运行分布式任务,分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器。该方法具体包括如下步骤:
步骤S302,采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
步骤S304,确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
步骤S306,获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;
步骤S308,查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;
步骤S310,根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务;
步骤S312,判断所述目标子任务是否属于所述分布式任务中的子任务;
步骤S314,若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;
步骤S316,提取所述变动容器日志的日志内容;
步骤S318,将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;
步骤S320,将所述转存后的子任务日志,作为用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
上述步骤的具体限定可以参见上文中对于一种日志的处理的限定,在此不再赘述。
本申请实施例提供的技术方案中,通过采集运行在分布式平台中的各个应用容器输出的日志,得到原始容器日志,并对原始容器日志进行监控,将出现文件变动的原始容器日志作为变动容器日志;然后,确定用于输出变动容器日志的应用容器所属的目标子任务;并将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志;如此,可以准确地对分布式任务中的各个子任务所产生的日志文件进行聚合,使用户可以在分布式任务的任务日志中快速地查找到各个子任务对应的子任务日志,从而使用户可以高效地对深度学习训练过程中所产生的日志进行查看,提高了深度学习训练过程中的信息处理效率。
应该理解的是,虽然图2和图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种日志的处理装置,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,所述装置包括:
采集模块410,用于采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定模块420,用于确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
查询模块430,用于确定用于输出所述变动容器日志的应用容器所属的目标子任务;
聚合模块440,用于将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
上述的一种日志的处理装置,通过采集运行在分布式平台中的各个应用容器输出的日志,得到原始容器日志,并对原始容器日志进行监控,将出现文件变动的原始容器日志作为变动容器日志;然后,确定用于输出变动容器日志的应用容器所属的目标子任务;并将变动容器日志划分至与目标子任务对应的子任务日志中,得到用于表征分布式任务的运行状态的任务日志;如此,可以准确地对分布式任务中的各个子任务所产生的日志文件进行聚合,使用户可以在分布式任务的任务日志中快速地查找到各个子任务对应的子任务日志,从而使用户可以高效地对深度学习训练过程中所产生的日志进行查看,提高了深度学习训练过程中的信息处理效率。
在其中一个实施例中,上述的聚合模块440,包括:判定子模块,用于判断所述目标子任务是否属于所述分布式任务中的子任务;确定子模块,若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;生成子模块,用于将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志。
在其中一个实施例中,上述的生成子模块,具体用于:提取所述变动容器日志的日志内容;将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;将所述转存后的子任务日志,作为所述分布式任务对应的任务日志。
在其中一个实施例中,上述的查询模块430,包括:标识获取子模块,用于获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;查询子模块,用于查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;子任务确定子模块,用于根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务。
在其中一个实施例中,上述的一种日志的处理装置,还包括:子任务确定模块,用于确定所述分布式任务的各个子任务;标识生成模块,用于生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;建立模块,用于分别建立所述各个子任务的各个应用容器标识与所述各个子任务标识之间的对应关系。
在其中一个实施例中,上述的一种日志的处理装置,还包括:第一接收模块,用于接收用户端发送的日志查看请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志查看操作生成的;所述日志查看请求包括待查看日志对应的第一标识;第一查询模块,用于根据所述第一标识,在所述分布式任务的多个子任务日志中,确定所述待查看日志;第一返回模块,用于返回所述待查看日志至所述用户端,以使所述用户端展示所述待查看日志。
在其中一个实施例中,上述的一种日志的处理装置,还包括:第二接收模块,用于接收用户端发送的日志下载请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志下载操作生成的;所述日志下载请求包括待下载日志对应的第二标识;第二查询模块,用于根据所述第二标识,在所述分布式任务的多个子任务日志中,确定所述待下载日志;第二返回模块,用于返回所述待下载日志至所述用户端。
关于一种日志的处理装置的具体限定可以参见上文中对于一种日志的处理方法的限定,在此不再赘述。上述一种日志的处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储日志数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种日志的处理方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
步骤210,采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
步骤220,确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
步骤230,确定用于输出所述变动容器日志的应用容器所属的目标子任务;
步骤240,将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:判断所述目标子任务是否属于所述分布式任务中的子任务;若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:提取所述变动容器日志的日志内容;将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;将所述转存后的子任务日志,作为所述分布式任务对应的任务日志。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:确定所述分布式任务的各个子任务;生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;分别建立所述各个子任务的各个应用容器标识与所述各个子任务标识之间的对应关系。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收用户端发送的日志查看请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志查看操作生成的;所述日志查看请求包括待查看日志对应的第一标识;根据所述第一标识,在所述分布式任务的多个子任务日志中,确定所述待查看日志;返回所述待查看日志至所述用户端,以使所述用户端展示所述待查看日志。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收用户端发送的日志下载请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志下载操作生成的;所述日志下载请求包括待下载日志对应的第二标识;根据所述第二标识,在所述分布式任务的多个子任务日志中,确定所述待下载日志;返回所述待下载日志至所述用户端。
在一个实施例中,提供了一种计算机可读存储介质,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
步骤210,采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
步骤220,确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
步骤230,确定用于输出所述变动容器日志的应用容器所属的目标子任务;
步骤240,将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:判断所述目标子任务是否属于所述分布式任务中的子任务;若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:提取所述变动容器日志的日志内容;将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;将所述转存后的子任务日志,作为所述分布式任务对应的任务日志。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:确定所述分布式任务的各个子任务;生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;分别建立所述各个子任务的各个应用容器标识与所述各个子任务标识之间的对应关系。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收用户端发送的日志查看请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志查看操作生成的;所述日志查看请求包括待查看日志对应的第一标识;根据所述第一标识,在所述分布式任务的多个子任务日志中,确定所述待查看日志;返回所述待查看日志至所述用户端,以使所述用户端展示所述待查看日志。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收用户端发送的日志下载请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志下载操作生成的;所述日志下载请求包括待下载日志对应的第二标识;根据所述第二标识,在所述分布式任务的多个子任务日志中,确定所述待下载日志;返回所述待下载日志至所述用户端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (16)

1.一种日志的处理方法,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,其特征在于,所述方法包括:
采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
基于为所述原始容器日志创建的软链接文件,确定用于输出所述变动容器日志的应用容器所属的目标子任务;所述软链接文件用于链接至所述各个应用容器预先挂载的第一存储路径;
将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
2.根据权利要求1所述的方法,其特征在于,所述将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志,包括:
判断所述目标子任务是否属于所述分布式任务中的子任务;
若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;
将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志。
3.根据权利要求2所述的方法,其特征在于,所述将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志,包括:
提取所述变动容器日志的日志内容;
将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;
将所述转存后的子任务日志,作为所述分布式任务对应的任务日志。
4.根据权利要求1所述的方法,其特征在于,所述确定用于输出所述变动容器日志的应用容器所属的目标子任务,包括:
获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;
查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;
根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务。
5.根据权利要求4所述的方法,其特征在于,在所述获取所述变动容器日志对应的应用容器标识的步骤之前,还包括:
确定所述分布式任务的各个子任务;
生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;
分别建立所述各个应用容器标识与所述各个子任务标识之间的对应关系。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收用户端发送的日志查看请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志查看操作生成的;所述日志查看请求包括待查看日志对应的第一标识;
根据所述第一标识,在所述分布式任务的多个子任务日志中,确定所述待查看日志;
返回所述待查看日志至所述用户端,以使所述用户端展示所述待查看日志。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收用户端发送的日志下载请求;日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志下载操作生成的;所述日志下载请求包括待下载日志对应的第二标识;
根据所述第二标识,在所述分布式任务的多个子任务日志中,确定所述待下载日志;
返回所述待下载日志至所述用户端。
8.一种日志的处理装置,应用于分布式平台,所述分布式平台用于运行分布式任务,所述分布式任务包括多个子任务,所述子任务对应有用于处理所述子任务的应用容器,其特征在于,所述装置包括:
采集模块,用于采集原始容器日志;所述原始容器日志为运行在所述分布式平台中的各个应用容器输出的日志;
确定模块,用于确定所述原始容器日志中的变动容器日志;所述变动容器日志为出现文件变动的原始容器日志;
查询模块,用于基于为所述原始容器日志创建的软链接文件,确定用于输出所述变动容器日志的应用容器所属的目标子任务;所述软链接文件用于链接至所述各个应用容器预先挂载的第一存储路径;
聚合模块,用于将所述变动容器日志划分至与所述目标子任务对应的子任务日志中,得到用于表征所述分布式任务的运行状态的任务日志;所述任务日志用于供用户监控所述分布式任务。
9.根据权利要求8所述的装置,其特征在于,所述聚合模块,包括:
判定子模块,用于判断所述目标子任务是否属于所述分布式任务中的子任务;
确定子模块,若所述目标子任务属于所述分布式任务中的子任务,则在预存的多个候选子任务日志中,确定所述目标子任务对应的子任务日志;
生成子模块,用于将所述变动容器日志划分至所述子任务日志中,得到所述分布式任务对应的任务日志。
10.根据权利要求9所述的装置,其特征在于,所述生成子模块,具体用于:提取所述变动容器日志的日志内容;将所述日志内容转存至所述子任务日志中,得到转存后的子任务日志;将所述转存后的子任务日志,作为所述分布式任务对应的任务日志。
11.根据权利要求8所述的装置,其特征在于,所述查询模块,包括:
标识获取子模块,用于获取所述变动容器日志对应的应用容器标识;所述应用容器标识为所述用于输出所述变动容器日志的应用容器所对应的标识;
查询子模块,用于查询所述应用容器标识对应的子任务标识;所述子任务标识为所述用于输出所述变动容器日志的应用容器所属的目标子任务所对应的标识;
子任务确定子模块,用于根据所述子任务标识,确定所述用于输出所述变动容器日志的应用容器所属的目标子任务。
12.根据权利要求11所述的装置,其特征在于,还包括:
子任务确定模块,用于确定所述分布式任务的各个子任务;
标识生成模块,用于生成与所述各个子任务对应的各个子任务标识,以及,生成与所述各个子任务对应的应用容器的各个应用容器标识;
建立模块,用于分别建立所述各个子任务的各个应用容器标识与所述各个子任务标识之间的对应关系。
13.根据权利要求8所述的装置,其特征在于,还包括:
第一接收模块,用于接收用户端发送的日志查看请求;所述日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志查看操作生成的;所述日志查看请求包括待查看日志对应的第一标识;
第一查询模块,用于根据所述第一标识,在所述分布式任务的多个子任务日志中,确定所述待查看日志;
第一返回模块,用于返回所述待查看日志至所述用户端,以使所述用户端展示所述待查看日志。
14.根据权利要求8所述的装置,其特征在于,还包括:
第二接收模块,用于接收用户端发送的日志下载请求;日志查看请求为所述用户端响应所述用户实施于所述分布式任务的日志下载操作生成的;所述日志下载请求包括待下载日志对应的第二标识;
第二查询模块,用于根据所述第二标识,在所述分布式任务的多个子任务日志中,确定所述待下载日志;
第二返回模块,用于返回所述待下载日志至所述用户端。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202010054266.XA 2020-01-17 2020-01-17 日志的处理方法、装置、计算机设备和存储介质 Active CN111274091B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010054266.XA CN111274091B (zh) 2020-01-17 2020-01-17 日志的处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010054266.XA CN111274091B (zh) 2020-01-17 2020-01-17 日志的处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111274091A CN111274091A (zh) 2020-06-12
CN111274091B true CN111274091B (zh) 2024-01-09

Family

ID=70997313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010054266.XA Active CN111274091B (zh) 2020-01-17 2020-01-17 日志的处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111274091B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111898122B (zh) * 2020-07-27 2023-11-17 平安证券股份有限公司 容器内应用的日志采集方法、装置、介质及电子设备
CN112905537B (zh) * 2021-02-20 2022-09-02 北京百度网讯科技有限公司 文件处理方法、装置、电子设备和存储介质
CN113961518B (zh) * 2021-09-08 2022-09-23 北京百度网讯科技有限公司 日志的可视化展示方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105227354A (zh) * 2015-09-07 2016-01-06 浪潮软件集团有限公司 一种基于日志的对分布式系统监控管理的方法
CN108205477A (zh) * 2016-12-16 2018-06-26 上海仪电(集团)有限公司中央研究院 服务器压力测试方法
CN109743199A (zh) * 2018-12-25 2019-05-10 中国联合网络通信集团有限公司 基于微服务的容器化管理系统
CN109818934A (zh) * 2018-12-29 2019-05-28 深圳前海达闼云端智能科技有限公司 一种自动化日志处理的方法、装置及计算设备
CN109933484A (zh) * 2017-12-15 2019-06-25 北京京东尚科信息技术有限公司 大数据集群准实时container资源分配监控分析方法
CN110231998A (zh) * 2019-06-13 2019-09-13 泰康保险集团股份有限公司 分布式定时任务的检测方法、装置及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684898B (zh) * 2012-09-14 2017-06-23 阿里巴巴集团控股有限公司 一种监测用户请求在分布式系统中运行的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105227354A (zh) * 2015-09-07 2016-01-06 浪潮软件集团有限公司 一种基于日志的对分布式系统监控管理的方法
CN108205477A (zh) * 2016-12-16 2018-06-26 上海仪电(集团)有限公司中央研究院 服务器压力测试方法
CN109933484A (zh) * 2017-12-15 2019-06-25 北京京东尚科信息技术有限公司 大数据集群准实时container资源分配监控分析方法
CN109743199A (zh) * 2018-12-25 2019-05-10 中国联合网络通信集团有限公司 基于微服务的容器化管理系统
CN109818934A (zh) * 2018-12-29 2019-05-28 深圳前海达闼云端智能科技有限公司 一种自动化日志处理的方法、装置及计算设备
CN110231998A (zh) * 2019-06-13 2019-09-13 泰康保险集团股份有限公司 分布式定时任务的检测方法、装置及存储介质

Also Published As

Publication number Publication date
CN111274091A (zh) 2020-06-12

Similar Documents

Publication Publication Date Title
CN111274091B (zh) 日志的处理方法、装置、计算机设备和存储介质
CN112910945B (zh) 请求链路跟踪方法和业务请求处理方法
US11809406B2 (en) Event records in a log file
CN110866198A (zh) 静态资源缓存方法、系统、装置、计算机设备和存储介质
CN112148610A (zh) 测试用例执行方法、装置、计算机设备和存储介质
CN112783720B (zh) 拓扑结构图生成方法、装置、计算机设备和展示系统
CN111324905A (zh) 影像数据标注方法、装置、计算机设备和存储介质
CN111475376A (zh) 处理测试数据的方法、装置、计算机设备和存储介质
CN111274512A (zh) 一种页面加载方法、装置及介质
CN104994183A (zh) 短网址确定方法和装置
CN112100152A (zh) 业务数据处理方法、系统、服务器和可读存储介质
CN111339170A (zh) 数据处理方法、装置、计算机设备及存储介质
CN115396159A (zh) 一种容器镜像的检测方法及客户端、服务端
CN101437028B (zh) 一种多地址生成方法、系统和装置
CN114510322A (zh) 一种业务集群的压测控制方法、装置、计算机设备及介质
CN113656183A (zh) 任务处理方法、装置、设备及存储介质
CN110162467B (zh) 软件测试方法、装置、计算机设备和可读存储介质
CN113254349A (zh) 基于云函数的ab测试处理方法、装置、设备及存储介质
CN112597119A (zh) 一种处理日志的生成方法、装置及存储介质
CN116028444B (zh) 文件指纹生成方法、装置、系统、电子设备及存储介质
CN111221781A (zh) 一种数据查找方法、装置、电子设备及系统
CN113656434B (zh) 数据查询方法、装置、计算机设备和存储介质
CN116431677B (zh) 基于内存数据库的数据路由方法、系统和可读存储介质
CN117376340A (zh) 文件上传方法、装置、计算机设备和存储介质
CN117193907A (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