

使用 HTTP 分析程序插件标识事务 › 关于使用 HTTP 分析程序插件
关于使用 HTTP 分析程序插件
在开始编写 HTTP 分析程序插件之前,您需要熟悉有关使用方面的注意事项和最佳做法。
重要信息:HTTP 分析程序插件是 CA CEM 系统一个强大的附加功能。 但同时也可能会干扰 CA CEM 的正常运行。 请务必要遵从注意事项并按照最佳做法进行操作。
另请参阅 HTTP 分析程序插件 SDK 故障排除。
本部分包括以下主题:
部署 HTTP 分析程序插件时的注意事项
部署 HTTP 分析程序插件的最佳做法
部署多个 HTTP 分析程序插件
使用 HTTP 分析程序插件处理 XML 数据
部署 HTTP 分析程序插件时的注意事项
在编写插件之前,请查阅此注意事项列表:
警告! HTTP 分析程序插件将在 TIM 计算机上以 root 用户身份运行,也就是说,将绕过所有的保护。 因此,有可能会损坏 CA CEM、TIM 和操作系统。
警告! 请注意,TIM 是一台安全的计算机;您应该控制在此安全环境下部署插件的人员范围。
- 在插件执行过程中,TIM 将被阻止。 这意味着,占用大量进程的插件会阻止正常监控、使 TIM 放弃数据包、阻止记录并延迟统计信息收集。
- 不要修改、删除或添加任何操作系统文件,或者以其他方式使用您的插件重新配置操作系统。
- 不要使用任何可能更改进程状态的操作系统工具。 插件在 TIM 进程中运行,不能更改该进程的状态。
- 不要调用 System.exit(),因为此函数将退出 TIM(不仅仅是退出插件)。
- 不要读取标准输入 (System.in) 或写入标准输出 (System.out)。 (请改用日志消息功能。)
- 不要尝试使用已由 TIM 打开的任何文件。
- 不要使插件代码处于等待状态中。 HTTP 分析程序插件不具有超时功能。 请确保您的插件无法挂起 TIM。 例如,不要等待外部事件或在代码中放入休眠调用。
- 在 endComponent 方法中释放针对每个组件的资源。
- 在 terminate 方法中释放任何其他插件资源。
部署 HTTP 分析程序插件的最佳做法
查阅有关该插件的最佳做法和常规提示信息:
- 最好从较小的事务群体和 CA CEM 测试环境开始。 在迁移到生产环境之前先对性能负载进行测试。
- 该插件是早期采用的功能,旨在用于基础事务标识,而非所有事务标识。 如果要为所有事务创建插件,请联系 CA Technologies 专业服务。
- 创建使用消息日志的插件以提供有关正在发生的事件的反馈信息。 但请谨记,日志消息需要消耗时间,因此在生产环境下应尽可能地减少日志消息的使用。
- 记录有关 Java 错误以及一般警告和错误状况的消息。
- 如果请求正文很小,请根据需要缓冲整个请求正文;但是,如果正文很大,应注意其对性能产生的影响。
- 如果希望使用插件,但出于性能原因不希望将响应数据传递给插件,请使用插件的早期版本。 插件 SDK 列出了有关使用早期版本的信息。
部署多个 HTTP 分析程序插件
如果有多个事务子集,而这些事务子集无法通过标准 TIM 监控来识别,可以部署多个 HTTP 分析程序插件。 您可以按照部署一个插件的相同步骤来部署其他插件。
对于多个 HTTP 分析程序插件,请注意以下事项:
- 当多个插件具有不同的筛选,或者多个插件是由独立的组编写时,它们会很有用。
- 每个插件均会占用 TIM 的处理时间。 请权衡对性能产生的影响以及需要使用多个插件的其他业务驱动因素,然后做出决定。
- 为提高性能,您可能希望将多个插件组合到单一插件(JAR 文件)中。
- 一次最多可以启用 10 个插件。
- CA CEM 无法辨别某一特定参数是由哪个插件生成的。
- 要辨别生成某个参数的插件,可以将插件名称用作参数名称的前缀(例如,pluginName_paramName)。
使用 HTTP 分析程序插件处理 XML 数据
如果正在编写用于处理 XML 数据的插件,应注意以下事项:
- TIM 会将 HTTP 请求正文数据按照原样传递给插件。
- 插件负责基于以下内容确定输入数据的编码:(1) XML 声明中的“encoding”属性(如果有);(2) HTTP 请求头中的“内容类型”字段的“charset”属性;(3) 数据的字节顺序标记;(4) 您对应用程序的了解。
- 插件负责执行必要的字符编码转换(通常情况下,XML 分析程序负责完成此操作);插件将以 Java 字符串形式返回参数名称和值。
版权所有 © 2013 CA。
保留所有权利。
 
|
|