Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

- Dynatrace Community
- Dynatrace
- Ask
- Dashboarding
- Re: Using a Geometric Proof to Brainstorm Automation Capability

Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Pin this Topic for Current User
- Printer Friendly Page

Options

- Mark as New
- Subscribe to RSS Feed
- Permalink

28 Jun 2022 10:03 PM - last edited on 24 May 2023 02:53 PM by Michal_Gebacki

Hello,

Below you’ll see that I typed some words and formed them into sentences. Hopefully you find them interesting!

Dynatrace offers a lot of capability with its dashboarding and you can put a lot of tiles on it. If you’ve checked out the JSON metadata, read documentation, or used the API to create dashboards you probably know these constraints.

- The Dashboard has a 5016x5016 pixel area
- Tiles must be divisible by 38

**The Puzzle**

If you’re in charge of creating dashboards for your organization one option would be to use the UI tools. Frankly, this option is boring and if you have to create a lot of dashboards it can become tedious and time-consuming. Instead you should write an application that automates your work and luckily the Dashboards API offers all the endpoints you need to do this.

If you’re like me and work for a large enterprise you’ll probably have hundreds of different variations of dashboards you’ll need to automate. Maintaining consistency with your application’s logic will be important as your work scales. That will be especially true for the code that organizes and places the tiles on your dashboard.

**Geometry!**

As I was brainstorming ideas on how to automate the grouping of tiles I realized that this dashboard has two sides of the same length. I’m 87% sure this means that the Dynatrace dashboard is a square. So I checked out some geometric proofs and came up with a potential way of organizing tiles.

This proof is based off rational lengths. You can prove the area of a square by coming up with a smaller square with side-length ‘p’ and separating its sides into ‘q’ equal parts while maintaining that p/q is RATIONAL.

We can test it out using the constraints I mentioned previously. First we know that the Dynatrace dashboard has side lengths of 5016 pixels. That means that

A= 5016^2

L = 5016

Now we need to come up with a square with a smaller area. How about a square with a side length of 912 pixels. (912 is divisible by 38)

p = 912

Now we have to separate the sides into q equal parts and p/q must be rational

q = 4

912/4 = 228

Looks like that checks out. See below picture for a visual representation on the dashboard

912/2 = 456 is also rational so we could replace some of these tiles with larger ones

The entire square doesn't need to be populated with tiles either, you can still understand the two equal sides here in this picture

**Q&A**

So yeah one possible way to maintain a way of organizing your tiles automatically would be to create smaller squares of tiles that meet the rational side length proof.

I'm honestly still not sure if I'm even correct on this but hopefully this can generate some discussion!

Cheers,

Nick

Solved! Go to Solution.

Labels:

Reply

1 REPLY 1

Options

- Mark as New
- Subscribe to RSS Feed
- Permalink

08 Jul 2022 01:21 PM

Hey, automation is definitely something that we try to live up to.

Let me ask some follow-up questions to get more context about your world:

* What kind of dashboards (metrics, for which jobs,..) do you usually automate, or do you want to automate, if its not possible at the moment?

* Did you use dynamic filters before. Because we have often seen that users replicate dashboards for the "wrong reasons" or because Dynatrace was simply too limited back then.

* What kind of visualizations do you usually place? and...

* How would you decide which metric/visualization pair would take the most or more space than others?

* The proof you provided is a way of making sure that whatever you put on a dashboard will fit, correct? That's saving the constraint puzzle correct?

Looking forward to your response!

Reply