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

This product reached the end of support date on March 31, 2021.

Sensors or measures for capturing JSON request or response parameters

aganapathi
Participant

Does dynatrace appmon have sensors or measures that allow capture of JSON request parameters?

We have an application that uses JSON requests heavily and wants to create split measures based on certain key flags that are passed as a part of the JSON request.

If these flags were being passed in the HTTP request POST body or as a cookie , I am familiar with the method to capture this value. I would go to the ASP.NET sensor properties and set the source to Parameter (for POST parameter) or Request Cookies (for cookie value) and set the attribute to the parameter/cookie name.

Once the value is tracked, I can capture the value using an evaluation measure.

What do I do if I need to do the same with JSON request/response parameters?

Any assistance would be helpful.

Thank you!

6 REPLIES 6

david_n
Inactive

Hello Ashok,

Are you trying to do something similar to what is attempted in this post?

https://answers.dynatrace.com/questions/84910/how-...

As mentioned by Andi, details can be captured on the server side by the agent in most cases but values on the JSON side are more difficult.

What you could check is whether the details in PurePath for the JSON entries have any information that might be valuable to you. To get to the details you can right click on any entry and select details.

Thanks,

David Nicholls

You can also take a look at this and see if it helps you to get the metrics that you would like.

https://answers.dynatrace.com/questions/111355/how-to-create-new-metric-from-json-output-obtained.html

Thanks for the response, David.

I am unable to open the URL

https://answers.dynatrace.com/questions/84910/how-...

as it gives me a permission denied error.

Could you paste the information available on this answer in the body of your reply?

I'm not sure why I am getting a Permission denied error....

David,

I looked at the root node for one of the purepaths associated with the request that processes the JSON requests and in the details pane, I do not see any parameters expect for a single query string parameter. This request is supposed to have 12 JSON request parameters -

Can you tell me if I am looking at the right place?

Thank you!

david_n
Inactive

Hello Ashok,

A user was trying to capture the servlet post body with JSON format:

"I am working with a customer on a QuickStart. They are on 5.6 and Java/Tomcat. All the code are organized through a dispatch servlet with HTTP POST. The POST body are JSON format (not name/value pair). I understand we can capture POST body with servlet request parameters, but it seems only work with parameter/name value pair. Is there a way to capture the JSON POST body?"

Here are the answers that were posted to their question by various members of the forums:

"Unfortunately, we cant capture individual values out of the JSON Body. You need to capture the values somewhere on the server-side purepath, e.g: a method argument or return value."

"You cannot do it automatically but if the JSON is not to complicated you might want to try it with the Regex transformation available for the parameter measure."

"However, this might not work in this case even with a regex. The "Web Request Parameter Value" measure needs a parameter name, but the POST they have does not have one. Here is an example what the POST looks like:

Content Type: text/x-gwt-rpc; charset=utf-8

POST BODY:

7|0|10|https://usmlvcbsdev1.infor.com:8243/com.infor.infopoint.cbs.ui-unified/Main/|BB8E1CF5BC6143D4B85B52E236394FF4|com.gwtplatform.dispatch.shared.DispatchService|execute|java.lang.String/2004016611|com.gwtplatform.dispatch.shared.Action|0BA3B56523ECA5B061846A943557BEEB|com.infor.infopoint.cbs.ui.shared.action.InstitutionAction/2226302930|com.infor.infopoint.cbs.ui.shared.action.InstitutionAction$ActionType/4137796304|EN|1|2|3|4|2|5|6|7|8|9|7|0|0|0|10|0|0|0|

Hope that helps,

David Nicholls

Hello @David N.,

Has this changed at all since the post was first made? Or we still can't capture json objects coming in the HTTP requests?

Thanks a lot,
Alfred