Ultimate UNRAID Dashboard (UUD)


Recommended Posts

7 hours ago, falconexe said:

 

@skaterpunk0187

 

Thanks for the info. I have yet to dive into Unraid.Net. Can you explain exactly how the API is used with this plugin? Anything I can leverage or add from this news into UUD 1.7? Any links or official documentation? Thanks!

The unraid.net connects your unraid server with the site. It gives you access to download your key auto backup of the USB drive (unencrypted for now) and remote access (requires port forwarding). Also if you have more then one unraid server it makes it easy to switch back and forth between them.  I don't think there would be anything to integrate with 1.7 but not positive on that.

Link to comment
14 hours ago, falconexe said:

 

 

That is a new one ha ha. If the data inspector shows clean data, that is very odd. It actually looks like some of our SNs are truncated. Can you share your query? Maybe this one is worth a private virtual meeting or Discord session. I'll have to work around my busy scheduled...

 

@GilbN You ever see this before?

 

 

Thanks for you help, that is most appreciated.

 

Here are a few screenshots.

 

The first shows the query in use (the main part), if you need more, just let me know.

 

The second, shows the serial numbers in the Data View, but the preview showing the incorrect values (it looks like its trying to format it as a number?)

 

The final one, is something is stumbled on earlier, going on the theory it thinks the serial numbers are numbers/integers (numeric only), and formats it like that, the first drive in the list is the nvme one, which has a Serial Number with a Numeric Value only, the second one, is a regular HDD and has an alpha numeric one, so I tweaked the query (well just part A) to exclude the nvme drive, and after that, it shows the serial number correctly for all the other drives.

UUD_Query.png

UUD_QueryWithData.png

UUD_QueryWithFilter.png

Link to comment
5 hours ago, Kykoibrahim said:

i dont have the option to open in a new tab, also my ipmi stats arent showing up on the dashboard but the ipmi tool that i downloaded from CA shows the stats, not sure wheres the broken link.304927034_Unraid3.thumb.PNG.582c9611967aac7a382d27c9d83970f0.PNG347655687_Unraid2.thumb.PNG.264ddae55c76c76297d02279059cd93d.PNGUnraid.PNG.03f3131e514a05c2400f6a46ab9f9178.PNG683940044_Unraid4.thumb.PNG.58d035353805cf48c952c06f8c5efe8f.PNG

Fixed the IPMI issue, increasing the interval and timeout time to 60s and 30s worked. Still having issues with the docker images though.

 

Link to comment
On 4/6/2021 at 4:15 AM, falconexe said:

 

@nuhll

 

This is due to a bug in UNRAID 6.9X and NOT the UUD. This has been well documented in this topic and the official 6.9 update topic. I have not heard if this is fixed yet, but please do some research before you suggest the UUD is causing the issue. It is true that that plugins do check drive status, but the bug in the OS itself is why they do not SPINDOWN after.

 

Unless I am mistaken, and/or we are talking about 2 different things, let me know. Furthermore, if you don't want the drive stuff, just simply remove the panels in question. Sorry it didn't work out for you... 🤷‍♂️

 

P.S. My drives spin 24/7 and have been for 7 years without issues. Electricity is cheap where I live and it is well worth instant access rather than to have to wait for an array of 30 drives spin up. This has worked for me well since 2014.

 

Yeah i thought so, at first also, but then why it disapears when i remove the dashboard? 

 

Sadly its not cheap here, i pay around 0,35€ per kwh. 

Link to comment
2 hours ago, nuhll said:

why it disapears when i remove the dashboard? 

Because the bug in unRAID was that changes to smartctl made it so drives would not spin down when smartctl is called as it is in the telegraf.conf file.  Telegraf is an integral part of the UUD setup.  If you disable UUD, you remove Telegraf and its calls to smrtctrl so you no longer see the problem.

 

Alternatively, you could keep UUD active and just comment out this line in telegraf.conf. 

 

[[inputs.smart]]
#   ## Optionally specify the path to the smartctl executable
   path = "/usr/sbin/smartctl"

 

However, as far as I know, that issue was fixed in unRAID 6.9.1?  Perhaps someone else can confirm this.

  • Thanks 1
Link to comment
2 hours ago, Hoopster said:

Because the bug in unRAID was that changes to smartctl made it so drives would not spin down when smartctl is called as it is in the telegraf.conf file.  Telegraf is an integral part of the UUD setup.  If you disable UUD, you remove Telegraf and its calls to smrtctrl so you no longer see the problem.

 

