ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Tivoli实战:应用故障和性能监控管理

Tivoli实战:应用故障和性能监控管理

原创 Linux操作系统 作者:tivoli2000 时间:2009-02-16 15:03:20 0 删除 编辑
    对于IT运行维护管理工作来讲,应用的监控是业务部门经常提出的需求,是业务部门迫切要求需要解决的问题,但对于应用的监控管理,却涉及多个方面,并依据业务的复杂性而具有多样性。通常,应用的监控涉及两个层面:应用故障监控和应用性能监控。

    应用故障监控

    针对应用的性能管理,一般通过对应用日志监控实现。此种监控管理方法,依赖于应用设计和编程时,考虑到未来应用监控的需要,在应用出现故障时,将故障信息写入应用日志中。不过,即使应用程序可以将故障信息写入自己的日志中,但一般只是后台记录日志而已,不能及时通知系统管理员或监控管理员。为了能够及时发现应用的故障,需要通过通用代理,将应用产生的日志信息及时送到事件控制台,使管理员可以在一个统一的窗口中了解应用的运行情况。

    通过通用代理实现应用日志监控,还需要考虑一下情况:

    通用代理支持秒级为单位的灵活的采样周期;支持不同的语言包和字符集;对多条记录的逻辑判断,比如将5条相同属性组的记录合为一条,或是通过特定的分隔符模式来动态的判断多条记录的逻辑关系。

    支持动态文件名的监控:在指定被监控的文件名时,可以使用通配符,如:

    {########}.abc 文件名为8位数字,扩张名是abc的文件

    {########}.* 忽略扩张名,文件名是8位数字中最大的文件

    PS{###}FTP.txt 以PS开始、FTP结束、中间3位数字最大,扩张名是txt的文件

    或是以日期格式指定的文件。如

    {YYYYMMDD}.log 20070930.log 或是20071015.log

    {MMDDYY}.log 101105.log 或是110105.log

    对于监控的内容,通过代理可以设定关键字匹配等方式(告警条件)监控日志文件,当有写入新的记录并符合告警条件时,通用代理会在控制台中显示告警,并将相应的记录转到事件管理平台中。

    对于应用日志的监控,使监控应用故障问题的最直接的方法,除此以外,应用程序运行所依赖的硬件设备、网络环境和数据库等中间件的监控,也是判断应用故障的有效手段,并需要同时采用,综合分析故障原因。

    应用性能监控管理

    对于应用性能监控管理,我们所关心的是:

    Ø 这个交易成功了么?

    Ø 如果交易失败,是什么原因导致的呢?

    Ø 用了多少时间,用户才得到反馈?

    Ø 如果交易中包含子交易(例如调用其他交易),那么这个子交易用了多少时间呢?

    Ø 在整个过程中,哪个地方是瓶颈?

    Ø 每一类交易都被执行了多少次?

    Ø 如何配置我们的应用和环境参数,才能得到更好的服务效果?

    在此领域,主要采用基于国际标准的ARM(ApplicationResponseMeasurement)接口,实现应用性能监控管理方法。

    ARM(应用程序响应评测)API是一系列标准“应用程序编程接口”(API)调用,它使进行集中的应用程序性能评测。一些知名的IT 公司已经就这些调用达成一致。

    API旨在允许评测任何应用程序的性能。应用程序监视能力最可能用于评测响应时间。然而,分析同一个应用程序事件或进程的一系列时间调整,也可以用于构建应用程序可用性记录和应用程序用法记录。

    图 ARM工作原理

    要评测应用程序的响应时间,必须根据ARMAPI标准检测该应用程序。这意味着必须将 ARM API 调用嵌入应用程序代码。

    编译和链接应用程序所需的ARM库文件和include 文件是在产品安装过程中自动提供的。

    ARMAPIV2可用于确定应用程序性能差的原因,也可用于报告其可用性。还可能传递关于到 ARM 2 API 的字节数的信息。此信息可在图中用来显示不同大小的交易的长度。

    使用ARM调用实现应用响应时间监控:

    此方法的好处在于,可将开始和停止响应时间时钟的调用,准确地放置在要评测的应用程序部件中。在程序中定义单独的应用程序和交易(事务),并将ARMAPI调用放置在交易(事务)开始和交易(事务)结束处。

    图 ARM交易示例

    对于B/S结构的应用来讲,如果是基于业界的中间件(WebSphere、WebLogic等)的J2EE应用,由于这些业界中间直接支持ARM标准,在其上开发的应用可以不需要任何修改,通过专用的工具软件,即可进行响应时间的监控。对于C/S结构的应用,如果没有考虑未来应用性能的监控,则需要对源代码进行修改,主要是在需要监控性能的应用交易(事务)代码前后添加ARM调用,然后通过专用软件工具进行监控。

    有两种基本方法可用来捕捉最终用户对交易的看法:1)主动监控,使用模拟交易的记录和播放来监控和测量性能;2)被动监控,监控实际最终用户流量的性能。

    主动监控。顾名思义,主动监控包括主动执行业务交易来检查性能和可用性。通过软件工具可以记录基于web和Windows 的交易,然后从整个企业、DMZ 或互联网上的不同端点播放这些记录的脚本。记录过程包括逐步完成整个业务流程(例如购书、检查银行余额、运行SAP查询),就象最终用户执行该任务一样。业务流程的模拟脚本一般由多个交易或步骤组成。然后,这个记录的交易将会捕捉为脚本,部署到根据设定播放脚本及报告性能和可用性的客户端。例如,如果脚本每十分钟播放一次,它们就能为关键业务交易的性能问题提供优秀的早期报警系统,而且如果交易没有完成,它们也能用于将可用性问题告知操作人员。在生产中使用由开发小组(通常最了解应用逻辑)编写的测试脚本,而且新脚本可以利用现有的技能编写。

    被动监控:被动监控测量实际最终用户执行交易时的响应时间。被动监控显示的是实际最终用户的响应时间,而不是有效监控情形中的模拟用户。但是,由于被动监控报告单个用户请求,因此不能象模拟交易那样在上下文中了解整个业务流程的响应时间。例如,购书过程的每个步骤(注册登录、搜索目录、将选定书籍放进购物车、结帐退出等)将报告一个单独交易。软件工具产品通过web交易服务质量 监控程序和 Application Response Measurement (ARM) 检测支持被动监控。

    QoS:QoS监控程序允许测量实际客户体验到的响应时间,而不必在他们的桌面上安装代码。QoS为基于web 的交易提供了三个关键度量。第一个度量是后端处理时间,即Web 基础架构响应 Web 页请求所用的时间。第二个度量是浏览器呈现时间,即该页从第一个到最后一个像素在客户浏览器中呈现所用的时长。第三个度量是总体往返时间,即从开始到完成所需的时间。

    这些度量对于量化客户对Web站点上体验到的服务级别特别有用。较长的网页呈现时间可能说明,此网页对于从拨号调制解调器访问站点的用户来说图形太多了。较长的后端处理时间可能表明,Web服务器或Web应用服务器无法足够迅速地应付处理负载,这说明需要升级硬件或进行性能调整。较长的总体往返时间说明,客户在Web 站点上没有体验到希望提供的服务质量。然后,可以使用后端响应时间度量来评估问题是来自环境的内部还是外部,并采取纠正措施。

    ARM:能提供应用程序性能方面的数据。软件工具的应用程序响应测量(ARM)功能基于对应用程序源代码的修改,包括对Application Response Measurement API 的调用。这个 API 是 Open Group 定义的一个标准调用集,并得到众多知名 IT 公司的支持。该 API 可监控任何应用程序的性能。

    尽管主动和被动监控都能从最终用户角度了解交易性能,但它们不提供问题根源方面的更多信息。模拟交易能够告诉哪一个步骤失败或性能较差,但是在今天复杂的环境中,仍然有大量可能的问题领域需要调查。用户需要一种方法来跟踪交易执行路径,准确地了解问题出现在哪里,以便能够迅速采取纠正措施。这就是交易分解。

    交易分解

    交易分解包括跟踪交易经过环境的整个过程和了解每个步骤的性能响应时间。某些工具软件提供直观、操作员友好的界面,可快速方便地显示性能问题的根源,并允许采取纠正措施。系统管理员可以根据要监控的URL动态地发现交易拓扑图,而且阈值可以自动设置,以支持较快的价值实现速度。从高级交易视图,操作员能够快速确定问题的根源,从而消除了本文开头描述的漫长的问题确定周期。工具软件通过在上下文中提供与运行状况控制台(提供故障组件的资源级视图)的直接链接,将交易视图和资源视图连接起来。此外,来自详细交易性能信息将能够向控制台和供应的资源模型引擎提供数据,从而提供了支持自主计划的自治愈功能。这将减少问题确定的费用,更重要的是,它对系统管理员和业务人员,意味着更少的停机时间和更好的性能。

    目前,应用日志监控,可以通过Tivoli Monitoring的通用代理(Universal Agent)和Omnibus的syslog探针,实现主动故障日志监控管理;针对业务应用性能响应时间监控,可以通过IBM Tivoli Composite Application Manager for Response Time Tracking实现。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/18983976/viewspace-553448/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-02-10

  • 博文量
    103
  • 访问量
    127840