监控持续集成状态的方法及装置.pdf

上传人:1****2 文档编号:1753121 上传时间:2018-07-09 格式:PDF 页数:13 大小:1.25MB
返回 下载 相关 举报
摘要
申请专利号:

CN201510109433.5

申请日:

2015.03.12

公开号:

CN104731692A

公开日:

2015.06.24

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效 IPC(主分类):G06F 11/34申请日:20150312|||公开

IPC分类号:

G06F11/34

主分类号:

G06F11/34

申请人:

用友网络科技股份有限公司

发明人:

胡尊文

地址:

100094北京市海淀区北清路68号

优先权:

专利代理机构:

北京友联知识产权代理事务所(普通合伙)11343

代理人:

尚志峰; 汪海屏

PDF下载: PDF下载
内容摘要

本发明提供了一种监控持续集成状态的方法及装置,其中,监控持续集成状态的方法包括:将待开发产品划分为多个开发模块,确定多个开发模块中的每个开发模块对应的持续集成任务;配置对持续集成任务进行构建的脚本,以规范持续集成任务的构建日志;在对每个开发模块对应的持续集成任务进行构建时,监测每个开发模块的每个持续集成任务的构建日志;根据所述每个持续集成任务的构建日志确定所述每个持续集成任务的集成状态。本发明的技术方案能够有效、准确地实现对每个开发模块的每个持续集成任务的集成状态的监控,进而能够实现对每个开发模块的持续集成状态的监控,降低了对产品开发过程中的持续集成状态的监控难度,从而提高了产品开发的效率。

权利要求书

权利要求书
1.  一种监控持续集成状态的方法,其特征在于,包括:
将待开发产品划分为多个开发模块,并确定所述多个开发模块中的每 个开发模块对应的持续集成任务;
配置对所述持续集成任务进行构建的脚本,以规范所述持续集成任务 的构建日志;
在对所述每个开发模块对应的持续集成任务进行构建时,监测所述每 个开发模块的每个持续集成任务的构建日志;
根据所述每个持续集成任务的构建日志确定所述每个持续集成任务的 集成状态。

2.  根据权利要求1所述的监控持续集成状态的方法,其特征在于, 配置对所述持续集成任务进行构建的脚本的步骤具体包括:
配置所述持续集成任务的每个持续集成阶段在所述构建日志中的标识 信息,以及用于标识所述每个持续集成阶段开始构建和结束构建的日志信 息。

3.  根据权利要求2所述的监控持续集成状态的方法,其特征在于, 根据所述每个持续集成任务的构建日志确定所述每个集成任务的集成状态 的步骤具体包括:
若根据所述任一持续集成任务的构建日志确定所述任一持续集成任务 的所有持续集成阶段均构建成功,则确定所述任一持续集成任务集成成 功,否则,确定所述任一持续集成任务集成失败。

4.  根据权利要求3所述的监控持续集成状态的方法,其特征在于, 确定所述任一持续集成任务的任一持续集成阶段是否构建成功的步骤具体 包括:
判断所述任一集成任务的构建日志中是否包含所述任一持续集成阶段 的标识信息和用于标识所述任一持续集成阶段开始构建和结束构建的日志 信息,若是,则确定所述任一持续集成阶段构建成功,否则,确定所述任 一持续集成阶段构建失败。

5.  根据权利要求1至4中任一项所述的监控持续集成状态的方法, 其特征在于,还包括:
存储所述每个持续集成任务的集成状态;
根据存储的所述每个持续集成任务的集成状态生成持续集成状态的监 控报告。

6.  一种监控持续集成状态的装置,其特征在于,包括:
划分单元,用于将待开发产品划分为多个开发模块;
确定单元,用于确定所述多个开发模块中的每个开发模块对应的持续 集成任务;
配置单元,用于配置对所述持续集成任务进行构建的脚本,以规范所 述持续集成任务的构建日志;
监测单元,用于在对所述每个开发模块对应的持续集成任务进行构建 时,监测所述每个开发模块的每个持续集成任务的构建日志;
处理单元,用于根据所述每个持续集成任务的构建日志确定所述每个 持续集成任务的集成状态。