Alternatively, you could keep UUD active and just comment out this line in telegraf.conf. 

 

[[inputs.smart]]
#   ## Optionally specify the path to the smartctl executable
   path = "/usr/sbin/smartctl"

 

However, as far as I know, that issue was fixed in unRAID 6.9.1?  Perhaps someone else can confirm this.


Thanks @Hoopster. I have heard this is resolved in 6.9.1 as well, and 6.9.2 was also just released.

Link to comment

@falconexe Hopefully this helps resolve some of the broken image links. When I r-clicked on the docker/vm icons and opened in new tab I noticed that the IP address it directed me to was 192.168.1.7, which is not the IP of my server. I pulled the json file and ran a search for that IP and found it hard coded on lines 519, 574, 628, 682, 11280, and 12056. Changing the IP to match my server's fixed all the broken image links.

 

Though with that said, I saw the post where the grafana image plugin developer had implemented that ability and you were thinking of adding it for 1.7. In the mean time I hope this helps some of the other people having issues.

 

image.png.55ed182a8a32af72477a3290a333aebb.png

Edited by ZehelSitchel
Attempt and fixing my crappy punctuation
Link to comment
13 minutes ago, ZehelSitchel said:

@falconexe Hopefully this helps resolve some of the broken image links. When I r-clicked on the docker/vm icons and opened in new tab I noticed that the IP address it directed me to was 192.168.1.7, which is not the IP of my server. I pulled the json file and ran a search for that IP and found it hard coded on lines 519, 574, 628, 682, 11280, and 12056. Changing the IP to match my server's fixed all the broken image links.

 

Though with that said, I saw the post where the grafana image plugin developer had implemented that ability and you were thinking of adding it for 1.7. In the mean time I hope this helps some of the other people having issues.

 

image.png.55ed182a8a32af72477a3290a333aebb.png


Thanks for your input. This is just another way of doing what I already instructed in the post immediately following the announcement post. Everyone will need to change their base URL on every panel that uses the image plugin. I left my IP in there as a reference.

Link to comment
2 minutes ago, falconexe said:


Thanks for your input. This is just another way of doing what I already instructed in the post immediately following the announcement post. Everyone will need to change their base URL on every panel that uses the image plugin. I left my IP in there as a reference.

Ha, now I feel dumb. I was searching for the base URL everywhere and just found it... I probably spent around an hour fussing with different things trying to fix all my issues.  

 

image.png.b859175267bc6a82550c56643f8d9d7f.png

Link to comment
On 3/27/2021 at 3:19 PM, falconexe said:

So I am messing with my personal dash and further tweaked the Plex Library stats. I added section totals stats panels, rearranged the furniture, consolidated, and changed the unit to "Locale format" to get the thousands commas. I think it looks great and will be adding this to UUD 1.7.


 <snip>
 

And it goes without saying, you guys will do whatever you want with your Plex Library stats panels. I'm adding all this stuff as a foundation for your to build upon and to provide example code. If any of you have suggestions, I'd be happy to add them. Also, I would love to see how you guys have adapted my UUD for your personal use.

 


I have gotten Varken/UUD working with multiple Tautulli servers, which are selectable as a variable in the dashboard. If anybody is interested in trying to do that, let me know and I can write up the steps.

 

There is one current limitation, as far as I can tell - Varken can be configured to access multiple Tautulli servers but can only notate them as 1,2,...n.  To make that meaningful in the dashboard I had to use either rename transformations or name/value overrides to switch from '1' to the friendly name of the server.  The server name does not seem to be stored anywhere in the Influx table for Varken.


UUD_2_Plex_servers.jpg.15898e5ff6790ddbe671cffa1a53d1fc.jpg      UUD_2_Plex_servers_2.jpg.ced968a1b21f1efb0b8a042e5685d3ee.jpg      Plex_Server_variable.jpg.14711bb263514283c0e43f1087fcaf74.jpg

Edited by Ludditus
extraneous image
  • Like 1
Link to comment
43 minutes ago, Phteven said:

Is anyone interested in some of the settings to get this working using flux (influxdb v2.0 language / API).

 

Have gotten about half of the queries re-written for it atm.


Yes, eventually it seems the UUD will need to be ported over to InfluxDB 2.0 since that is the direction things are heading. I haven’t even begun to look into this, so any insight, pros/cons would be very much appreciated.

 

Everything I need personally works on the current Influx version, so I don’t have a need to upgrade. Anyone out there NEED InfluxDB 2.0 for any technical/particular reason?

 

