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

How to measure/determine for successful and failed request/Business transactions in AppMon?

christopher_teb
Organizer

Hi,

My customer wants a dashboard for successful and failed business transactions of a particular Service carried out on the monitored applications. I tried to create measures and BT for purepath such as,response time,count etc. In AppMon we receive only purepath/web requests like below

snapshot.jpg

So experts advise me on how. I happened to be the AppMon Engineer in this big company, therefore i need most of your help.

Br,

Chris

18 REPLIES 18

Radu
Dynatrace Pro
Dynatrace Pro

Hi Chris,

This is very open ended. What do you understand by 'business transaction of a particular Service' ? How do you define success/failure for these transactions?

AppMon Business Transactions are one way to achieve this, however, it can become quite expensive (due to processing, amount of data generated, etc.). But you do get the ability of baselining it, you get a unique measure of failure rate that is created for that Business Transaction, and you can use more complex filtering, splitting, result calculation, etc.

If your 'business transaction of a particular Service' can be summarised by a web request, then it is simpler than the whole Business Transaction option as you can create a measure for HTTP Responses and check that you get 200 for those calls as success and something like 4xx or 5xx as failure.

Also, what version of AppMon are you on?

Also, you can post some screenshot of what you tried to configure and the community can help with those.

Regards,

Radu

Thanks Radu,

I use 6.3.9.1009 version.

I sent these web requests to the app owner and categorized them like in the snapshot. snapshot.jpg

As the snapshots indicates, i created measures and BT for each accordingly as in the following snapshots.

measure.jpg

bt.jpg

Hi Chris,

If this BT that you created doesn't capture the data (or even any purepaths) required, then you might want to use a different measure for the filter. I think the Web Request Count measure would be looking only into the first node in the PurePath.

Try using "Web Requests - URI Pattern Value" measure from category "Transaction Based Measures > Business Transaction Evaluation/Filter/Splitting Values".

Let me know if this makes a difference.

Regards,

Radu

christopher_teb
Organizer

Hi Radu,

I really appreciate your support,

I have 4 qns still to get clarified of;

1. Whats the difference between the measure i used and this (web request-url-pattern).

2. When a web request/measure is put into a BT, is considered to be a business transaction on the business side?

3. Whats basically required to publish on the dashboards for DC monitoring and management side of view?

4. Response time; how does Dynatrace determine for the request time of a web request or its also combined in the response time?

My dear experts, those are qns am asked by the application owners.

Br,

Chris

Hi Chris,

1. All measures under the category "Business Transaction Evaluation/ Filter/ Splitting Values" cannot be charted directly. Instead they exist purely to be used within Business Transactions, either for the filter, results, or splitting sections of the BT. On the other hand, while the Web Requests Count is great for use with charting, I'm unsure it works as well with BT filters (I have had some previous experience where the specific BT measures worked better than the other Server Side measures).

2. You select the scope of the BT from the radio buttons labelled "Server side", "User action", or "Visit" - regardless of what you put into the BT, these buttons affect the scope of the BT. The scope of the BT also affects what results are being calculated by default, and also what measures you can use within the BT (for example, for a "Server side" BT you cannot use user action measures).

3. I'm not sure I understand this one. What do you mean by DC monitoring and management side of view?

4. A few distinctions should be made here:

  • Web Request Response Time: the processing time it took to complete a web request, including (if applicable) Servlet 3 asynchronous processing time.
  • PurePath Response Time: the total execution time of the PurePath excluding any asynchronous paths that may take longer
  • PurePath Duration: The time from the first method until the last method completed, including asynchronous method calls that may finish after the first method completed.
  • Execution sum: sum of all execution times of all nodes on PurePath

Example PurePath:

  • doGet - 100 ms
  • doSomethingAsync - 550 ms
  • doSomethingElseAsync - 500 ms

For the above PP, we have :

  • Web Request Response Time = 100 ms
  • PurePath Response Time = 100 ms
  • PurePath Duration = 650 ms (assuming both Async nodes start at the same time)
  • Exec sum = 1150 ms

Hope this helps,

Radu

I guess your app owner is in big hurry. You need to ask to spare some time in R&D and setting up the useful use cases. Prioritize requirements and get started, refer the Documentation and We are here to help. 🙂

1. Create KPI dashboard for Monitoring critical health of application

2. Identify top 10 Business transaction that generate the most revenue. Create Total, Success, Failure, Failure Split and FailureSplit Alerts for each Transaction. Create & scheduled Daily Report for these.

3. What are the interfaces in application? Build dashboards to monitor them.

4. What issues are faced most commonly? Try building use cases around them.

In case of query let know.

Best Regards, Rajesh.

christopher_teb
Organizer

Hi Radu,

How to create a measure that captures the http codes and results those codes for the successful and failed transactions e.g 2xx,5xx and 4xx?

Br,

Chris

christopher_teb
Organizer

Hi Radu,

What is the difference between "web request count" and "Web Requests - URI Pattern Value" in terms of results? And what should be used

Br,

Chris

Hi Radu,

You can define the BTs also on the specific Method (its invocation and Return value). Here is sample Diagram that describes your requirement:

Let me know if you have any questions. Regards, Rajesh.