7.  根据权利要求6所述的监控持续集成状态的装置,其特征在于, 所述配置单元具体用于:
配置所述持续集成任务的每个持续集成阶段在所述构建日志中的标识 信息,以及用于标识所述每个持续集成阶段开始构建和结束构建的日志信 息。

8.  根据权利要求7所述的监控持续集成状态的装置,其特征在于, 所述处理单元具体用于:
若根据所述任一持续集成任务的构建日志确定所述任一持续集成任务 的所有持续集成阶段均构建成功,则确定所述任一持续集成任务集成成 功,否则,确定所述任一持续集成任务集成失败。

9.  根据权利要求8所述的监控持续集成状态的装置,其特征在于, 所述处理单元具体还用于:
判断所述任一集成任务的构建日志中是否包含任一所述持续集成阶段 的标识信息和用于标识任一所述持续集成阶段开始构建和结束构建的日志 信息,若是,则确定任一所述持续集成阶段构建成功,否则,确定任一所 述持续集成阶段构建失败。

10.  根据权利要求6至9中任一项所述的监控持续集成状态的装置, 其特征在于,还包括:
存储单元,用于存储所述每个持续集成任务的集成状态;
生成单元,用于根据所述存储单元存储的所述每个持续集成任务的集 成状态生成持续集成状态的监控报告。

说明书

