cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Exclude business transaction

Maxime.Renaux
Discoverer

Hello community, 

 

I encountered a problem with BT exclusion. 

 

I configured a rule (scope is good) to exclude a BT from automatically being discovered: URI contains 'socket'.

 

The config is present in the transaction.xml file of my agent: 

 

<servlet-entry-points enabled="true">
<custom/>
<automatic-transaction-discovery enabled="true" resolution="first-entry-point">
<excludes>
<exclude name="SocketExclude">
<servlet-rule>
<enabled>true</enabled>
<priority>2</priority>
<excluded>false</excluded>
<uri filter-type="CONTAINS" filter-value="/socket"/>
</servlet-rule>
</exclude>

 

but the agent is still registrering BT : 


[AD Thread Pool-Global19] 10 Feb 2020 16:42:16,542 INFO BusinessTransactionRegistry - Registered BT Name[/myapp/socket/750/oa4riml3/xhr_streaming], Id[540]
[AD Thread Pool-Global19] 10 Feb 2020 16:42:16,542 INFO BusinessTransactionRegistry - Registered BT Name[/emyapp/socket/info], Id[541]
[AD Thread Pool-Global19] 10 Feb 2020 16:42:16,542 INFO BusinessTransactionRegistry - Registered BT Name[/myapp/socket/750/gxqnx3vy/websocket], Id[542]

 

 

And I find them in the controller. Am I doing something wrong? 

 

Besides I cannot exclude manually in the BT screen because par 3 and 4 of the URI are dynamic. 

 

Thank you

4 REPLIES 4

Peter.Holditch
Moderator
Moderator

Maxime,

 

What agent version are you running?

 

I am afraid you may be hitting a regression with respect to the handling of exclude rules which was introduced in 4.5.16 and will be resolved in 4.5.19

 

If so, please accept my apologies for the inconvenience.

 

Warm regards,

Peter



Found something helpful? Click the Accept as Solution button to help others find answers faster.
Liked something? Click the Thumbs Up button.

I have the same problem. I've configured a rule to exclude transactions.

 

I created 'Custom Match Rule', and ticked 'Exclude Transactions discovered by this rule'. However, the matching business transactions keep being discovered.

 

The controller looks like 4.5.4. Is there any problem in this version also?

 

AppDVer.PNG

Same situation here.

Spring Boot generates an /actuator/health transaction, which I believe that it's intended for liveness purposes.

In any case, it's generating a lot of useless transaction traffic that we want to exclude.

So I simply add an Exclude Transactions discovered by this rule, with the following match criteria:
"URI" "Ends With" "/actuator/health"

But it doesn't work because the transaction is still discovered as if the exclude rule won't exist.

And if I change the rule to be a Include Transactions discovered by this rule, it discovers new business transactions, so apparently its not a problem of the match criteria, but the transaction exclude.

Our Controller version is 20.6.0-2184, and agent version v4.5.14 GA

I have learnt about the node property check-bt-excludes-early, which saved my day!

This property "reverses the default order in which Java and .NET agents evaluate rules. If true, exclude rules are evaluated before match rules."

More information here:
https://docs.appdynamics.com/pages/viewpage.action?pageId=49447586