Hi Rajesh,

Just two questions;

1.Are these the "transform regex" specifically used for successful and failed method return values.If yes, kindly with the help of "method return value" measure snapshot guide me on that.

2. I mostly find this method "doFilter()" for all purepath in application transactions, shall that regex work it? snapshot.jpg and snapshot.jpg

Br,

Chris

Hi Chris,

1. No, The transformation regex feature, AFAIK, is available in the Method Return Value and Method Argument Value Metrics. So, yes, I can help with capturing the PurePath based on these. Just let me know what you are getting in the method return value. (Get in touch with App team or dev with discussion on identifying the appropriate method.)

2. No, You should NOT instrument generic methods in generic classes of any framework(servlet here). Such as doGet, doPost etc. These are very organic and cause high overhead. Instead as suggested, reach out to dev team for identifying the methods (with which mapping is one-to-one and has lesser overhead+call rate). Regex will work @ argument but will also place an explicit sensor which you should avoid.

Let me know in case of more queries. Regards, Rajesh.

christopher_teb
Organizer

Thanks Rajesh for your support in this.

Ok My objective in this is that, my Bosses what charts/graphs that represent the total traffic,successful and failed transactions of each service/purepath as carried out in each application.For that requirement, this is what i did you can advise.

For traffic: i created measures calculating for "web requests count"/purepath.

For failures: i used the default measures for failures found in the BT

For successful:Before the above discussion, i filtered purepaths in the BT with zero errors as shown in the snapshot and as guided by James in this link below, snapshot.jpg

https://answers.dynatrace.com/questions/179399/on-...

After doing that, i came up with dashboards as in this snapshot, snapshot.jpg

PLEASE I ADVISE

Br,

Chris

Dear Chris,

1. The Web Request Metric (may) lacks complete context for defining what is meant by a failed transaction in business term vs technical term. For example, when some Web Request ends up in 4xx or 5xx it technically means that transaction was failed. Notion of 4xx/5xx is good only for site admins, not for Business person(your boss). In my experience, Method Metrics are better candidates for tracking

(1) Count & Response Time

(2) Failure as contained in method Return Value

(3) The nature of return value which is helpful for identifying whether transaction failed due to say, Backend timeout (technical) or due to user input error (invalid credentials, not enough funds in account etc.). Contrast to relying upon Http Status codes which are '200'(served) even when a transaction is failed in business sense.

(4) For Traffic: Web Requests are good way to understand how much traffic is coming on app

(5) For Failures: For web request may or may not be good. Because as explained above.

(6)BT with zero errors : This is incorrect configuration. Because the logical operator among the various rules you are using is AND.

(7) I cannot advise on the Chart since I have no way of knowing how you have configured each one of them.

Don't miss to check Dynatrace Documentation in case of any doubt.

Regards, Rajesh.

christopher_teb
Organizer

Thanks very much for such enlightenment.

I have still few qns for the above:

1. For the Business persons, which type of methods should i use because there are very many methods as in the snapshot, snapshot.jpg

2.Dynatrace picked the following purepaths in the snapshot below from the application,snapshot.jpg

I asked app owners about it and replied as in the snapshot,snapshot.jpg

My qn here is, they all use the same servlet method once you click differently on each, when i create a method metric measure shall dynatrce differentiate each?

3. For the case of Business i should use method metrics and return values for successful and failures in BT, right??

4. "6)BT with zero errors : This is incorrect configuration. Because the logical operator among the various rules you are using is AND."

Was only the logical operator that was incorrect?

Br,

Chris

1. They are not methods, these are called measure types. Watch this video. It will be clear.

2. Please see bit.ly/dttutorials. It has lots of training videos.

3. There are many filters in Measure such as 'contains', 'begins with', 'regex', 'not regex' etc.

4. Cannot say unless I see how your measures are created.

Here are few relevant videos you should watch:

https://www.youtube.com/watch?v=HdCqPuFCfOQ

https://www.youtube.com/watch?v=YT6BjtzmHn4

https://www.youtube.com/watch?v=BLz7qc5tstU

Regards, Rajesh

christopher_teb
Organizer

Thaks Rajesh for your feedback,

Ok, all i needed is just the confirmation on what i had done. Those tutorials have taken a lot but what i wanted is to get the explicit and exclusive explanation on this real environment other than easytravel or Alfresco. Sorry to call measure types-methods that was a mistake due to too much pressure for the dashboard publishing. This is because i don't want to give wrong info on dashboards.

Dashboads shall be for,

1. App owners

2. Business stakeholders

3. Monitoring department and

4. Management department/Managers.

For the above list i wanted to know which type of measures and BT's should be created.

Br,

Chris

This is very open ended question. I suggest you to gather the requirements of each team. Then create dashboards for users of Dynatrace. And believe me, EasyTravel IS a real world example. It is just that its on experimental scale.

christopher_teb
Organizer

Thanks Rajesh for your support.

Creation of dashboards is not the problem but what exact BT with relevant measures to put.

Dashboard requirements

1 App owners: Just need their technical view.

2. Business stakeholders: Just need the traffic,successful and failed transactions

3.Monitoring department: Identify problems found in transaction and app performance.

4.Management department/Managers: This is the same with 2