说明书监控持续集成状态的方法及装置
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种监控持续集成状态 的方法和一种监控持续集成状态的装置。
背景技术
持续集成是敏捷开发方法中的重要的一个实践活动,持续集成不是孤 立存在的,它和软件开发过程中方方面面都有关联。持续集成是把持续集 成中的代码获取、代码编译、构造打包、注入编译、测试编译、单元测 试、做盘安装、部署环境、结果采集、分析报告等活动串起来,实现敏捷 的快速集成、快速验证、快速发布的目标。
持续集成运行过程中,非常关键的实践就是集成状态监控及其结果收 集分析,通过监控集成状态与分析集成结果,掌握持续集成运行问题和产 品质量问题分布,可以不断地优化调整来解决研发过程问题和产品质量问 题,从而提高研发效率、保证产品质量。
随着现在软件项目复杂度的增加,意味着软件结构越来越复杂、规模 越来越大,这时通常会把一个产品分成若干个甚至十几个开发模块来进行 开发、集成,而每个开发模块又被划分为几个阶段来进行:代码同步、代 码编译、构造打包,注入编译,测试编译,单元测试等等,并且每天每个 产品的每个开发模块都会频繁地进行多次集成。上述的持续集成过程,主 要存在如下问题:每个开发模块的集成状态及其每个持续集成阶段的状态 如何监控;如何获知各个产品每天的做盘与安装状态和每个产品的测试用 例执行状态等。
因此,如何能够有效、准确地实现在产品开发过程中对持续集成状态 的监控成为亟待解决的技术问题。
发明内容
本发明正是基于上述技术问题至少之一,提出了一种新的监控持续集 成状态的方案,能够有效、准确地实现对每个开发模块的每个持续集成任 务的集成状态的监控,进而能够实现对每个开发模块的持续集成状态的监 控,降低了对产品开发过程中的持续集成状态的监控难度,从而提高了产 品开发的效率。
有鉴于此,本发明提出了一种监控持续集成状态的方法,包括:将待 开发产品划分为多个开发模块,并确定所述多个开发模块中的每个开发模 块对应的持续集成任务;配置对所述持续集成任务进行构建的脚本,以规 范所述持续集成任务的构建日志;在对所述每个开发模块对应的持续集成 任务进行构建时,监测所述每个开发模块的每个持续集成任务的构建日 志;根据所述每个持续集成任务的构建日志确定所述每个持续集成任务的 集成状态。
在该技术方案中,通过规范持续集成任务的构建日志,以在对每个开 发模块对应的持续集成任务进行构建时,通过监测每个开发模块的每个持 续集成任务的构建日志确定每个持续集成任务的集成状态,使得能够有 效、准确地实现对每个开发模块的每个持续集成任务的集成状态的监控, 进而能够实现对每个开发模块的持续集成状态的监控,降低了对产品开发 过程中的持续集成状态的监控难度,从而提高了产品开发的效率。
在上述技术方案中,优选地,配置对所述持续集成任务进行构建的脚 本的步骤具体包括:配置所述持续集成任务的每个持续集成阶段在所述构 建日志中的标识信息,以及用于标识所述每个持续集成阶段开始构建和结 束构建的日志信息。
在该技术方案中,通过配置每个持续集成阶段在构建日志中的标识信 息,使得能够在构建日志中能够准确地确定每个持续集成阶段的构建信 息,进而能够根据每个持续集成阶段的构建信息确定每个持续集成阶段的 集成状态。
在上述技术方案中,优选地,根据所述每个持续集成任务的构建日志 确定所述每个集成任务的集成状态的步骤具体包括:若根据所述任一持续 集成任务的构建日志确定所述任一持续集成任务的所有持续集成阶段均构 建成功,则确定所述任一持续集成任务集成成功,否则,确定所述任一持 续集成任务集成失败。
在上述技术方案中,优选地,确定所述任一持续集成任务的任一持续 集成阶段是否构建成功的步骤具体包括:判断所述任一集成任务的构建日 志中是否包含所述任一持续集成阶段的标识信息和用于标识所述任一持续 集成阶段开始构建和结束构建的日志信息,若是,则确定所述任一持续集 成阶段构建成功,否则,确定所述任一持续集成阶段构建失败。
在上述技术方案中,优选地,还包括:存储所述每个持续集成任务的 集成状态;根据存储的所述每个持续集成任务的集成状态生成持续集成状 态的监控报告。
在该技术方案中,通过生成持续集成状态的监控报告,可以便于开发 人员对产品的持续集成状态的分析,以提高产品开发的效率。
根据本发明的另一方面,还提出了一种监控持续集成状态的装置,包 括:划分单元,用于将待开发产品划分为多个开发模块;确定单元,用于 确定所述多个开发模块中的每个开发模块对应的持续集成任务;配置单 元,用于配置对所述持续集成任务进行构建的脚本,以规范所述持续集成 任务的构建日志;监测单元,用于在对所述每个开发模块对应的持续集成 任务进行构建时,监测所述每个开发模块的每个持续集成任务的构建日 志;处理单元,用于根据所述每个持续集成任务的构建日志确定所述每个 持续集成任务的集成状态。
在该技术方案中,通过规范持续集成任务的构建日志,以在对每个开 发模块对应的持续集成任务进行构建时,通过监测每个开发模块的每个持 续集成任务的构建日志确定每个持续集成任务的集成状态,使得能够有 效、准确地实现对每个开发模块的每个持续集成任务的集成状态的监控, 进而能够实现对每个开发模块的持续集成状态的监控,降低了对产品开发 过程中的持续集成状态的监控难度,从而提高了产品开发的效率。
在上述技术方案中,优选地,所述配置单元具体用于:配置所述持续 集成任务的每个持续集成阶段在所述构建日志中的标识信息,以及用于标 识所述每个持续集成阶段开始构建和结束构建的日志信息。
在该技术方案中,通过配置每个持续集成阶段在构建日志中的标识信 息,使得能够在构建日志中能够准确地确定每个持续集成阶段的构建信 息,进而能够根据每个持续集成阶段的构建信息确定每个持续集成阶段的 集成状态。
在上述技术方案中,优选地,所述处理单元具体用于:若根据所述任 一持续集成任务的构建日志确定所述任一持续集成任务的所有持续集成阶 段均构建成功,则确定所述任一持续集成任务集成成功,否则,确定所述 任一持续集成任务集成失败。
在上述技术方案中,优选地,所述处理单元具体还用于:判断所述任 一集成任务的构建日志中是否包含任一所述持续集成阶段的标识信息和用 于标识任一所述持续集成阶段开始构建和结束构建的日志信息,若是,则 确定任一所述持续集成阶段构建成功,否则,确定任一所述持续集成阶段 构建失败。
在上述技术方案中,优选地,还包括:存储单元,用于存储所述每个 持续集成任务的集成状态;生成单元,用于根据所述存储单元存储的所述 每个持续集成任务的集成状态生成持续集成状态的监控报告。
在该技术方案中,通过生成持续集成状态的监控报告,可以便于开发 人员对产品的持续集成状态的分析,以提高产品开发的效率。
通过以上技术方案,能够有效、准确地实现对每个开发模块的每个持 续集成任务的集成状态的监控,进而能够实现对每个开发模块的持续集成 状态的监控,降低了对产品开发过程中的持续集成状态的监控难度,从而 提高了产品开发的效率。
附图说明
图1示出了根据本发明的实施例的监控持续集成状态的方法的示意流 程图;
图2示出了根据本发明的实施例的监控持续集成状态的装置的示意框 图;
图3示出了根据本发明的实施例的监控持续集成状态的工作流程图;
图4示出了根据本发明的实施例的集成任务与脚本的关系示意图;
图5示出了根据本发明的实施例的用于配置监控规则与计算规则的配 置文件示意图;
图6示出了根据本发明的实施例的监控报告示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附 图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不 冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是, 本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明 的保护范围并不受下面公开的具体实施例的限制。
图1示出了根据本发明的实施例的监控持续集成状态的方法的示意流 程图。
如图1所示,根据本发明的实施例的监控持续集成状态的方法,包 括:步骤102,将待开发产品划分为多个开发模块,并确定所述多个开发 模块中的每个开发模块对应的持续集成任务;步骤104,配置对所述持续 集成任务进行构建的脚本,以规范所述持续集成任务的构建日志;步骤 106,在对所述每个开发模块对应的持续集成任务进行构建时,监测所述 每个开发模块的每个持续集成任务的构建日志;步骤108,根据所述每个 持续集成任务的构建日志确定所述每个持续集成任务的集成状态。
在该技术方案中,通过规范持续集成任务的构建日志,以在对每个开 发模块对应的持续集成任务进行构建时,通过监测每个开发模块的每个持 续集成任务的构建日志确定每个持续集成任务的集成状态,使得能够有 效、准确地实现对每个开发模块的每个持续集成任务的集成状态的监控, 进而能够实现对每个开发模块的持续集成状态的监控,降低了对产品开发 过程中的持续集成状态的监控难度,从而提高了产品开发的效率。
在上述技术方案中,优选地,配置对所述持续集成任务进行构建的脚 本的步骤具体包括:配置所述持续集成任务的每个持续集成阶段在所述构 建日志中的标识信息,以及用于标识所述每个持续集成阶段开始构建和结 束构建的日志信息。
在该技术方案中,通过配置每个持续集成阶段在构建日志中的标识信 息,使得能够在构建日志中能够准确地确定每个持续集成阶段的构建信 息,进而能够根据每个持续集成阶段的构建信息确定每个持续集成阶段的 集成状态。
在上述技术方案中,优选地,根据所述每个持续集成任务的构建日志 确定所述每个集成任务的集成状态的步骤具体包括:若根据所述任一持续 集成任务的构建日志确定所述任一持续集成任务的所有持续集成阶段均构 建成功,则确定所述任一持续集成任务集成成功,否则,确定所述任一持 续集成任务集成失败。
在上述技术方案中,优选地,确定所述任一持续集成任务的任一持续 集成阶段是否构建成功的步骤具体包括:判断所述任一集成任务的构建日 志中是否包含所述任一持续集成阶段的标识信息和用于标识所述任一持续 集成阶段开始构建和结束构建的日志信息,若是,则确定所述任一持续集 成阶段构建成功,否则,确定所述任一持续集成阶段构建失败。
在上述技术方案中,优选地,还包括:存储所述每个持续集成任务的 集成状态;根据存储的所述每个持续集成任务的集成状态生成持续集成状 态的监控报告。
在该技术方案中,通过生成持续集成状态的监控报告,可以便于开发 人员对产品的持续集成状态的分析,以提高产品开发的效率。
图2示出了根据本发明的实施例的监控持续集成状态的装置的示意框 图。
如图2所示,根据本发明的实施例的监控持续集成状态的装置200, 包括:划分单元202,用于将待开发产品划分为多个开发模块;确定单元 204,用于确定所述多个开发模块中的每个开发模块对应的持续集成任 务;配置单元206,用于配置对所述持续集成任务进行构建的脚本,以规 范所述持续集成任务的构建日志;监测单元208,用于在对所述每个开发 模块对应的持续集成任务进行构建时,监测所述每个开发模块的每个持续 集成任务的构建日志;处理单元210,用于根据所述每个持续集成任务的 构建日志确定所述每个持续集成任务的集成状态。
在该技术方案中,通过规范持续集成任务的构建日志,以在对每个开 发模块对应的持续集成任务进行构建时,通过监测每个开发模块的每个持 续集成任务的构建日志确定每个持续集成任务的集成状态,使得能够有 效、准确地实现对每个开发模块的每个持续集成任务的集成状态的监控, 进而能够实现对每个开发模块的持续集成状态的监控,降低了对产品开发 过程中的持续集成状态的监控难度,从而提高了产品开发的效率。
在上述技术方案中,优选地,所述配置单元206具体用于:配置所述 持续集成任务的每个持续集成阶段在所述构建日志中的标识信息,以及用 于标识所述每个持续集成阶段开始构建和结束构建的日志信息。
在该技术方案中,通过配置每个持续集成阶段在构建日志中的标识信 息,使得能够在构建日志中能够准确地确定每个持续集成阶段的构建信 息,进而能够根据每个持续集成阶段的构建信息确定每个持续集成阶段的 集成状态。
在上述技术方案中,优选地,所述处理单元210具体用于:若根据所 述任一持续集成任务的构建日志确定所述任一持续集成任务的所有持续集 成阶段均构建成功,则确定所述任一持续集成任务集成成功,否则,确定 所述任一持续集成任务集成失败。
在上述技术方案中,优选地,所述处理单元210具体还用于:判断所 述任一集成任务的构建日志中是否包含任一所述持续集成阶段的标识信息 和用于标识任一所述持续集成阶段开始构建和结束构建的日志信息,若 是,则确定任一所述持续集成阶段构建成功,否则,确定任一所述持续集 成阶段构建失败。
在上述技术方案中,优选地,还包括:存储单元212,用于存储所述 每个持续集成任务的集成状态;生成单元214,用于根据所述存储单元 212存储的所述每个持续集成任务的集成状态生成持续集成状态的监控报 告。
在该技术方案中,通过生成持续集成状态的监控报告,可以便于开发 人员对产品的持续集成状态的分析,以提高产品开发的效率。
以下结合图3至图6详细说明本发明的技术方案。
本发明主要提出了一种用于监控持续集成状态的方法和系统,主要包 括:标准任务、规范脚本、监控算法、监控报告。
具体地,监控持续集成状态的工作流程如图3所示,主要是基于规范 的集成构建脚本,分析每个集成任务构建日志,采集每个集成阶段的状态 信息,按照既定监控算法计算出集成任务的状态,把分析结果存储到数据 库中,然后汇总整理集成状态报告并以邮件形式发送,以达到准确地监控 持续集成状态的目的。
以下针对标准任务、规范脚本、监控算法、监控报告四部分分别进行 说明。
1)标准任务
通常一个产品会有几个甚至十几个开发模块组成,而每个开发模块对 应两个持续集成任务(集成构造、集成测试),每个产品都有独立的做盘 与部署任务,如图4所示。
2)规范脚本
构建ANT(一种基于Java的build工具)脚本,具有统一规范的结 构,每一部分都具有标准的target(目标)以及构建输出信息,其中, target包括代码同步(code_syn)、代码编译(code_compile)、构造打包 (dopackage)、注入编译(inject_compile)、测试编译(test_compile)、测试执 行(runtest)…..具体脚本如下所示:


