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

Android APP Auto Instrumentation & Detection

Ahmed_mohamed-s
Newcomer

Hi All,

Kindly we have successfully integrated SDK to our android app (Auto instrumentation) and we are currently receiving app user sessions.

But we are facing below issues:

  • User actions name are not easy to understand as it has many "Loading page" and "Touch on image"
    • Loading DashboardActivity
    • Loading MIManagementActivity
    • Touch on ImageWithText
    • Touch on ConstraintLayout
    • Touch on نعم
    • Touch on تأكيد
    • Loading ADSLManagementActivity

 

  • Current user actions counts don't match our normal traffic, How can i validate my counts?

 

  • What is the user session query to get user actions as below query didnt help me and responses are not correct
    • SELECT useraction.name as "App pages", AVG(useraction.duration) as "AVG Duration" , COUNT(useraction.name) As Requests FROM usersession where useraction.application IN ("APP-Production") GROUP BY useraction.name ORDER BY Requests DESC limit 100

 

  • How can we get specific journey KPI, example: for home page (number of users, duration)

 

  • Some of user actions pages "Loading of my page" & "Touch on text" have internal requests "Display my page"
    • How can i get count of the internal request "Display my page" as it is the nearest meaning to the page hits.

 

  • Is there a recommended user session queries that I can use for my app dashboard as a presentation for our CIO.

 

I really need your support.

 

Thanks,

Ahmed

3 REPLIES 3

Thomas_Wirth1
Dynatrace Pro
Dynatrace Pro

Hey Ahmed,

I assume you are using the Dynatrace Android Gradle plugin to auto-instrument your app. This documentation section explains the logic that the agent uses to determine the user action name for the "Touch on" actions. The "Loading <activity>" user actions are generated, when a new activity is (re)displayed without a (monitored) user interaction.

You can customize the user action names by using the Dynatrace.modifyUserAction method call.


Ahmed_mohamed-s
Newcomer

Thank you, we have disabled user actions in configuration and now all touches are cleared and only pages are displayed .


But also we have misunderstanding in the user actions:

1- Loading application action has multiple sub user actions "App start, display splash, display dashboard" however some time they are loaded in separate actions (Loading splash and loading dashboard activity)


2- How can I get number of user actions per page and average duration.


Thanks,

Ahmed

"App start, display splash, display dashboard" are lifecycle events. A lifecycle event is always part of user action. When you have a button and the button generates an intent to start a new activity, then you will have a "Touch on <button>" user action which has a lifecycle event "Display <new activity>" as child element. The agent will add additional data (like web requests) to the user action, to provide a better overview of the impact from the button click. When there is no monitored user action, then the agent will generate a new user action based on the first activity ("Loading <new activity>"). This user action is needed to aggregate the lifecycle event and other data (as web requests).
In the case of the splash screen scenario, the agent assume that both lifecycle events belong together and therefore will aggregate them if the time constraints are fulfilled. When the behavior is inconsistent, then you can adjust the default time settings.

2- How can I get number of user actions per page and average duration.

I'm not an USQL expert.