Edited by falconexe
Link to comment
10 minutes ago, falconexe said:


Yes, eventually it seems the UUD will need to be ported over to InfluxDB 2.0 since that is the direction things are heading. I haven’t even begun to look into this, so any insight, pros/cons would be very much appreciated.

 

Everything I need personally works on the current Influx version, so I don’t have a need to upgrade. Anyone out there NEED InfluxDB 2.0 for any technical/particular reason?

 

If it helps, it was a lot easier than I thought it would be. Only minor adjustments to telegraf.conf and Grafana dashboard settings required. The query language is not very intuitive, but InfluxDB has a nice query builder which helps a little. Now that I have some of the basics out of the way the other panels are a bit easier.

Link to comment

One of the things I'm trying to wrap my head around, is correct bandwidth utilization on a particular interface. bytes_sent and bytes_recv only list the total traffic on each interface. Thinking about it, you'd need the last 2 results, subtract oldest from newest which I think should get you how much the network interface is being utilized at that point in time.

 

I found this which uses the formula:

 

bps = ((poll2 -poll1)*8)/time_in_seconds_between_polls

 

Which apparently will give a % utilization. Would you then add IN + OUT utilization to get a total utilization of the interface? Or is it better to leave them separate.

Link to comment
17 minutes ago, Phteven said:

One of the things I'm trying to wrap my head around, is correct bandwidth utilization on a particular interface. bytes_sent and bytes_recv only list the total traffic on each interface. Thinking about it, you'd need the last 2 results, subtract oldest from newest which I think should get you how much the network interface is being utilized at that point in time.

 

I found this which uses the formula:

 


bps = ((poll2 -poll1)*8)/time_in_seconds_between_polls

 

Which apparently will give a % utilization. Would you then add IN + OUT utilization to get a total utilization of the interface? Or is it better to leave them separate.

Okay, that was a bit more straightforward than I thought it would be. This appears to set it up nicely and along with the labelling set to kb/s appears to show reasonably well what the overall speed is.

 

from(bucket: "telegraf")
  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
  |> filter(fn: (r) => r["_measurement"] == "net" and r["_field"] == "bytes_sent" and r["host"] == "Tower")
  |> pivot(rowKey: ["_time"], columnKey: ["_field"], valueColumn: "_value")
  |> difference(columns: ["bytes_sent"])

 

difference() takes the table of data and creates a new table, with each row now containing the difference between each selected value, from the bottom up.

 

image.thumb.png.b01421fecab689d1b786296b67fe06b3.png

Link to comment

Thanks for this - I stumbled across it when my last dashboard took a dump.

 

I have one small-ish issue with Grafana... when I'm in grafana after doing the install, I seem to be in a user mode, rather than an admin mode.

 

I have no way of adding data sources, adding new dashboards, etc - what did I miss?

 

(Thank you)

 

edit: I'm a complete idiot.... I'm good now.

 

Edited by TheSnotRocket
Link to comment

I just got 1.6 installed. Maybe I should update my notifications to 1x per day instead of never... :) I appreciate all the hard work everyone has put into this. This dashboard has almost gotten too big! Anyway...

 

* I've gotta say, even having read the 2 posts where you announced 1.6 and the follow up with all the tweaks that needed to be made, it wasn't super obvious that I actually needed to manually add the JSON API Data Source myself. I did find it in the Grafana control panel eventually and got it added in, but it wasn't intuitive, and I consider myself reasonably intelligent... :) Maybe in the future, be sure to explicitly spell out such changes - it will reduce head banging. Yes, the post says "New Grafana Data Source" but it doesn't explicitly mention that I have to manually add it. For those not that familiar with Grafana...

 

* It took a while to get the Docker images to show up, in Firefox, I never got the "show images" option in the right-click menu. I ended up having to edit the panel, then tried it from there and got the "show images". Once I got logged in, the images show up. They were huge on my 1920x1080 monitor, so I changed the image size to 32x32 and it looks good in the box as delivered. (Seems that someone else pointed this out as well - I was writing this while working through issues and reading about 5 pages of updates.)

 

* Oddly, I'm not getting anything showing in the VM displays. I've got 2 installed, neither is running at the moment. I'd expect to see them showing up in the "stopped" display, but they're not.

 

* I am, once again, struggling with fan speeds. I do not have a server-grade mobo, so ITMPI doesn't work for me. I have "sensors" installed, and it was working great in 1.5 with this as the query for the fan speed:

