inspectIT / inspectIT

inspectIT is the leading Open Source APM (Application Performance Management) tool for analyzing your Java (EE) applications.
http://inspectit.rocks
539 stars 131 forks source link

Does InspectIT 1.6 record http request parameters? #234

Closed youjenli closed 7 years ago

youjenli commented 7 years ago

Hi everyone

Does InspectIT 1.6.9.83 record parameters of every http request to database?
We may have to develop custom feature based on these information.

pbouillet commented 7 years ago

Hi @youjenli ,

I'm a little bit confused. You are mentioning http and database which are not really connected in any way. I'll answer both of them:

If you are missing something here, let me know and we can take a closer look onto it why it is not included.

youjenli commented 7 years ago

Hi @pbouillet

Inorder to generate service quality report automatically, we want to write tools to calculate average response time of every service entry in several Struts 1 application.

Struts 1 utilize a http request parameter which is called method to provide a feature for developer to implement multiple service entry within single Java Class, then expose these service entries through the same URL. Since many service entries in those Strusts 1 application mentioned above were created based on this mechanism, I think we have to obtain the value of method parameter in every http request to distinguish these entries, so that the calculation of average response time will be accurate.

That's why I am looking for the detail record of every http request.
I wonder where did InspectIt store these information?

pbouillet commented 7 years ago

Hi @youjenli ,

I understand. We currently display all of these http request parameters in the context of a specific invocation sequence. Just right-click in our UI on the first element in the invocation detail tree and open the details and you see all the relevant parameters / header information etc. This data is currently stored in our internal memory buffer and can not be accessed e.g. via our REST interface. If this would be needed, feel free to extend the REST service to include this and create a PR for this!

ivansenic commented 7 years ago

@youjenli What could be useful to you is our business context definition. There you can define business transactions based on that method parameter from the http request. That way you would basically define business transaction for each "entry" you have. Once you have that defined, if you connected inspectIT with influxDB/Grafana you can easily see all the averages for each BT in Grafana with graphs, etc.

Check our documentation on that here: https://inspectit-performance.atlassian.net/wiki/display/DOC17/Business+Context+Configuration

youjenli commented 7 years ago

Hi team members of InspectIT

I have read Business Context Configuration to learn more about this feature. In a word, Business Context is a feature which let users tag service invocations at Invocation Sequences View according to particular information in their http request, we are not able to modify the criteria which classify all service records into specific aggregations in URI Aggregation View via this feature, right?

If I am right, I wonder if InspectIT has features which let us aggregate service records and analyze their performance base on http request parameter? This is important in case of monitoring performance of Struts 1 structured application.

ivansenic commented 7 years ago

Hi @youjenli,

No we don't offer aggregation based on the http request parameter. But again I think business context is a way to go here imo. You would define business transactions based on the request parameter (inspectIT supports this). You can even use dynamic naming to have only one business transaction definition and it will generate number of business transactions based on the number of distinct parameter values.

In the inspectIT UI at the moment you can only get this information in the Inovcation sequence View. But if you are using influxDB+Grafana then you can have nice dashboards there displaying such information:

image2016-9-13 15-10-2

youjenli commented 7 years ago

Hi @ivansenic

Thanks for your advice, I have build up a dashboard to visualize the performance of a Struts 1 application today!