CN109032582A - 一种生成服务器运维脚本的方法及装置 - Google Patents
一种生成服务器运维脚本的方法及装置 Download PDFInfo
- Publication number
- CN109032582A CN109032582A CN201810799218.6A CN201810799218A CN109032582A CN 109032582 A CN109032582 A CN 109032582A CN 201810799218 A CN201810799218 A CN 201810799218A CN 109032582 A CN109032582 A CN 109032582A
- Authority
- CN
- China
- Prior art keywords
- script
- module
- code
- code snippet
- instruction
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种生成服务器运维脚本的方法,包括:接收脚本生成指令;从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;将所选取的代码片段模块按照预定规则生成脚本。本发明还公开一种生成服务器运维脚本的装置。本方案可以用于服务器运维过程中的脚本快速生成,提高运维过程中脚本生成的效率、准确性和规范性。
Description
技术领域
本发明实施例涉及通信技术,尤指一种生成服务器运维脚本的方法及装置。
背景技术
在服务器运维过程中,需要生成大量的脚本,目前一般都是通过运维人员手工书写。单纯通过手动书写耗费大量时间,工作效率较低,且代码准确性和规范性无法保证。
发明内容
为了解决上述技术问题,本发明提供了一种生成服务器运维脚本的方法,包括:
接收脚本生成指令;
从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;
将所选取的代码片段模块按照预定规则生成脚本。
进一步地,所述代码模块库中包括预先进行模块化封装的多个代码片段模块。
进一步地,所述代码片段模块包括:协议代码片段模块和预定方法代码片段模块。
进一步地,所述将所选取的代码片段模块按照指定规则生成脚本后,还包括:
对所述脚本进行调试。
一种生成服务器运维脚本的装置,包括:
接收模块,用于接收脚本生成指令;
选取模块,用于从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;
生成模块,用于将所选取的代码片段模块按照预定规则生成脚本。
进一步地,所述代码模块库中包括预先进行模块化封装的多个代码片段模块。
进一步地,所述代码片段模块包括:协议代码片段模块和预定方法代码片段模块。
进一步地,所述装置还包括:
调试模块,用于对所述脚本进行调试。
一种生成服务器运维脚本的装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现如上述的方法。
本实施例的方案可以用于服务器运维过程中的脚本快速生成,提高运维过程中脚本生成的效率、准确性和规范性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例的一种生成服务器运维脚本的方法的流程图;
图2为本发明一实施例的一种生成服务器运维脚本的装置的示意图;
图3为本发明另一实施例的一种生成服务器运维脚本的装置的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明实施例的一种生成服务器运维脚本的方法的流程图,如图1所示,本实施例的方法包括:
步骤101、接收脚本生成指令;
运维人员可以通过用户界面输入或选择所要生成脚本的代码片段模块,用户界面生成脚本生成指令。
步骤102、从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;
在服务器中运维脚本中存在大量复用代码,且部分协议代码和通用方法代码内容和结构固定,这为服务器运维脚本的模块化处理提供了可能。
本实施例中,需预先构建代码模块库,所述代码模块库中包括预先进行模块化封装的多个代码片段模块。
所述代码片段模块包括:协议代码片段模块和预定方法代码片段模块。
代码模块库一般包括部分协议和通用方法的代码片段,同时运维人员也可以将一些常用的代码片段导入代码模块库中。
这里的协议是指在监控脚本中所使用到监控或传输协议等,例如IPMI(Intelligent Platform Management Interface,智能平台管理接口)协议、SNMP(SimpleNetwork Management Protocol,简单网络管理协议)协议等。
协议代码片段是指对使用的协议中的参数进行定义的代码片段。通用方法的代码片段是完成某种功能的独立的代码片段,例如一段代码的功能是检测CPU的使用情况,就可以被定义为一种检测CPU使用情况的通用方法。
本实施例中,代码模块库中代码片段的引入规则可以如下:
1、代码固定:代码片段在使用过程中的改变较小,包括内容固定或结构固定;
2、代码使用量大:代码片段使用次数较多,经常被使用。
对于那些常用的,不用修改的代码或修改少的代码片段可以直接从代码模块库中调取,不需要人工重复书写,节约时间。
步骤103、将所选取的代码片段模块按照预定规则生成脚本。
本实施例,可以定制脚本生成规则用于脚本的生成,运维人员选择相应的参数即可正确组合生成合理的脚本。
脚本生成规则指的是脚本语言的语法规则和模块的组合规则,脚本语言的语法规则用于保证脚本不会出现语法错误,模块的组合规则用于保证脚本不会出现逻辑上的错误,脚本语言的语法规则包括例如各种变量定义、函数定义、格式要求等等(具体的规则可以依据具体的脚本所使用的语言来进行定义),模块的组合规则例如模块组合的先后顺序、嵌套结构等等。
本实施例的方法可以根据运维人员选择的协议参数和方法调用相应的代码片段模块,自动生成脚本。
进一步地,包括步骤104,对脚本进行调试。
本实施例中,生成的脚本可以在远程服务器上进行调试,保证脚本的准确性。
本实施例的方法可以用于服务器运维过程中的脚本快速生成,提高运维过程中脚本生成的效率、准确性和规范性。
图2为本发明实施例的一种生成服务器运维脚本的装置的示意图,如图2所示,本实施例的装置200可以包括:
接收模块201,用于接收脚本生成指令;
本实施例中的接收模块201可以是。
选取模块202,用于从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;
生成模块203,用于将所选取的代码片段模块按照指定规则生成脚本。
本实施例的装置200可以根据运维人员选择的协议参数和方法调用相应的代码片段模块,自动生成脚本。
在服务器中运维脚本中存在大量复用代码,且部分协议代码和通用方法代码内容和结构固定,这为服务器运维脚本的模块化处理提供了可能。
在一实施例中,所述代码模块库中包括预先进行模块化封装的多个代码片段模块。
所述代码片段模块包括:协议代码片段模块和预定方法代码片段模块。
本实施例中,代码模块库一般为部分协议和通用方法的代码片段,同时运维人员也可以将一些常用的代码片段导入代码模块库中。对于那些常用的,不用修改的代码或修改少的代码片段可以直接从代码模块库中调取,不需要人工重复书写,节约时间。
在一实施例中,如图3所示,所述装置200可以包括:脚本生成模块和脚本调试模块。脚本生成模块可以包括用户界面(相当于上述的接收模块201)和脚本构建规则。运维人员可以通过用户界面输入或选择所要生成脚本的代码片段模块的参数,用户界面生成脚本生成指令向代码模块库请求获取指定的一个或多个代码片段模块。
代码模块库包括代码1至代码n。脚本生成模块从代码模块库获取代码a、代码b、代码c,通过脚本构建规则生成脚本。
脚本调试模块,用于对所述脚本进行调试,以保证脚本的准确性。
本实施例的装置可以用于服务器运维过程中的脚本快速生成,提高运维过程中脚本生成的效率、准确性和规范性。
本发明实施例还提供一种生成服务器运维脚本的装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,其中,当所述指令被所述处理器执行时,实现上述一种生成服务器运维脚本的方法。
本发明实施例还提供了一种计算机可读存储介质,其存储有计算机可执行指令,所述计算机可执行指令被执行时实现所述生成服务器运维脚本的方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、***、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (9)
1.一种生成服务器运维脚本的方法,其特征在于,包括:
接收脚本生成指令;
从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;
将所选取的代码片段模块按照预定规则生成脚本。
2.根据权利要求1所述的方法,其特征在于,
所述代码模块库中包括预先进行模块化封装的多个代码片段模块。
3.根据权利要求1所述的方法,其特征在于,
所述代码片段模块包括:协议代码片段模块和预定方法代码片段模块。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述将所选取的代码片段模块按照指定规则生成脚本后,还包括:
对所述脚本进行调试。
5.一种生成服务器运维脚本的装置,其特征在于,包括:
接收模块,用于接收脚本生成指令;
选取模块,用于从代码模块库中选取所述脚本生成指令指定的一个或多个代码片段模块;
生成模块,用于将所选取的代码片段模块按照预定规则生成脚本。
6.根据权利要求5所述的装置,其特征在于,
所述代码模块库中包括预先进行模块化封装的多个代码片段模块。
7.根据权利要求5所述的装置,其特征在于,
所述代码片段模块包括:协议代码片段模块和预定方法代码片段模块。
8.根据权利要求5-7任一项所述的装置,其特征在于,所述装置还包括:
调试模块,用于对所述脚本进行调试。
9.一种生成服务器运维脚本的装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令被所述处理器执行时,实现如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810799218.6A CN109032582A (zh) | 2018-07-19 | 2018-07-19 | 一种生成服务器运维脚本的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810799218.6A CN109032582A (zh) | 2018-07-19 | 2018-07-19 | 一种生成服务器运维脚本的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109032582A true CN109032582A (zh) | 2018-12-18 |
Family
ID=64644543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810799218.6A Pending CN109032582A (zh) | 2018-07-19 | 2018-07-19 | 一种生成服务器运维脚本的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109032582A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710231A (zh) * | 2018-12-21 | 2019-05-03 | 成都四方伟业软件股份有限公司 | 一种可视化脚本编辑方法与装置 |
CN110098963A (zh) * | 2019-04-25 | 2019-08-06 | 广州小鹏汽车科技有限公司 | 一种服务器运维管控方法及*** |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154227A (zh) * | 2006-09-26 | 2008-04-02 | 中兴通讯股份有限公司 | 一种基于asn类型对象的代码生成方法 |
CN105068929A (zh) * | 2015-08-06 | 2015-11-18 | 网易(杭州)网络有限公司 | 测试脚本生成方法和装置、测试方法、测试装置以及测试*** |
CN105653322A (zh) * | 2015-12-25 | 2016-06-08 | 上海帝联信息科技股份有限公司 | 运维服务器和服务器事件的处理方法 |
CN105743680A (zh) * | 2014-12-11 | 2016-07-06 | 深圳云之家网络有限公司 | 一种集群部署方法及部署设备 |
CN105959177A (zh) * | 2016-04-26 | 2016-09-21 | 网易(杭州)网络有限公司 | 一种游戏服务器压力测试脚本的生成方法和装置 |
CN107688593A (zh) * | 2017-04-13 | 2018-02-13 | 平安科技(深圳)有限公司 | 脚本文件生成方法和装置 |
CN107729003A (zh) * | 2017-11-20 | 2018-02-23 | 江苏神州信源***工程有限公司 | 代码的自动生成方法、装置及电子设备 |
-
2018
- 2018-07-19 CN CN201810799218.6A patent/CN109032582A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154227A (zh) * | 2006-09-26 | 2008-04-02 | 中兴通讯股份有限公司 | 一种基于asn类型对象的代码生成方法 |
CN105743680A (zh) * | 2014-12-11 | 2016-07-06 | 深圳云之家网络有限公司 | 一种集群部署方法及部署设备 |
CN105068929A (zh) * | 2015-08-06 | 2015-11-18 | 网易(杭州)网络有限公司 | 测试脚本生成方法和装置、测试方法、测试装置以及测试*** |
CN105653322A (zh) * | 2015-12-25 | 2016-06-08 | 上海帝联信息科技股份有限公司 | 运维服务器和服务器事件的处理方法 |
CN105959177A (zh) * | 2016-04-26 | 2016-09-21 | 网易(杭州)网络有限公司 | 一种游戏服务器压力测试脚本的生成方法和装置 |
CN107688593A (zh) * | 2017-04-13 | 2018-02-13 | 平安科技(深圳)有限公司 | 脚本文件生成方法和装置 |
CN107729003A (zh) * | 2017-11-20 | 2018-02-23 | 江苏神州信源***工程有限公司 | 代码的自动生成方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710231A (zh) * | 2018-12-21 | 2019-05-03 | 成都四方伟业软件股份有限公司 | 一种可视化脚本编辑方法与装置 |
CN110098963A (zh) * | 2019-04-25 | 2019-08-06 | 广州小鹏汽车科技有限公司 | 一种服务器运维管控方法及*** |
CN110098963B (zh) * | 2019-04-25 | 2022-05-13 | 广州小鹏汽车科技有限公司 | 一种服务器运维管控方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10740114B2 (en) | Component invoking method and apparatus, and component data processing method and apparatus | |
CN109086199B (zh) | 一种自动化生成测试脚本的方法、终端和可存储介质 | |
WO2019000630A1 (zh) | 多任务调度方法、***、应用服务器及计算机可读存储介质 | |
CN104821954A (zh) | 一种跨平台远程过程调用方法 | |
CN110221824B (zh) | 组件的生成方法和装置 | |
US20200210829A1 (en) | Network off-line model processing method, artificial intelligence processing device and related products | |
CN106713011B (zh) | 一种获取测试数据的方法与*** | |
CN109995643A (zh) | 业务邮件推送方法及装置 | |
EP3435227A1 (en) | Language recognition method, device, and system | |
CN111208995A (zh) | Ibm主机作业的自动生成方法、***、装置及存储介质 | |
CN110442376A (zh) | 一种实现软件打包的方法及装置 | |
WO2023069014A2 (en) | Method and apparatus for executing tasks in heterogeneous system, computer device, and storage medium | |
CN109032582A (zh) | 一种生成服务器运维脚本的方法及装置 | |
CN112988583A (zh) | 数据库语法兼容性测试的方法和装置 | |
CN111857709A (zh) | React组件和Flutter组件的映射方法、装置、电子设备及存储介质 | |
CN108595178B (zh) | 一种基于hook的数据采集方法、装置及设备 | |
CN110716804A (zh) | 无用资源的自动删除方法、装置、存储介质及电子设备 | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
WO2016165461A1 (zh) | 一种电信网网管***软件自动化测试方法和装置 | |
CN113783860A (zh) | 一种基于可视化配置的报文处理方法、装置及设备 | |
CN112817883A (zh) | 接口平台的适配方法、设备、***及计算机可读存储介质 | |
CN112269588A (zh) | 算法的升级方法、装置、终端和计算机可读存储介质 | |
CN109408104B (zh) | 一种获取游戏整合信息的方法及装置 | |
CN111200654A (zh) | 客户端请求错误处理方法及装置 | |
CN114466047B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181218 |