3)监控算法
以下以某一开发模块的持续集成构造任务举例说明,计算持续集成构 造任务中持续集成阶段---代码编译(code_compile)监控规则如表1所示:

表1
具体地,若在持续集成日志输出信息中能够获取到开始编译和结束编 译的信息,则确定编译成功;若仅获取到开始编译的信息,则确定编译失 败;若开始编译和结束编译的信息都没有获取到,则确定跳过了编译过 程。
按照上述同样的监控规则,通过分析持续集成构造任务的日志,也可 以计算出其他持续集成阶段的状态(代码同步、构造打包);持续集成构 造任务每一个阶段的状态都有了,那就可以进一步计算出持续成构造任务 的状态,具体计算规则如表2所示:
集成构造任务 代码同步 代码编译 构造打包 成功 成功 成功 成功 失败 成功 成功 失败 失败 失败 失败 失败 失败 成功 失败 跳过 失败 失败 跳过 跳过 未执行 跳过 跳过 跳过
表2
具体地,即若集成构造任务的所有持续集成阶段均构建成功,则确定 集成构造任务构建成功;若集成构造任务的任一持续集成阶段构建失败, 则确定集成构造任务构建失败;若集成构造任务的所有持续集成阶段均跳 过构建,则确定集成构造任务未执行构建过程。
同样的道理,使用类似的监控算法,通过分析持续集成的日志,可以 计算出其他类型持续集成任务的状态。
另外,监控算法可以通过文件来配置不同的监控规则与计算规则,具 有良好的扩展性,配置文件如图5所示。
4)监控报告
在准确地监控持续集成状态的同时,会实时地把分析结果存储到数据 库中,用于支持续集成监控报告的发送及查询使用,使持续集成过程增加 了透明性,监控报告如图6所示。
本发明提出了一种用于监控持续集成状态的方法和系统,具有以下技 术效果:
首先,基于集成构建脚本,其规范性可以自定义,具有一定的灵活 性;
其次,监控算法可以通过文件配置不同的监控规则与计算规则,具有 良好的扩展性;
此外,通过分析构建日志来监控持续集成状态来实时反馈持续集成状 态,使持续集成过程增加了透明性。
以上结合附图详细说明了本发明的技术方案,本发明提出了一种新的 监控持续集成状态的方案,能够有效、准确地实现对每个开发模块的每个 持续集成任务的集成状态的监控,进而能够实现对每个开发模块的持续集 成状态的监控,降低了对产品开发过程中的持续集成状态的监控难度,从 而提高了产品开发的效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于 本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精 神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明 的保护范围之内。

监控持续集成状态的方法及装置.pdf_第1页
第1页 / 共13页
监控持续集成状态的方法及装置.pdf_第2页
第2页 / 共13页
监控持续集成状态的方法及装置.pdf_第3页
第3页 / 共13页
点击查看更多>>
资源描述

《监控持续集成状态的方法及装置.pdf》由会员分享,可在线阅读,更多相关《监控持续集成状态的方法及装置.pdf(13页珍藏版)》请在专利查询网上搜索。

本发明提供了一种监控持续集成状态的方法及装置,其中,监控持续集成状态的方法包括:将待开发产品划分为多个开发模块,确定多个开发模块中的每个开发模块对应的持续集成任务;配置对持续集成任务进行构建的脚本,以规范持续集成任务的构建日志;在对每个开发模块对应的持续集成任务进行构建时,监测每个开发模块的每个持续集成任务的构建日志;根据所述每个持续集成任务的构建日志确定所述每个持续集成任务的集成状态。本发明的技。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1