上一主题: 打印“事务跟踪”窗口下一主题: 保存和导出事务跟踪信息


查询存储的事件

事务跟踪会话结果自动存储在事务事件数据库中。 事务事件包括事务跟踪和错误,错误中包括停顿(如果已安装 Introscope Error Detector)。如事务跟踪自动采样中所述,事务事件数据库包含由 Introscope 自动采样的事务跟踪。 其中还包含您自己运行的事务跟踪会话的结果。

事务事件数据库支持以下类型的查询:

注意:一定要在使用历史查询之前运行一些事务跟踪会话,以便有数据可查询。

查询语法

以下部分介绍如何使用“历史查询”工具查询存储错误。 查询工具:

查询历史事件

要查询历史事务事件:

  1. 选择“Workstation”>“查询历史事件”。

    此时会打开“历史查询查看器”。

    “查询”字段在下拉列表中最多显示 12 个以前通过此会话或由同一 Workstation 用户进行的先前会话执行的搜索。 这使您能够选择其中一个保存的搜索项,而不必再重新输入。

    提示:默认情况下,此字段最多可记住 12 个搜索项;通过编辑 IntroscopeWorkstation.properties 中的 introscope.workstation.historical.query.history.limit 属性,可指定此字段要记住的搜索项不同数目。

  2. 在“查询”字段中,输入以下项的组合:

    提示:在“查询”字段中开始键入时,下拉列表中显示的搜索将限定为与键入内容相匹配的项。

  3. 使用“时间范围”选项可根据时间范围筛选查询(如果适用)-请参阅查看历史数据,了解有关如何使用“时间范围”选项的说明。

    如果未选择时间范围,查询将使用默认值“所有”且不应用筛选器。

  4. 单击“开始”。

    与查询匹配的事务显示在“历史查询”窗口中-其格式类似于“事务跟踪查看器”。 有关更多信息,请参阅使用事务跟踪查看器

注意:只能查看 500 个事件。 如果与查询匹配的事件超过 500 个,则仅显示最早的 500 个事件。

查询选项和语法

查询使用 Lucene 正则表达式语法查找和替换文本字符串。 有关 Lucene 语法的信息,请参阅 Lucene 网站(lucene.apache.org)并搜索“query syntax”(查询语法)。

字段

说明

示例

代理

将搜索限定在特定代理报告的事件。

代理:ControlledRangeAgent

将搜索限定在与指定域中组件相关的事件。

domain:AcmeWest

fullAgent

将搜索限定在特定代理报告的事件,由其完整路径指定:

domain|process|host|agent。

fullAgent:AcmeWest| Custom Metric Host|
ControlledRange
代理

主机

将搜索限定在特定主机上发生的事件。

host:Wmiddle01

进程

将搜索限定在与给定应用程序中的组件相关的错误。

进程:自定义度量标准主机

root

将搜索限定在与特定组件关联的事件,由度量标准路径指定。

root:servlets|accountServlet

类型

指定查询结果中要包括事件的类型。

errorsnapshot-将搜索限定到错误事件。

normal-返回在用户启动的事务跟踪中捕获的事务事件。

sampled-返回 Introscope 执行默认事务采样时捕获的事务事件。

whatsinteresting-返回“有趣内容事件”,这些事件是在应用程序概览启发式值发生更改时生成的。 有关更多信息,请参阅有趣内容事件

这些类型的结果将在“类型”列中具有以下代码:分别为 E、T、R 和 WI。 此组代码与在实时模式下在“事务跟踪查看器”中使用的代码截然不同(请参阅使用事务跟踪查看器)。

type:errorsnapshot

type:normal

type:sampled

type:whatsinteresting

url

将搜索限定在与指定的事务 URL 路径前缀关联的事件。

路径前缀是 URL 中与主机名相同的部分。 在以下 URL 中:

http://burger1.com/bWar/burgerServlet?
ViewItem&category=11776&item=55562630&rd=1

... 路径前缀为:

/bWar/burgerServlet

url:/bWar/burgerServlet

urlParams

将搜索限于与指定事务 URL 参数关联的事件。

URL 参数的 URL 后边跟着一个问号 (?)。 在此 URL 中:

http://ubuy.com/ws/shoppingServlet?
category=734&item=3772&tc=photo

URL 参数部分是:

?category=734&item=3772&tc=photo

注意:urlParams 不能以通配符开头。

urlParams:category=734*

user

将搜索限定在与指定用户名关联的事务的事件。

user:jdoe

消息

将搜索限于与指定消息关联的事件。

 

traceDataCreationType

根据数据是否为以下一种类型来限定搜索:

0 = 毫秒数据(默认值)

1 = 微秒数据

2 = 纳秒数据

duration 和 startTime 查询关键字只应与此关键字一起使用。

 

duration

根据事件持续时间限定搜索。 与 traceDataCreationType 关键字一起使用。

将 traceDataCreationType 设置为 1 或 2 时,会将“durationinnanos”替换为“duration”。

 

startTime

根据事件开始时间限制搜索。 与 traceDataCreationType 关键字一起使用。

将 traceDataCreationType 设置为 1 或 2 时,可使用“starttimeinnanos”来替换“startTime”

 

 

componentsNotShown

限定搜索其中未显示指定组件的事件

 

durationencoded

未提供任何定义

 

time

限定搜索指定时间之前或之后的事件。

 

traceID

限定搜索具有指定跟踪 ID 的事件。

traceID:1340419311156\:3957

注意:反斜线 (\) 字符必须置于第二个冒号 (:) 之前。

使用特殊字符

如果下列特殊字符包含在查询中,则 Lucene 语法允许使用反斜杠 (\) 字符对其转义:

+ - && || ! ( ) { } [ ] ^ " ~ * ? : \

例如,要搜索 (1+1): 2,请使用查询:

\(1\+1\)\:2

注意:在查询的开头不支持使用 *(星号) 和 ?(问号)字符。

查询类似事件

在 Introscope 中,可查询与选择事件类似的事件。 例如,类似事件可能是所有包含相同组件(Servlet > EJB > SQL)且有不同响应时间的事件。 如果事件 60% 的字符串(组件名称、SQL 表名等等)相互重叠,则 Introscope 将其视为类似事件。

注意:即使选择事务类型事件,在结果中也可能返回事务和错误(仅当安装 ErrorDetector 后才只返回错误)。

查询类似事件:

Introscope 在“历史查询”窗口中列出类似事件。

查询相关事件

在 Introscope 中,您可以查询相关的事件,即属于同一更大事务一部分的那些事件。 例如,浏览器响应时间事件与 servlet 事务事件相关。

注意:即使选择了事务类型事件,在结果中也可能会返回事务和错误。

查询相关事件:

Introscope 会在“历史查询”窗口中列出相关事件。