Summary Table
Categories |
Total Count |
PII |
0 |
URL |
0 |
DNS |
0 |
EKL |
0 |
IP |
0 |
PORT |
0 |
VsID |
0 |
CF |
0 |
AI |
0 |
VPD |
0 |
PL |
0 |
Other |
0 |
File Content
<activities>
<!-- This consumer performs the HTTP correlation for Play when used as a backend. Play doesn't use a Servlet
interface (it uses Netty), so this config does the equivalent of grabbing the header from a ServletRequest object. -->
<!-- This consumer works with Java play. The correlation is done on an actor thread (where the transaction is
identified for continuation), after which is a handoff to the main Play app thread where the entrypoint is executed -->
<consumer identify-transaction="true">
<instrumentation>
<class-name>play.libs.F$Promise</class-name>
<method-name>run</method-name>
<match-type>MATCHES_CLASS</match-type>
</instrumentation>
<correlation>
<payload-pointer>
<data-gatherer-type>POSITION</data-gatherer-type>
<position>2</position>
<!-- getter-chain to the Option object -->
<getter-chain>_requestHeader().headers().get(singularityheader)</getter-chain>
<transformer-type>GETTER_METHODS</transformer-type>
</payload-pointer>
<payload-operation>
<access-type>method</access-type>
<param-types></param-types>
<!-- Option.get() -->
<access-method>get</access-method>
</payload-operation>
</correlation>
</consumer>
<!-- This consumer works with Scala play. The correlation is done on the same thread as the Play entrypoint,
so transaction identification is not done by the correlation point. -->
<consumer identify-transaction="false">
<instrumentation>
<class-name>play.core.server.Server$class</class-name>
<method-name>getHandlerFor</method-name>
<match-type>MATCHES_CLASS</match-type>
</instrumentation>
<correlation>
<payload-pointer>
<data-gatherer-type>POSITION</data-gatherer-type>
<position>1</position>
<getter-chain>headers().get(singularityheader)</getter-chain>
<transformer-type>GETTER_METHODS</transformer-type>
</payload-pointer>
<payload-operation>
<access-type>method</access-type>
<param-types></param-types>
<access-method>get</access-method>
</payload-operation>
</correlation>
</consumer>
<producer actitity-type="HTTP">
<instrumentation>
<class-name>play.libs.WS$WSRequest</class-name>
<method-name>execute</method-name>
<match-type>MATCHES_CLASS</match-type>
</instrumentation>
<identifiers>
<identifier name="Play Framework Web Service">
<data-gatherer-type>INVOKED</data-gatherer-type>
<getter-chain>getUrl()</getter-chain>
<transformer-type>GETTER_METHODS</transformer-type>
</identifier>
</identifiers>
<correlation>
<payload-pointer>
<data-gatherer-type>INVOKED</data-gatherer-type>
<getter-chain>this</getter-chain>
<transformer-type>GETTER_METHODS</transformer-type>
</payload-pointer>
<payload-operation>
<access-type>method</access-type>
<param-types>java.lang.String, java.lang.String</param-types>
<access-method>addHeader</access-method>
</payload-operation>
</correlation>
</producer>
</activities>