SELECT last("fan_input") FROM "sensors" WHERE ("feature" =~ /fan./) AND $timeFilter GROUP BY time($__interval)

but, that doesn't seem to be working in 1.6. Any suggestions?

 

* "Array status" wasn't displaying anything with $.['servers']['http://192.168.1.5']['serverDetails'].arrayStatus in the field. When I changed it to $.['serverDetails'].arrayStatus it started working just fine. You'll note that I did change the IP address (and changed to http). I also had to make this change for "server name". "Parity status", "Mover Running", and "Parity check running" were all shipped with the shortened version. Maybe make a tweak and re-upload it to post #1?

 

* I have zero unassigned drives in my machine, so when the variables at the top picked the first drive as a default for unassigned drives, I cleared it out and saved the dashboard, including saving the current variable settings

image.png.ac62df04d5904b5706fea7f932fa6c7a.png

As soon as the dashboard refreshed though, it reselected the first drive in the list for "Unassigned Drives"

image.png.5258a0f0ad1aa2aacab7fc12c947fe59.png

No matter how many times I've cleared it and saved the dashboard, it keeps coming back every time it refreshes. Any thoughts on how to tackle this?

 

* Oddly, I'm getting SSD writes graphed, based on the disk I chose in the variables up top, however, I'm not getting any of the other 4 SSD charts filled in, despite having entered the disk SN in the query.

image.png.f40bf43fc63e9485b36b6df26cf6973a.png

Lifetime writes: image.png.826daf3d23847da3b2d5a192a68d42c8.png

Lifetime reads: image.png.e42e64a87c13f7a71e8a75796d9e6b5f.png

Life used: image.thumb.png.0a439665f86e325067840d85a7c1568b.png

Note that I've got 3 different SSDs all in my cache pool (and have had for more than a year), so you can see different SNs in the screen shots, but none are picking up correctly. I copy/pasted the serial number from the UNRAID dashboard, so I know that they're correct. I've not bothered with correcting all the other factors yet since I'm not getting any actual data, so the math() function is still the dashboard default I'll go look up the necessary numbers once I'm actually getting something for it to do math on.

 

Again - I appreciate all the hard work everyone has put in!

 

 

Link to comment
On 4/4/2021 at 2:32 AM, falconexe said:

I’ll implement this in UUD 1.7, but likely as variable constants so they don’t show up at the top of the dash to prevent crowding. These would be set once and forget it.

First of all, what's a "variable constant"? Either it's variable, or it's constant... :)

 

Second, where are these defined? I rummaged about in the grafana interface a bit and didn't see anything obvious shouting at me.

 

Third, is it possible in any way, shape or form to have a "variable constant" called "Disk01" with a serial number value (or, probably, vice versa) that could be used in all the disk queries so that I can set them up once and have them automatically translated in the dashboard and, even better, between dashboard versions?

Link to comment
11 hours ago, falconexe said:

I Quit. 😵

 

DEVELOPER UPDATE:

 

😂 But for real guys, I'm going to be stepping away from the UUD for the foreseeable future. I have a lot going on in my personal life (divorce among other stuff) and I just need a break. This thing is getting too large to support by myself. And it is getting BIG. Maybe too big for one dash. I have plenty of ideas for 1.7, but not even sure if you guys will want/use them. Not to mention the updates that would be required to support InfluxDB 2.X. At this point, it is big enough to have most of what people need, but adaptable enough for people to create custom panels to add (mods). Maybe I'll revisit this in a few weeks/months and see where my head is at. It has been an enjoyable ride and I appreciate ALL of your support/contributions since September of 2020.

 

That being said @LTM and I (mostly him LOL) were working on a FULL Documentation website. Hey man, please feel free to host/release/introduce that effort here on the official forum. I give you my full blessing to take on the "support documentation/Wiki" mantel, if you still want it. I appreciate your efforts in this area. If LTM is still down, you guys are going to be impressed!

 

I wanted to say a huge THANK YOU to @GilbN for his original dash which 1.0-1.2 was based on and ALL of his help/guidance/assistance over the last few months. It has truly been a great and pleasurable experience working with you man!

 

Finally, I want to say a huge thanks to the UNRAID community and its leadership @SpencerJ @limetech. You guys supported and shared my work with the masses, and I am forever grateful! I am an UNRAIDer 4 LIFE!

 

 

THANKS EVERYONE!

 

Edited by falconexe
  • Like 1
  • Thanks 8
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.