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

Capturing POST payload in AppMon 6.5

damunoz
Newcomer

I am using AppMon 6.5 to monitor an Application running in Oracle Weblogic with an Apache server as web server.

The clients perform a lot of HTTP POST requests with json payload and I would like to capture the sent data.

I have configured Web Server sensor (Apache agent) to capture all request headers and request parameters and the Servlet sensor (Weblogic agent) to capture all request headers, request parameters, session attributes...

But I am able to capture only the POST parameters when the clients send the parameters as form-data (e.g. login request consists in two post parameters sent as form-data)

The documentation of Web server sensor states this

Request Parameter Capturing

Capturing the request parameter has some limitations on the web server:


  • Only
    the first 20.000 characters of the combined string of query and POST
    body will be analyzed. Parameters which are beyond that limit cannot be
    captured.
  • Reading request parameters from the POST body is only supported for IIS7+ and Apache based web servers.

https://community.dynatrace.com/community/display/...

Is it not possible to capture the POST data sent as body (e.g json content)??

Thanks in advance

Regards.

9 REPLIES 9

BabarQayyum
Leader

Hello Daniel,

Yes you can capture the payload data with the custom sensors configuration and how to create and use, please just watch the below video for more understanding.

http://bit.ly/dttutorials

I hope this will be helpful for you.

Regards,

Babar

The link points to the playlist and I don´t know which video you are talking about. plesae, could you post the video url?

In that video I can see hoy to capture post parameters sent as form data which is what I am doing right now.

My problem is the post data sent as application/json for example. That body string is not shown in node details though the Web sensor (or Servlet sensor) is configured to capture all the data.

BabarQayyum
Leader

Hello Daniel,

I also read on another post that "Dynatrace can only capture HTTP Parameters - for both GET and POST Requests. But if your POST body is e.g: XML or something other protocol then Dynatrace doesnt capture the full body. If you want to extract certain data out of the body you should try to capture it on the server-side code execution by defining sensors for methods that are processing the individual data parts of the POST BODY"

Regards,

Babar

andreas_grabner
Dynatrace Leader
Dynatrace Leader

Dynatrace DOESNT allow you to capture more complex HTTP POST parameters such as JSON or any other non HTTP Parameter-based parameters. Its an outstanding enhancement request.

But - if you have data that come in as JSON I assume it is later processed by your "business logic" - which means - some of these parameters are ending up being passed to methods are method arguments. I typically suggest to create sensors for these methods and capture these arguments.

Andi

Hello Andy,

it actually makes sense to be able to capture body contents in the situation where you can't deploy agents on the subsequent tiers. Take for example applications such as Siebel. We can't instrument the application layer. But the web server is IIS.

Thanks a lot,

Denis

I know it makes sense - I understand the use cases. however - dynatrace doesnt do it right now. It could potentially be A LOT of data we had to capture. Or - if you just want to do partial capturing then we would need to run string operations on the content and then just capture the information which is interesting for you. both options mean that it would impact the performance on your agent.

There are several RFEs out there that talk about the same capability though. I will pass this discussion on to the dev team

Hi Andreas,

Thanks for all of the great information; I will be sure to share it with my client. I could not find any RFEs could you please provide links to them?

Lawrence