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

DT and PowerBI integration

roushan_kumar1
Contributor

Hi-

Has anyone integrated DT with PowerBI for environment api reports?

I want to use PowerBI for continuous reporting. Means Timeseries and Problem API chart should be feeding continuously to the PowerBI and we could easily customize the time frame for all metrics available.

16 REPLIES 16

Yosi_Neuman
DynaMight Champion
DynaMight Champion

Hi @Roushan K.

Yes @Gil G. integrate them together

Yos


dynatrace certificated professional - dynatrace primer partner - Matrix Soft Ware Division - Israel

can you please help me the way out.

gilgi
Pro

Hi @Roushan K.,

It's a bit complicated to explain all in writing but I'll try to summarize the steps though.

Before hand, note there is a performance clinic I relied upon as far as I recall at https://www.youtube.com/watch?v=LpH8IlUeBSU

Now for the steps:

1. in your powerBI report define a web data source with the url for the API you need (for each query you need a different data source on the report).

In this data source you can also use parameters such as host name and token so that the report may be reusable for other tenants if you need it.

This example gets a list of the hosts in the environment.

DON'T FORGET to add the http headers required such as the "Authorization" for the token and the "Accept" to specify you expect json data.

2. Once the data source is defined, because it is in JSON format, you need to convert it to a tabular format. In the example above it's simple, but it could be that you'll need to traverse through the JSON result first until you get to the array part that includes the result. Once there, "Convert To Table"

The above shows the results of the initial data source results. Use the "To Table" button to convert it to a table. Once pressed, you'll that the yellow header now shows Column1 instead of List.

3. After your data is in a "table format" you need to create the columns to refer to in your reports. Just use the Add Column and refer to the field name you need. Codewise in PowerBI it is (for example):

= Table.AddColumn(#"Converted to Table", "Host Name", each Record.Field([Column1],"displayName"))

Repeat these steps as necessary. If you go to advanced query editor you may end up with the following query code:

let

Source = Json.Document(Web.Contents("https://" & HostName & ".live.dynatrace.com/api/v1/entity/infrastructure/hosts?showMonitoringCandidates=false&includeDetails=true", [Headers=[Accept="application/json", Authorization="Api-Token XXXXXX-XXXXX-XXXXX"]])),

#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error),

#"Added Custom" = Table.AddColumn(#"Converted to Table", "Host Name", each Record.Field([Column1],"displayName")),

#"Added Custom1" = Table.AddColumn(#"Added Custom", "OsType", each Record.Field([Column1],"osType")),

#"Added Custom2" = Table.AddColumn(#"Added Custom1", "OsVersion", each Record.Field([Column1],"osVersion")),

#"Added Custom3" = Table.AddColumn(#"Added Custom2", "Host Group", each Record.Field(Record.Field([Column1],"hostGroup"),"name"))

in

#"Added Custom3"

4. Once you apply and save the query you are ready to build your report. Just choose your visualizations and drg the columns from the right part to the visualizations.


For example:

or

In the last example you can see on the right many queries used for the reports and green/black columns in charts represent time periods comparisons.


Hope this helps.

gil.

Thanks a lot Gil for taking out time and writing this. I will try it and will let you know.

roushan_kumar1
Contributor

@Gil G Thanks for your help

it was very useful and worked for me.

Malaik
Helper

Hi @roushan_kumar1 

I will be very grateful and appreciate if you can help to make some work around that

My personal Email: malaik.5@hotmail.com

My WhatsApp: 00966508181250
Thanks a lot

Sharing Knowledge

@Malaik- Please let me know what specific you are looking for. I can definitely assist you with that here. 

Thanks @roushan_kumar1, I want to link Dynatrace to power BI from scratch.

Sharing Knowledge

@Malaik - You will need PowerBI desktop app + Dynatrace Tenant URL+ Dynatrace APi authorization token to start.

If you know basics of PowerBI then you should be good to go.

I will highly encourage you to watch the video- https://www.youtube.com/watch?v=PNX0jCL8AHc as suggested by @julien_duhamel1 

 

In the video the real powerbi integration starts from 17:30. Give it a shot. If you still have any question after that I can assist further with that.

Touching the IT control process is getting more complicated especially with enterprises moving towards hybrid cloud environments. The effects - positively or...

@Malaik - Just checking do you still need any help?

Thanks @roushan_kumar1 for your time,

 

Yes Im trying some works, but Im blocked to download and Install, the customer blocked every thing.

Sharing Knowledge

julien_duhamel1
Participant

Hello,

Dynatrace Services offer a complete BI solution. I'm using it in my company, this a good way to democratize Dynatrace usage.

A Performance Clinic link: youtube.com/watch?v=PNX0jCL8AHc

 

Touching the IT control process is getting more complicated especially with enterprises moving towards hybrid cloud environments. The effects - positively or...

ct_27
DynaMight Helper
DynaMight Helper

Does anyone by chance have a copy of the template from the video?

🤣:alert_blue::fist_bump:

I asked my self the same thing, and was searching in the video's comments to try to find it.

 

I seems awesome one.

Sharing Knowledge

The template is not free, you will have to pay Dynatrace to get them. 

Than you so much for the reply, unfortunate that Dynatrace does not provide the templates.   By chance have you found a way to handle the "Next Page" process?  I've begun pulling a lot of data using the API but I constantly run into the page limits.

Is there some automated way to have the Query call NextPage and gather all the data?  Until then many of the reports I've built I can't fully use because they don't tell the full story.