基于物联网智慧城市云平台研发与实施工程操作手册.docx
基于物联网智慧城市云平台研发与实施工程操作手册编制:审核:审批:20xx年XX月XXX信息技术股份有限公司目录第一部分:测试报告3第二部分:概要设计说明书61 .引言12 .任务说明23 .总体设计34 .系统程序结构设计55 .系统外部接口要求66.模块数据库设计6第三部分:维护手册8引言10维护手册11第四部分:详细设计说明书15引言17综合描述19系统详细设计27HttPCliemUtiI类49待定问题列表54第五部分:安装部署手册55引言1操作系统3Oracle数据库5脚本说明5分别配置每个日志文件的大小和日志文件的存在的数量,可自定义配置9附录10第一部分:测试报告1引言1.1 编写目的依据集团总部XXX项目背景,根据公有云项目建设目标,参考XXX集团智慧城市需求说明书、思特奇全行业监控管理插件版V3.0.0系统使用手册、网关插件版使用方案、集团智慧城市概要设计说明书、总部集团客户部(集团)集团XXXVLO需求跟踪矩阵组织软件开发与测试,特编写详细设计文档,供开发人员、工程人员、项目管理人员和其他人员参考1.2 项目背景中国集团以“智慧城市”发展为契机,通过打造智慧城市云平台,发挥基础资源优势,以行业应用切入,整合产业资源,打造共赢模式,“智”于管理,“慧”及民生,促进应用创新及可持续发展,帮助政府落实规划。智慧城市云平台的建设在新的形势下对中国集团的发展具有以下重要意义:(1)以行业应用产品引领市场转型,提升核心竞争力,推动可持续经营。抓住城市信息化机遇,依托行业应用,有效发挥基础资源及3G技术优势,拉动移动、宽带、IDC,ICT等业务的持续快速发展。(2)加强政府合作,有效激活产业资源,奠定产业链主导地位。在“政府主导、企业推进、行业并举”的模式下,将有助于构建完善的上下游产业链,形成协同效应,避免成为纯管道化经营。(3)整合城市信息资源,提高政府服务,提高产业效率,改善民生。利用信息化资源优势,帮助政府解决在城市发展过程遇到的问题,形成“智慧城市”战略服务政府,提振产业,创新行业应用,惠及民生的氛围,提升我国智慧城市的创新研究和发展水平。2参考资料xxx集团智慧城市需求说明书思特奇全行业监控管理插件版V3.0.0系统使用手册网关插件版使用方案XXX集团智慧城市概要设计说明书总部集团客户部(集团)集团XXXVI.0需求跟踪矩阵3测试方法本测试覆盖我司开发的所有功能,测试方法主要是手动测试,联合其他服务和接口提供方进行测试。4测试内容和结果项目测试功能点为以下内容,测试结果全部通过。功能点测试结果说明单个数据库开通服务(响应DBaaS服务调用)单个数据库开通单个数据库暂停服务(响应DBaaS服务调用)单个数据库暂停单个数据库恢复服务(响应DBaaS服务调用)单个数据库恢复单个数据库注销服务(响应DBaaS服务调用)单个数据库注销多个数据库开通服务(响应DBaaS服务调用)多个数据库开通多个数据库暂停服务(响应DBaaS服务调用)多个数据库暂停多个数据库恢复服务(响应DBaaS服务调用)多个数据库恢复多个数据库注销服务(响应DBaaS服务调用)多个数据库注销创建用户(响应DBaaS服务调用)在个指定的数据库中新增一个用户修改用户(响应DBaaS服务调用)在一个指定的数据库中修改一个用户的密码删除用户(响应DBaaS服务调用)在一个指定的数据库中删除一个用户锁定用户(响应DBaaS服务调用)在一个指定的数据库中锁定一个用户解锁用户(响应DBaaS服务调用)在一个指定的数据库中解锁一个用户创建表空间(响应DBaaS服务调用)在一个指定的数据库中新增一个用户表空间修改表空间(响应DBaaS服务调用)在一个指定的数据库中新增一个用户表空间删除表空间(响应DBaaS服务调用)在一个指定的数据库中删除一个用户表空间服务查看(晌应DBaaS服务调用)展示数据库的运行状态服务数据备份(响应DBaaS服务调用)使用exp逻辑导出备份一个指定数据库监控、计量、告警指标数据服务接口提供不同粒度的各项监控指标、计量指标、告警信息的日志的规范化输出接口,实现与智慧城市监控、计量模块集成监控、计量、告警指标数据格式匹配与集成接口实现其它智慧城市需要的各项监控指标、计量指标输出格式,配合实现智慧城市监控、计量功能模块第二部分:概要设计说明书目录1. 引言11.1. 编写目的11.2. 参考资料12. 任务说明22.1. 需求规定22.2. 运行环境23. 总体设计33.1. 概念33.2. 结构34. 4线程序饴程设计54.1. 功能与程序的关系54.2. 程序总体设计55. 系统外部接口要求65.1. 获取实例模块(外部模块,存在交互关系)65.2. 获取规则模块(外部模块,存在交互关系)65.3. 告警推送模块(外部模块,存在交互关系)66. 模瞬据库设计67. 1.ER图68. 2.说明71.引言.编写目的依据集团总部XXX项目背景,根据公有云项目建设目标,参考XXX集团智慧城市需求说明书、思特奇全行业监控管理插件版V3.0.0系统使用手册、网关插件版使用方案、XXX集团智慧城市概要设计说明书、总部集团客户部(集团)集团XXXVl.0需求跟踪矩阵组织软件开发与测试,特编写详细设计文档,供开发人员、工程人员、项目管理人员和其他人员参考。1.2. 参考资料XXX集团智慧城市需求说明书思特奇全行业监控管理插件版V3.0.0系统使用手册网关插件版使用方案集团智慧城市概要设计说明书总部集团客户部(集团)集团XXXVl.0需求跟踪矩阵2 .任务说明2.1. 需求规定本模块的功能是为门户提供oracle数据库的监控计量文件以及对数据库运行时非正常状态的告警,告警规则由门户下发给接口,由本模块定时从接口获取最新的告警规则并生成告警规则文件,依据此文件判断数据库运行时是否触发告警。对于数据库实例的监控和计量,则做到动态热监控,即无需更改任何配置及程序即可对新创建的实例进行自主监控和计量。2.2. 运行环境(1)硬件要求a. IntelP42.8GHz以上主频CPUb. IG以上内存c. IOG以上空余存储空间d. IOoM以太网接口(推荐100OM)(2)软件要求a.数据库:OraclelOgb.服务端脚本:无c.客户端脚本:无3 .总体设计3.1. 概念OraCIe实例:实例是由访问数据库的一组进程和内存组成。而数据库则是一系列储存数据的文件。一个数据库可以被一个实例或者多个实例打开(RAC)0访问数据库的时候,连上的是一个实例,通过实例访问到数据库中的数据。OraCle租户:其实就是用户的概念,只是这个用户的权限比较大,类似于systemdba,一个oracle实例对应一个租户,租户可以向下级发展多个用户,这些用户同属于该租户,可以多个用户共享一个表空间,也可以一个用户对应一个表空间OraCIe存储:就是。racle数据库实例文件系统所占用的磁盘大小,可以理解为表空间的大小(总和)接口:接口是指一组WebService服务,通过接口接收请求并作相应内部处理后向外提供服务,需要请求方与接口之间的网络畅通并有对应的文件解析格式自动化监控:监控是对。acle实例运行时的性能和健康状态进行侦测,以帮助相关人员对oracle数据库有个整体的把握和了解,帮助提高数据库运行效率,保证数据库健康运行。自动化监控指的是能够智能地、主动地对数据库进行监控,无需启停程序,能够做到对新数据库实例的监控和对己销毁的数据库的停止监控。但必须保证监控端与数据库实例端的网络畅通。OraCle计量:是指对OraCle运行时所占用内存大小、分配内存大小、实例启停时间、存活时间、占用存储大小、分配存储大小、网络IO等进行统计,以帮助企业计费。32结构4 .系统程序结构设计4.1. 功能与程序的关系从用户使用角度看,分为3类功能:1、监控功能:监控数据库是否健康运行2、计量功能:计量数据库使用情况3、告警功能:判断数据库是否不符合预期或者非正常4.2. 程序总体设计4.2.1.1, 监控功能当程序运行时,程序会请求接口获取需要监控的实例对象,并生成内部自定义格式将这些实例对象各项参数以文件形式保存于本地,一段时间以内依据此文件对文件中的实例进行监控,并将监控结果以约定好的格式写入共享存储上的文件中,门户会隔一段时间便来取走这些文件中的数据,间隔一段时间后再次请求接口获取实例对象生成新的文件4.2.1.2, 计量功能当程序运行时,程序会请求接口获取需要计量的实例对象,并生成内部自定义格式将这些实例对象各项参数以文件形式保存于本地,一段时间以内依据此文件对文件中的实例进行计量,并将计量结果以约定好的格式写入共享存储上的文件中,门户会隔一段时间便来取走这些文件中的数据。在间隔一段时间之后,会再次请求接口获取最新的需要计量的实例4.2.13.告警功能当程序运行时,程序会请求接口获取告警的规则,并生成内部自定义格式将这些规则以及阀值以文件形式保存于本地,一段时间以内依据此文件对文件中的告警规则进行告警作业,如果监控数据满足告警规则,便依据之前约定好的格式组拼告警内容,并将这些告警消息推送给接口,接口将告警数据统一推送给门户。在间隔一段时间之后,会再次请求接口获取最新的告警规则5 .系统外部接口要求5.1. 获取实例模块(外部模块,存在交互关系)要求与接口之间网络畅通,接口正常对外提供服务,提供的数据符合约定的规范5.2. 获取规则模块(外部模块,存在交互关系)要求与接口之间网络畅通,接口正常对外提供服务,提供的数据符合约定的规范5.3. 告警推送模块(外部模块,存在交互关系)要求接口正常服务,能够接收并且解析推送的告警信息6 .模块数据库设计6.1. ER图整个监控计量模块的数据库ER图如下图所示。门户图1数据库ER图6.2. 说明门户:与用户交互的门面部分,信息都通过这里反馈给用户或者管理员接口:第三方消息中间件部分,即一个关联门户和后台监控部分的中间者共享存储:接口、后台、门户都能访问的存储块,能够信息共享数据库实例:oracle数据库实例,一个数据库有多个实例,一个实例有多个表空间第三部分:维护手册1引言101.1 编写目的101.2 目102维护手册112.1 系统故障的预防112.1.1故障的预防112.1.2故障发生后的处理112.13jE.11<P章.112.1.4数据库故障122.2日常例行检查122.2.1数据库表空间122.2.2数据库log-err日志122.2.3主机SYSLoG日志122.2.4主机文件系统132.2.5主机资源消耗情况132.2.6数据库备*132.2.7文件数据带库备份132.3常用命令、脚本说明13引言编写目的为集团总部XXX项目数据库及服务中Oraele自动化管理脚本维护手册,此文档为项目中oracle数据库自动化管理中涉及相关参与人员,开发人员、oracle安装厂家、脚本实施人员。项目背景中国集团以“智慧城市”发展为契机,通过打造智慧城市云平台,发挥基础资源优势,以行业应用切入,整合产业资源,打造共赢模式,“智”于管理,“慧”及民生,促进应用创新及可持续发展,帮助政府落实规划。智慧城市云平台的建设在新的形势下对中国集团的发展具有以下重要意义:(1)以行业应用产品引领市场转型,提升核心竞争力,推动可持续经营。抓住城市信息化机遇,依托行业应用,有效发挥基础资源及3G技术优势,拉动移动、宽带、IDC、IeT等业务的持续快速发展。(2)加强政府合作,有效激活产业资源,奠定产业链主导地位。在“政府主导、企业推进、行业并举”的模式下,将有助于构建完善的上下游产业链,形成协同效应,避免成为纯管道化经营。(3)整合城市信息资源,提高政府服务,提高产业效率,改善民生。利用信息化资源优势,帮助政府解决在城市发展过程遇到的问题,形成“智慧城市”战略服务政府,提振产业,创新行业应用,惠及民生的氛围,提升我国智慧城市的创新研究和发展水平。维护手册系统故障的预防故障的预防 每日例行检查,及时发现性能瓶颈、故障隐患 了解各业务主要的环节、流程,及相关的主机、数据库、程序 对易发环节、易发时间(如出帐、月初交费、报表打印)重点关注 充分利用网管预警机制,尽早发现问题故障发生后的处理 向相关人员及时、完整的了解问题现象,了解该业务故障相关环节,判断影响范围和重要程度 向项目负责、上级主管报告问题,判断是否需要停止、重启该项业务(程序) 配合该业务相关人员,停止、重启或调整该项业务,保证系统大部分业务正常运行 及时登陆出现问题的主机或数据库,备份相关的日志(数据库日志、主机日志、服务日志、WEB日志) 参与或负责问题的分析、解决,参与或负责问题处理报告的撰写主机故障 及时通知局方主机管理员,根据问题程度判断是否联系HP工程师 记录主机CPU/IO/内存/进程数/等信息 检查SYSLoG文件,判断有无硬件故障 综合业务需求、实际运行情况,判断是否主机内核参数不足或者不匹配 若需要切换双机,切换前后通知项目负责、相关业务人员 若需要临时在其他主机搭建运行环境,及时与项目负责、相关业务人员沟通数据库故障 及时通知数据库管理员,根据问题程度判断是否联系mysqld工程师 记录数据库'等待事件'、'资源锁'、及时生成报告并分析,找出引发异常的SQL语句和程序,处理(KILL异常连接)前通知相关人员 检查log-err日志中的err错误及相应的log-bin文件,通过官方文档查找对应解决办法 若需要停止、重启实例,操作前后通知项目负责、局方、相关业务人员 指出问题SQL语句,配合优化 若开关机数据库重启或者网络中断,及时检查开关机快照状态,恢复刷新日常例行检查数据库表空间对象:各数据库表空间任务:通知相关人员,处理、分析表空间异常增长情况,在得到允许的情况下扩表空间,方式:定期查看mysql数据库表空间及mysqllog日志查看数据库表空间潜在的问题。数据库log-err日志对象:各数据库log-err日志任务:简单分析、报告(向公司、局方)异常情况方式:主要通过log-err日志文件中错误信息排查mysql出现的问题主机SYSLOG日志对象:各主机SYSLoG日志任务:简单分析,报告异常情况方式:主要通过SySIOg日志文件中系统错误信息排查问题主机文件系统对象:各主机文件系统,任务:检查有无异常文件(如CORE、大量日志写入),简单处理并通知相关人员,方式:主要通过网管系统监控,对可以主机登陆观察主机资源消耗情况对象:各主机CPU/I0/内存使用情况任务:掌握系统运行曲线与业务活动的关系,分析异常现象方式:主要通过网管系统监控,对可以主机登陆观察数据库备份对象:各数据库dump备份任务:保证数据库成功备份,防止备份空间不足,处理、报告异常情况方式:使用脚本或逐个检查文件数据带库备份对象:云管理平台以及各数据库dump文件的备份任务:熟悉带库的操作和维护,及时调整备份空间,处理、报告异常情况方式:使用脚本或逐个检查常用命令、脚本说明查看系统信息uname-a-看系统内核等信息catproccpuinfo-CPU信息catprocmeminfo-内存信息catprocversion-Linux的版本号相当于uname-rIsofabc.txt显示开启文件abc.txt的进程Isof-i:22知道22端口现在运行什么程序ifconfig查看本机IP登录mysql服务器mysql-uusername-ppassword-hhostname-prot3306从mysql中导出和导入数据导出数据库mysqldump数据库名>文件名导入数据库mysqladmincreate数据库名mysql数据库名<文件名第四部分:详细设计说明书1引言171.1 编写目的171.2 术语定义171.3 参考资料182综合描述191.4 1系统目标192.2 系统概述212.3 3运行环境212.4 程序结构说明232.5 源程序及编译链接组装说明253系统详细设计253«1系统结构描述273.2 模块名称1271 .2.1界面结构或菜单结构错误!未定义书签。3 .2.2界面原型错误!未定义书签。3.2.3界面项目列表错误!未定义书签。3.2.4页面事件列表错误!未定义书签。3.2 .5提交事件错误!未定义书签。3.3 模块名称2(不带界面)错误!未定义书签。3.3.1逻辑描述273.3.2任务类273.3.3数据访问层293.3.4类图313.3.5时序图544待定问题列表54引言编写目的依据集团总部XXX项目背景,根据公有云项目建设目标,参考XXX集团智慧城市需求说明书、思特奇全行业监控管理插件版V3.0.0系统使用手册、网关插件版使用方案、XXX集团智慧城市概要设计说明书、总部集团客户部(集团)集团XXXVLo需求跟踪矩阵组织软件开发与测试,特编写详细设计文档,供开发人员、工程人员、项目管理人员和其他人员参考。术语定义术语/定义解释公有云企业通过自己的基础设施直接向外部用户提供服务。外部用户通过互联网访问服务,并不拥有云计算资源。公有云能够以低廉的价格,提供有吸引力的服务给最终用户,创造新的业务价值,公有云作为一个支撑平台,还能够整合上游的服务(如增值业务,广告)提供者和下游最终用户,打造新的价值链和生态系统。Oracle实例实例是由访问数据库的一组进程和内存组成。而数据库则是一系列储存数据的文件。一个数据库可以被一个实例或者多个实例打开(RAC)。访问数据库的时候,连上的是一个实例,通过实例访问到数据库中的数据。Oracle租户其实就是用户的概念,只是这个用户的权限比较大,类似于systemdba,一个oracle实例对应一个租户,租户可以向下级发展多个用户,这些用户同属于该租户,可以多个用户共享一个表空间,也可以一个用户对应一个表空间Oracle存储就是OraCIe数据库实例文件系统所占用的磁盘大小,可以理解为表空间的大小(总和)接口接口是指一组WebService服务,通过接口接收请求并作相应内部处理后向外提供服务,需要请求方与接口之间的网络畅通并有对应的文件解析格式自动化监控监控是对oracle实例运行时的性能和健康状态进行侦测,以帮助相关人员对oracle数据库有个整体的把握和了解,帮助提高数据库运行效率,保证数据库健康运行。自动化监控指的是能够智能地、主动地对数据库进行监控,无需启停程序,能够做到对新数据库实例的监控和对已销毁的数据库的停止监控。但必须保证监控端与数据库实例端的网络畅通。个性化告警个性化告警指的是用户根据自定义规则对数据库运行时状态进行告警,不必拘泥于已有规则,根据自身实际需要和情况进行符合自身实际情况的告警,灵活可配置Oracle计量是指对OraCle运行时所占用内存大小、分配内存大小、实例启停时间、存活时间、占用存储大小、分配存储大小、网络IO等进行统计,以帮助企业计费整库备份指对数据库中的所有数据、逻辑结构等进行备份表空间恢复依据表空间为基本单位,对表空间的逻辑结构、数据进行恢复原样的操作参考资料集团智慧城市需求说明书思特奇全行业监控管理插件版V3.0.0系统使用手册网关插件版使用方案XXX集团智慧城市概要设计说明书总部集团客户部(集团)集团XXXVl.0需求跟踪矩阵综合描述系统目标发展现状公有云被认为是云计算的主要形态。在国内发展如火如荼,根据市场参与者类型分类,可以分为四类:一类为传统电信基础设施运营商,包括中国移动、中国集团和中国电信;一类为政府主导下的地方云计算平台,如各地如火如荼的各种“XX云”项目;一类为互联网巨头打造的公有云平台,如盛大云;一类为部分原IDC运营商,如世纪互联;一类为具有国外技术背景或引进国外云计算技术的国内企业,如风起亚洲云。由于目前国内并未开放外国公司在中国直接进行云计算业务,因此像亚马逊、IBM、JoyentxRackspaces等国外已有多年云计算业务经验的厂商在进入中国市场途中仍障碍重重。2012年11月1日,微软终于实现旗下公有云计算平台WindowsAzure在中国的落地,这将掀开外资企业进军中国云计算市场的序幕规划原则实现对集团总部公有云研发建设的系统层面、数据库层面的有效强有力的支持,为公有云环境提供稳定的可信赖的系统脚本层面的支持,为公有云环境提供准确的可依赖的数据库监控、计量服务,实现贴合用户需求的个性化的告警业务目标1、实现数据库实例快速一键式创建、销毁、变更2、实现对数据库全面、完整的监控、计量、告警3、实现对数据库的个性化告警配置4、实现对数据库的自动化监控5、实现程序化、自动化创建、销毁管理数据库技术目标实现公有云试点、积累经验完善思特奇网管插件版系统,学习mysql监控告警管理功能尝试自动化监控和个性化告警技术标准1、安全。云计算提供了最可靠、最安全的数据存储中心,用户不用再担心数据丢失、病毒入侵等麻烦2、方便。云计算对用户端的设备要求最低,使用起来也最方便。3、数据共享。云计算可以轻松实现不同设备间的数据与应用共享。4、无限可能。云计算为我们使用网络提供了几乎无限多的可能。担忧1、 安全:允许谁查看企业的专有数据?2、 性能:应用程序系统性能在处理峰值时刻会如预期那样吗?3、 数据数据所有权:“云”的所有权就是系统平台上数据的所有权吗?4、 可靠性:一个企业可以部署很多数据中心和冗余系统,来满足正常运转时间的需要。提供“云”服务的公司会提供相同的服务吗?5、 一致性:越来越多的公共企业、金融服务和健康部门的公司都面临着严格的条例规范;他们需要能够证明谁访问了数据、在何时或者何处处理过这些数据,当处理这些数据的时候,就需要哪些软件和硬件。在企业内部的数据库中,做到这些就非常困难。在云中他们能够允许做同样的工作吗?更有可能的是对于重要的应用程序,企业将会部署基于网页的访问机制,让这些应用程序在当前宿主的位置运行。至于应用程序的更新,企业可能会创建企业内部云。只有在他们充分体验这种即时需求资源服务和按使用量付费的工作环境之后,他们才可能会分配一些工作到外部云如果对在外部云上部署部分工作负载非常必须的话,他们会考虑这样去做。这些企业在这个方向上跨出下一步之前,会非常尽力地去找到合适的工具来创建他们自己的内部云系统概述“智慧城市”以智慈城市为核心,突出“开启城市智时代”的理念,通过打造云平台,汇集信息资源,聚合智慧应用,塑造中国集团城市信息化新形象。为了更好地规划“智慧城市”未来,满足各省“智慈城市”行业应用发展需要,中国集团致力于做好云平台的搭建。目前,中国集团集团斥资几个亿打造的“智慧城市云平台”已落地上海。中国集团总部通过云平台可以实现集中管理、统一技术实现、统一行业应用模板、确保应用开发全国共享;而省级可以通过子系统发布、部署行业应用及加载地方城市信息数据等,同时以云计算为核心,水平承载平台,垂直应用孵化。中国集团基地数据中心基础设施资源以面向云能力提供为核心,具备高利用率、智能化、绿色节能特征。为城市数据信息存储提供安全可靠保障。依托于“智慧城市云平台”,中国集团将实现智慧应用的快速孵化,推动智慧产业的高效发展。我司承担此次集团XXX智慧城市项目的脚本工作和oracle数据库监控计量告警工作,力争实现对集团总部公有云研发建设的系统层面、数据库层面的有效强有力的支持,为公有云环境提供稳定的可信赖的系统脚本层面的支持,为公有云环境提供准确的可依赖的数据库监控、计量服务,实现贴合用户需求的个性化的告警,并对自己将来在公有云的研发方面积累实战经验和技巧。运行环境软件环境软件名称功能版本ESXiVMware虚拟化宿主机5.0VMwarevSpherevCenter集中管理VMware虚拟化主机及资源5.0XCPXen虚拟化宿主机1.6XenCenter集中管理Xen虚拟化主机及资源6.0JDKJaVa运行环境jdkl.6.0_45TomcatWeb应用运行容器apache-tomcat-6.0.37Mysql数据库5.5RabbitMQ消息中间件rabbitmq-server-3.1.0WindowsServer2008vCenter服务器操作系统SqlServer2008vCenter服务器数据库RedHat6.4X64应用服务器、RabbitMQ服务器OraclelOgOracle数据库10g硬件环境程序结构说明ACtiOnCOntext 类BaseDaoSqlMapClientStruts action 类 (BeanAction)Domain 类本系统也采用了StrutsModel2,中心控制器(BaseAction)控制所有的程序流转,是MVC三个相对独立的部分协调工作,它接受所有来自客户端的请求,并根据系统的配置(StrUts.xml)发送HnP请求到其他ACtiOn对象(开发者实现的com.sitech.ismp.util,struts.BaseAction的子类),在这些Action对象中会进行所有的业务操作,比如添加用户,删除用户,修改一条记录。把其中的处理的结果封装在domain包下自定义的实体类或HashMap,处理完毕后由BaSCSerVIet转向到JSP页面,将处理结果返回给客户端视图JSP。具体流程见下图:源程序及编译链接组装说明1、配置文件概述:序号配置文件名称作用说明1Web.xmlL配置StrUtS拦截器2 .配置单点登录拦截器3 .Struts配置文件加载2Struts,xml配置多个StrUtS文件3applicationContext.xml配置实体类4DBConfig.Properties配置数据库连接5webUrl.properties配置接口程序连接、vCenter连接等6SqlMap.config配置操作数据库xml文件2、Web工程目录结构:系统详细设计系统结构描述监控计量告警(不带界面)逻辑描述运行MainScheduler.java,会解析rsmu-jobs.ProPerties,根据配置的时间规则运行相应的调度,只有当ReqUireDBInStanCeJOb.java运行完成获取到监控实例之后才会开始监控调度的作业和计量调度的作业,而告警调度的作业则要在规则调度作业完成之后才能进行任务类运行频率实例调度:15分钟一次监控调度:1分钟一次规则调度:15分钟一次告警调度:3分钟一次计量调度:15分钟一次Request输入号项目名称属性名称项目类型项目描述1CollOracleKPIBySqlJobA:Void监控调度2RequireDBInstancejob无Void实例调度3AchiveCollRuIeJob无Void规则调度4OracleAlarmJob无Void告警调度5OracleMeasurementjob无Void计量调度Response输出彳号项目名称属性名称项目类型项目描述1CollOracleKPTBySqlJob无Void监控调度2RequireDBInstancejob无Void实例调度3AchiveCollRuIeJob无Void规则调度4OracieAlarmJOb无Void告警调度5OracleMeasurementjob无Void计量调度逻辑从MainSChedUler.java开始起调度,当时间满足时间配置时,触发以下逻辑处理程序实例调度:publicvoiddojob(),获取数据库监控实例作业开始调度,从接口获取存活的数据库实例进行监控监控调度:publicvoiddojob(),监控调度开始作业,开始监控数据库实例规则调度:publicvoiddojob(),规则调度开始作业,从接口获取告警项和告警规则告警调度:publicvoiddojob(),依据告警规则文件的配置,如果满足条件,则触发告警计量调度:publicvoiddojob(),计算数据库运行时所占用的资源和预配置资源的大小,服务提供商据此向企业收取服务费用数据访问层Request输入g号项目名称属性名称项目类型项目描述1MonitorOracleServicemonitorThreadVoid监控调度2CollDBInstanceServicedbListVoid实例调度3AchiveCollRuIeServiceArray、ruleKpiSet>ruleEntryMapVoid规则调度4OracleAlarmServicealarmThreadVoid告警调度5OracleMeasurementServicemeasurementThreadVoid计量调度ReSPOnSe输出彳号项目名称属性名称项目类型项目描述1MonitorOracleServicemonitorThreadVoid监控调度2CollDBInstanceServicedbListVoid实例调度3AchiveCollRuIeServiceArray、ruleKpiSetruleEntryMapVoid规则调度4OracleAlarmSalarmThreadVoid告警调度g号项目名称属性名称项目类型项目描述ervice5OracleMeasurementServicemeasurementThreadVoid计量调度核心SQL1、selectround(1-(physical-reads/(db_block_gets+consistent_gets),4)fromv$buffer_pool_statisticswherename='DEFAULT2、selectround(1-(sum(getmisses)/(sum(gets)+sum(getmisses),4)fromvSrowcache3、4、selectround(sum(pinhits)/sum(pins),4)fromv$librarycacheselectround(value/1024/1024,2)fromv$parameterwherename='dbcache-size,5、selectround(value/1024/1024,2)fromv$ParamCterwherename-,logbuffer,6、selectround(value/1024/1024,2)fromv$parameterwherename='sgamaxsize,7、8、selectcount(*)fromall_usersselectcount(*)fromdbausersdwhered.DEFAULTTABLESPACEO,SYSTEM,9、selectround(sum(bytes)/1024/1024,2)fromdbadatafileswhereTABLESPACE,NAMEnotin(,UNDOTBSf,SYSAUX,SYSTEM,USERS,)10、selectround(sum(bytes)/1024/1024,2)fromdba_free_spacewhereTABLESPACE_NAMEnotin(,UNDOTBS1,SYSAUX,SYSTEM,USERS,)11、12、13、selectcount(*)fromv$sessionselectcount(*)KPI_VALUEfromv$locked_objectselectcount(*)fromv$lockwhererequestO0类图类一览表号包名类名类说明Com.sitech,monitor,base.c3pOEncryptCBpOEncryptProperties数据库连接解密2.Com.sitech,monitor,dao.oraclecoilCo11OracIeBySqlDao、Co11OracIeBySqlDaoImp1数据库访问3.Com.sitech,monitor,depend.RuleConst