dynatrace-oss / DynatraceDashboardPowerups

Chrome Extension to boost DT dashboards
Apache License 2.0
39 stars 12 forks source link

HeatMap - Legend colors are not all unique #115

Closed jshuff27 closed 2 years ago

jshuff27 commented 3 years ago

For the heatmap to work it requires that each legend color exist and be unique. In some cases, DT is assigning the same color to more than one object, even when only 5 categories are being returned. Then if you have many categories DT also stops assigning legend colors. I see those code attempts to handle this around line 5,441.

As a result we get a heatmap with both the caught errors on the Y-Axis.

Not sure if there is a way to not be dependent on the legend colors. This will likely resolve both issues. 1 that duplicate colors will have no impact. 2 there will essentially be no limit to the number categories.

The next problem I foresee is when DT puts "30 more items" in the legend.

jshuff27 commented 3 years ago

I converted the chart from Custom Dashboard to Data Explorer and it fixed the problem since Data Explorer ensures unique colors. At the moment DT does not officially support Stacked Columns but the conversion somehow worked.

jshuff27 commented 3 years ago

I increased the limit above 10 in Data Explorer and sure enough the colors were no longer unique. So, back to original question. Any way the code could be independent of legend color?

TechShady commented 3 years ago

Can you send a screen shot of your dashboard? I have another option that might work for you, but need to see your dashboard first.

jshuff27 commented 3 years ago

Capture

Top map is with Custom Dashboard. Bottom map is with Data Explorer. Data Explorer limit is set to 20....i notice now the rows are compressed. I believe earlier they expanded when i increased the size of the Tile(will figure that out later).

This is what it looks like pre-rendering Capture2

TechShady commented 3 years ago

So Apdex by application for both heatmaps, correct?

jshuff27 commented 3 years ago

that is correct.

TechShady commented 3 years ago

I’ll send you a link to another workflow. It supports up to 28 apps. You select each app and then the next page has options for metric like Apdex and interval like 1 hour. 5 minutes. 1 day. Etc. Then the last page allows you to specify thresholds for each application.

jshuff27 commented 3 years ago

hmmm...wow...that sounds interesting. So powerful. Can't wait to try it.

The UseCase we're solving for at the moment is for our Associate - CIO who is looking for a view into the health of the many applications his many departments are responsible for. The view needs to be small enough to not take over the dashboard while using colors so that he can get a status-at-a-glance. The heatmap you've created is perfect for this. You solution sounds like it may still fit our need. Will give it a try and see.

TechShady commented 3 years ago

Go to: https://dynatrace.github.io/BizOpsConfigurator/#deploy/persona/App%20Owner/Application%20Overview/Application%20Heatmap%20(%F0%9F%92%8E)

Select Next. Enter a overview name (optional). Select your applications (from 2 up to 28). Select Next. Select your interval (-5m is the default). If you select an interval -1d or greater and want to use round down, specify it or leave it blank. Select a color for the column headings or go with the default. Since your doing an Apdex heatmap, leave the remaining options as is and select Next. Keep the threshold base as high (since a high Apdex score is good). Adjust any of the thresholds for each application as needed. The default is .9 Apdex for warning and .8 Apdex for critical. Select Done. And you should get something like this:

image

TechShady commented 3 years ago

Oh, and each of the application names in the heatmap dashboard are links. Click one and it will take you to the application page for that app. And then you can triage from there.

Let me know how it goes.

jshuff27 commented 3 years ago

So far so AMAZING.....i created a sample dashboard and will review it with the team. I'm just constantly amazed at what you guys are doing here. And so quickly. Hopefully this all eventually makes it into DT native. Thanks so much for the solution. I'll get back to you with what the team thinks of it.

TechShady commented 3 years ago

Thanks for the feedback. Let us know if there is anything else we can do...