上一主题: 介绍事务定义过程下一主题: 监控 Flex 应用程序


关于本指南

本指南适用于负责创建事务定义的人。

最后一章例外:“使用 HTTP 分析程序插件标识事务”的目标读者主要是 Java 开发者,他们为 HTTP 分析程序插件设计并测试自己的 Java 代码。

本指南的目的是帮助管理员建立和维护业务应用程序、业务服务和事务定义。

本指南假定:

用户须知

要使用本指南,您需要熟悉 CA CEM 管理以及需要为 CA CEM 记录、定义、验证和维护的用户事务。

我们假设您已经对 HTTP 和 Flex 事务拥有工作方面的理解。

有关配置和管理 CA CEM 的信息,请参阅《CA APM 配置和管理指南》。

关于事务标识

事务标识是定义唯一事务(可区别于其他事务)的过程。

事务定义过程提供优化唯一事务签名的方法。 例如,用户登录到您的网站并向 HR 部门提交一份表单。 通过正确指定事务定义,CA APM 可将用户的登录事务和 HR 表单提交事务标识为两个不重复的事务。

HTTP 请求参数类型

CA CEM 基于在客户端浏览器与 Web 服务器之间的流量中观察到的 HTTP 名称/值对来标识事务。 这些 HTTP 名称/值对称为 HTTP 参数。 HTTP 参数包括类型、名称和值。 这些参数显示在 HTTP 请求的头和正文中。

一个 HTTP 请求包含一个方法、一个 URL、请求头和(可选)一个请求正文。

要标识基于 HTTP 请求参数的某个事务,可以指定以下任何一项:

例如,以下是用于标识基于请求的事务的一些常见 HTTP 参数:

Cookie

Cookie 参数是显示在 Cookie: 请求头中的名称/值对。

詣弇

Post 参数是使用 POST 方法时显示在 HTTP Post 请求正文中的名称/值对。

Query

Query 参数是显示在 URL 中第一个“?”字符后的名称/值对。

URL

URL 参数是显示在 URL 中第一个“?”字符前的主机名、路径和端口号值。

HTTP 

HTTP 请求参数可以用于匹配客户端发送给服务器的 HTTP 标头中的字段。

HTTP 请求头

HTTP 头参数是显示在 HTTP 头中的名称/值对。

以下是 HTTP 请求头的一个简单示例,以及您将用来标识事务的相应参数。

HTTP 请求示例:

POST /dir/file.html?P1=V1&P2=V2 HTTP/1.1
Host: www.company.com
Cookie: P3=V3; P4=V4
Content-Type: application/www-form-urlencoded
P5=V5&P6=V6
Accept-Language: en-us

相应的 HTTP 参数:

URL Host=www.company.com
URL Path=/dir/file.html
Query P1=V1
Query P2=V2
Cookie P3=V3
Cookie P4=V4
POST P5=V5
POST P6=V6
name=Accept-Language value=en-us

注意:CA CEM 也可以标识不直接基于 HTTP 的事务。 例如,CA CEM 可以标识基于 XML 字符串的事务,以及基于由自定义编码的插件(HTTP 分析程序插件)返回的值的事务。

基于响应的事务

您现在可以记录、定义和监控事务,除请求之外还可以捕获响应参数。

例如,根据最终用户的访问授权或用户已执行的任务,一些 Web 应用程序会显示不同的页面元素。 在这种情况下,单个请求可以生成多个响应。

可以根据以下任何一项来标识基于响应的事务:

如果使用 HTTP 分析器插件,请注意 CA CEM 现在会将请求和响应数据传递给插件。 以前,CA CEM 仅传递请求数据。 如果不希望插件处理额外的开销,请使用插件 API 的版本 1。

更多信息

HTTP 和 HTML 响应参数类型

部署 HTTP 分析程序插件的最佳做法

对基于响应的事务进行故障排除

关于记录会话的内容类型

Flex 参数类型

HTTP 和 HTML 响应参数类型

HTTP 响应包含状态代码、响应报头和(通常情况下)响应正文。 创建基于响应的事务定义的唯一方法是从基于请求的事务创建。

要识别基于响应的事务,您可以指定以下任何一项:

HTTP 响应

HTTP 响应的第一行包含 HTTP 响应状态代码(除 HTTP 版本和 HTTP 响应状态说明之外)。

HTTP 响应报头

HTTP 响应报头信息可以包含诸如服务器版本、最后修改日期、内容类型或您的应用程序所需要的数据等信息。

HTML 响应标记

您也可以基于响应正文中某个 HTML 标记的唯一值来识别事务。 例如,您可以识别具有 <title> 标记的特定值的事务。 虽然您可以在技术上指定任何 HTML 标记,但请确保使用唯一识别该事务的标记。

以下是如何使用每一个参数类型的示例。

HTTP 响应状态行示例:
HTTP/1.1 - 404 Not Found
HTTP/1.1 - 200 OK
HTTP 响应参数示例:

Status Matches "200"

Status Matches "4*"

HTTP 响应报头示例:

HTTP/1.1 200 OK
Date: Tue, 12 Apr 2011 23:09:08 GMT
Server: Apache/2.2.16 
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Type: text/html
Content-Length: 159796
Proxy-Connection: Keep-Alive
Connection: Keep-Alive

相应的 HTTP 响应参数:

Status Matches "200"
Server Matches "Apache*"
Content-Type matches "text/*"

关于 HTML 标记的其他注意事项

以下是了解使用 HTML 标记在 CA CEM 中定义事务的其他注意事项: