bin/XEtemplates/Query Batch Tracking.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<event_sessions xmlns="http://schemas.microsoft.com/sqlserver/2008/07/extendedeventconfig">
  <event_session name="Query Batch Tracking" maxMemory="4" eventRetentionMode="allowSingleEventLoss" trackCausality="true" dispatchLatency="30" maxEventSize="0" memoryPartitionMode="none">
    <templateCategory>
      <!-- _locID_text="templateCategory" _locComment = "" -->Query Execution</templateCategory>
    <templateName>
      <!-- _locID_text = "templateName" _locComment = "" -->Query Batch Tracking</templateName>
    <templateDescription>
      <!-- _locID_text = "templateDescription" _locComment = "" -->Collects batch and RPC level statements as well as error information. You can use this template to understand the flow of queries that are executing on your system and track errors back to the queries that caused them. All batch events are collected in this session so collection size may be very large. To reduce the collection size, consider using the Query Batch Sampling template, which already includes a filter.</templateDescription>    
    <event package="sqlserver" name="error_reported">
      <action package="sqlserver" name="client_app_name" />
      <action package="sqlserver" name="database_id" />
      <action package="sqlserver" name="query_hash" />
      <action package="sqlserver" name="session_id" />
      <predicate>
        <and>
          <leaf>
            <comparator name="greater_than_uint64" package="package0"></comparator>
            <global name="database_id" package="sqlserver"></global>
            <value>4</value>
          </leaf>
          <leaf>
            <comparator name="equal_boolean" package="package0"></comparator>
            <global name="is_system" package="sqlserver"></global>
            <value>false</value>
          </leaf>
        </and>
      </predicate>
    </event>
    <event package="sqlserver" name="rpc_completed">
      <action package="sqlserver" name="client_app_name" />
      <action package="sqlserver" name="database_id" />
      <action package="sqlserver" name="query_hash" />
      <action package="sqlserver" name="session_id" />
      <predicate>
        <and>
          <leaf>
            <comparator name="greater_than_uint64" package="package0"></comparator>
            <global name="database_id" package="sqlserver"></global>
            <value>4</value>
          </leaf>
          <leaf>
            <comparator name="equal_boolean" package="package0"></comparator>
            <global name="is_system" package="sqlserver"></global>
            <value>false</value>
          </leaf>
        </and>
      </predicate>
    </event>
    <event package="sqlserver" name="sql_batch_completed">
      <action package="sqlserver" name="client_app_name" />
      <action package="sqlserver" name="database_id" />
      <action package="sqlserver" name="query_hash" />
      <action package="sqlserver" name="session_id" />
      <predicate>
        <and>
          <leaf>
            <comparator name="greater_than_uint64" package="package0"></comparator>
            <global name="database_id" package="sqlserver"></global>
            <value>4</value>
          </leaf>
          <leaf>
            <comparator name="equal_boolean" package="package0"></comparator>
            <global name="is_system" package="sqlserver"></global>
            <value>false</value>
          </leaf>
        </and>
      </predicate>
    </event>
    <target package="package0" name="ring_buffer" />
  </event_session>
</event_sessions>