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

Business Transactions missing when splitting criteria is null/empty.

aganapathi
Participant

We have a situation where purepaths are not displaying in the Business transactions dashlet, if the corresponding splitting criteria is null or empty.

Is there a way to set a transformation regex on the splitting value to display "NULL", if empty, so that we may continue to show these purepaths in the Business transactions dashlet?

Detailed explanation:

We have a website www.domain.com/logon that user's can login.
Based on the role of the user, the user gets routed to
www.domain.com/visitor -> if he's a visitor (Portal ID = 0),
www.domain.com/member -> if he's a member (Portal ID = 1)and
wwww.domain.com/admin -> if he's an admin (Portal ID = 2).


Now, I've been asked to create a Business Transaction that captures the URI, client IP, user-name and portal routed to for each login attempt to the application.

I've created a business transaction that looks for purepaths that contain /logon and have sensors for capturing
- user-name from the internal API
- Portal ID from the internal API

Then I've created splitting measures for the business transaction from these two sensors in addition to the Client IP, URI and Application split measures.

When I have a successful login to the domain, I can see the Splittings on the business transaction as follows -

logon;192.168.0.1;ashokvisitor;0
logon;192.168.1.0;ashokmember;1
logon;192.168.1.1;ashokadmin;2


But, when I try to login with a non-existing user or enter a wrong password, those attempts to do not show up on the BT.

The filter criteria matches, but I suppose since the login was un-successful, the Portal ID API would not have triggerred to get the value.

In such cases, is there a way to set the Transformation Regex on the Portal ID value to "-1" or "NULL", so that we can display the following as well, in the BT results -

logon;192.168.0.0;userdoesnotexist;-1
logon;192.168.0.0;anotheruserwhodoesnotexist;-1


Thank you!

2 REPLIES 2

Hi Ashok, One way you can trick dynatrace is by inverting this situation i.e. Use filter criteria as "Not Containing" then enter text which would never appear then put this into splitting.

Also try regex :

(^$)

(I am not sure if the DT even checks purepath for filtering when some value is null ie. it containing null string in return/arg etc.)

Let me know if it helps.

JamesKitson
Dynatrace Leader
Dynatrace Leader

It sounds like this is the case of the implicit filter that comes along with using a measure for splitting. If it's an actual 'null' in the argument for that portalid sensor I feel like it might display that and include it but if the method or whatever that sensor is based on doesn't occur at all then it will automatically be filtered out of the business transaction results.

James