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

Generating Query hotspot reports from dynaTrace

prajakta_kalyan
Newcomer

Hi,

I want to generate database hotspot report using APIs provided by Dynatrace. I am able to generate a report for Database hotspot dashlet through UI (using DynaTrace client) but I am unable to find an API method which will generate a report for Database Hotspots only.

Any help on this will be appreciated.

11 REPLIES 11

prajakta_kalyan
Newcomer

@Andreas G., Could you please help me on this or suggest an alternative solution?

prajakta_kalyan
Newcomer

I found an alternative way to achieve this by referring a question on the forum https://answers.dynatrace.com/questions/134266/fetching-dashlet-data-using-rest-api-1.html.

1. Create a dashboard with 1 dashlet only i.e. Database Hotspots dashlet.

2. Generate a report for this dashboard using http:// <ip>:<port>/rest/management/reports/create/<dashboard name>

But I could not find any REST API which can create a dashboard and add required dashlet to it.
Please let me know if there is any API using which I can achieve this.

Hi Prajakta,

You can access the all you Dashboards using the Rest URL

<a href="https:// Server">https:// Server</a> IP>:8021/rest/management/reports/create/<You Report Name with %Encoding>

And, you can as many dashlet (upto 50) in the dashboard.

I think you cannot remove the other dashboard tabs as they are part of DB dashboard. Or you can use DB Hotspot dashlet. If you wish to skip any part of dashboard, you can implement a plugin to fetch XML and apply rendering logic:

<a href="https:// Server">https:// Server</a> IP>:8021/rest/management/reports/create/<You Report Name with %Encoding>?type=xml

Let me know if you have further questions.

Regards, Rajesh.

Thanks Rajesh.
Alternate way is to:

1. Create a dashboard with 1 dashlet only i.e. Database Hotspots dashlet.

2. Generate a report for this dashboard using http:// <ip>:<port>/rest/management/reports/create/<dashboard name>. So this report will contain data related to Database Hotspots only (as there is no other dashlet present in the dashboard).

Now the hurdle is to automate the creation of dashboard and adding a dashlet to it using REST API. Could not locate any API in the documentation. Any idea about this or any workaround?

There is indeed an API called Plugin Development Kit (PDK), have a look. Basically, you can create a Task Plugin that can be scheduled. You can use Java HTTP to get data from the URL and email it using Javax Mail.

@Rajesh S.How can I create task to create a dashboard and add dashlet into it? So that I can create task plugin for the same.

Hello Prajakta,

You can create dashboard with dashlet named "Database Hotspost", see the snapshot.

Hello Rajesh,

Thanks, we did created Dashboards manually. But can you please guide us in how to create a task for this creation and then create a task plugin for the same? We intend to use task plugins in our automation codes to create dashboards and add specific dashlets to it.

Regards,

Nikhil

Pl. check the Andres's suggestion, he has cool Tuts on that. Also, You can grab a copy of Extended email plugin to have look at @Eugene T. 's source to have an idea how to do it.

andreas_grabner
Dynatrace Leader
Dynatrace Leader

Hi. Let me chime in on this as I also just got pinged about this via email. The question via email is to provide more details and documentation on how to create plugins to dynamically create dashboards. Here are my thoughts

#1: USE REST APIs vs. TRYING TO CREATE DASHBOARDS ON THE FLY

I think this was discussed in this thread already - and I totally support this approach. Use the REST API to query data from EXISTING Dynatrace Dashboards. You may have to create a couple of pre-configured Dashboards that contain certain Dashlets. Then query them through the REST API.

#2: Not all Dashlets provide good reporting

In the email it was brought to my attention that not all Dashlets are great for reporting. That is TRUE! Dashlets mentioned were Memory and Thread Diagnostics. For these I recommend to use the REST API that we provide to query Resource Dumps & Memory Dumps

* Resource Dumps: https://community.dynatrace.com/community/pages/vi...

* Memory Dumps: https://community.dynatrace.com/community/pages/vi...

#3: Try to EVOLVE into Sharing Web Dashboard rather sending PDFs!

This might be a hard change because Management often demands PDFs. BUT - Instead of sending PDFs via email that maybe nobody looks at anyway why not create good shareable Web Dashboards that everyone can access WHENEVER they need the data.

Our team invested a lot into our latest Web Dashboard technology and we keep improving it. Once you have a Web Dashboard you can share the link and everyone can access it.

SUGGESTION: provide feedback on missing capabilities in the Web Dashboards via https://answers.dynatrace.com/idea/132999/planned-... - this is the best way forward!

#4: Task PLUGINS to Automate Report Generation

If you still want to go the route of creating your own task plugins that will then create reports on the fly then I suggest you check out my youtube tutorial on creating your own plugins: https://www.youtube.com/watch?v=ZfdzCaSIdjk&t=2s&l...

I hope this helps

Andi

pranali_bandeka
Newcomer

@Andreas G.Thanks for suggesting different approaches.

We wanted to monitor applications for metrics such as method hotspots. query hotspots etc. Is there any way to add these metrics in web dashboards?

youtube video mentioned in #4, we have gone through it. It is very useful and we did clear our basics regarding plugin development. We could create monitor and action plugins. Any specific document/video to create task plugin to create analysis dashboard?