Ultimate UNRAID Dashboard (UUD)


Recommended Posts

16 minutes ago, skaterpunk0187 said:

I added SSD lifetime Writes, Reads, and Used for both NVME drives in my cache pool and the same for my octane drive as my second cache pool (can't wait foe @limetech to add multi array pools).

I don't have a Documentary and Anime directories for Plex so I removed them and added the TV Episodes and Movie Week, Month, and Year panels from 1.5. I also removed the Plex Library Growth snapshot since it showed added TV shows and not episodes since I don't use the *dars to add to my collection.

Plex Data.png

SSD Life.png

 

 

Nice. FYI you can give your SSD panels unique names to differentiate them by changing the title. So you can tell which SSD drive is which in your Cache Pool.

 

image.png.5deef75bdfa9f60ca9bb552faddcdde4.png

 

 

You can also use episodes, seasons, or number of shows in these panels by adjusting the query tags. The update I posted actually changes the growth snapshot to episodes and not total number shows. Here is what that looks like.

 

image.thumb.png.5fc17c71e2c67f3262ae079c4ff26a73.png

 

 

When in doubt ask, don't delete ha ha. If you are wanting something unique or specific to your setup, ANYTHING is possible. Anyone here would be happy to help you get your goals acomplished...

Link to comment
Just now, falconexe said:

 

 

Nice. FYI you can give your SSD panels unique names to differentiate them by changing the title. So you can tell which SSD drive is which in your Cache Pool.

 

image.png.5deef75bdfa9f60ca9bb552faddcdde4.png

 

 

You can also use episodes, seasons, or number of shows in these panels by adjusting the query tags. The update I posted actually changes the growth snapshot to episodes and not total number shows. Here is what that looks like.

 

image.thumb.png.5fc17c71e2c67f3262ae079c4ff26a73.png

 

 

When in doubt ask, don't delete ha ha. If you are wanting something unique or specific to your setup, ANYTHING is possible. Anyone here would be happy to help you get your goals acomplished...

 

I also changed the music growth section to ALBUMS and not TRACKS to keep the graphs more in line with each other across the media types. To me an album is closer to a movie/episode than a track. Even singles are counted as an album, so it works for me.

 

But you could easily say:

 

  • 1 movie = 1 episode = 1 track OR
  • 1 movie = 1 season = 1 album OR
  • 1 movie = 1 show = 1 artist

 

It all comes down to personal preference, and ALL of these options are possible by modifying the queries.

 

  • Thanks 1
Link to comment
12 minutes ago, falconexe said:

Nice. FYI you can give your SSD panels unique names to differentiate them by changing the title. So you can tell which SSD drive is which in your Cache Pool.

I did know I could changes the names I just haven't yet.

I added the growth snapshot back. I did try editing it but the "field (total)" through me off I was looking for specifics like "tv shows" or "shows" that I should change.

 

Link to comment
1 minute ago, skaterpunk0187 said:

I did know I could changes the names I just haven't yet.

I added the growth snapshot back. I did try editing it but the "field (total)" through me off I was looking for specifics like "tv shows" or "shows" that I should change.

 


Change the library section in the FROM statement. Change what you are enumerating about that section in the SELECT statement (Total, Seasons, Episodes, etc.)

Link to comment
On 1/7/2021 at 9:40 AM, corgan said:

 

 

Hey, yeah sorry, i wanted to write this down for quite some time.

So the goal was to view and controll dockers and VMs from in Grafana.

 

- Status of Container / VMs

- display the container/vm Icons

- Enable/disable Container / VMs


Short:

install Unraid API Plugin

install Grafana JSON API Plugin

install Grafana dynamic Image Plugin


Long:

To get these Infos, i use the Electric Brain Unraid API

 

firefox_6Cv0mzltg6.thumb.png.29153417384835f0911aca8f9cbf8cc5.png


Luckily, this Unraid Addon creates an Json API, wich we can use. There is nothing special about the APi. Just install and setup.

 

The second Part is to show the Data from the Unraid API in Grafana. Therefore im using the Grafana Plugin grafana-json-datasource
https://grafana.com/grafana/plugins/marcusolsson-json-datasource?pg=plugins&plcmt=featured-undefined&src=grafana_footer

https://github.com/marcusolsson/grafana-json-datasource?utm_source=grafana_add_ds

 

Install this in Datasource Plugin in Grafana and create a new Datasource.
Enter your Unraid IP, with the Port of the API and add /api/getServers

 

like http://192.168.x.x:3005/api/getServers

 

grafik.thumb.png.1b15421d2ea26a058e091ac1ed8c242b.png

 

 

From here, we just have to display the Unraid API Data in some nice way.

 

firefox_LvXJpWlZ8u.thumb.png.882ed27553fcb7866a0a19855f32e2a5.png

 

So how to use the new created Json Datasource

Examples

 

Get all VMs


$.['servers']['192.168.2.254']['vm']['details'][*].name

Get the status of theses VMs


$.['servers']['192.168.2.254']['vm']['details'][*].status

firefox_ZAWQQym25d.thumb.png.79362e05eb42504dbfac366bccdea523.png

 

Get all Docker Container

 


$.['servers']['192.168.2.254']['docker']['details']['containers'][*].name
$.['servers']['192.168.2.254']['docker']['details']['containers'][*].status
$.['servers']['192.168.2.254']['docker']['details']['containers'][*].imageUrl

 

If you only want to see the running Container

 


$.['servers']['192.168.2.254']['docker']['details']['containers'][?(@.status== 'started')].name

 

From here we can make a Panel which show only the running Container as Icons. For this we need another Grafana Plugin, called Dynamic image panel

https://grafana.com/grafana/plugins/dalvany-image-panel?pg=plugins&plcmt=featured-undefined&src=grafana_footer

 

We use again our JSON Datasource and seraching for all started container, get the imageurl and the Container Name as Tooltip. You have to add your Unraid URL as Base URL.

 


$.['servers']['192.168.2.254']['docker']['details']['containers'][?(@.status== 'started')].imageUrl
$.['servers']['192.168.2.254']['docker']['details']['containers'][?(@.status== 'started')].name

firefox_pZGAKZPGei.thumb.png.fe123d0b37bf107fc05de1a9186f2ba9.png


 

just ask, if there are any Questions left.

 

 

Hi, thanks for your tutorial, but i didn't get any icons/image like yours after following your setup. Any suggestion?

Link to comment
On 3/22/2021 at 9:53 PM, HagenS said:

 

I just removed this one line.

I removed as you did, but it didn't work for me, still getting nothing in "VM Details"

Solved by removing last two lines. Seems a problem of width, too wide to be displayed.

Edited by francishe
Link to comment

love the dashboard! have been trying to set it up. 90% works. the only thing i am not able to figure out is how to get the SSD section to work. i think it is because for some reason i am not able to get disks to show here 
image.thumb.png.d2872a42838d5a59e3916dd6504feb1a.png

 

they all show as in the screenshot.. 

i went through my telegraf.conf again with Gilbn's guide, but everything is setup according the guide.

any ideas? 

Edited by Glasti
Link to comment
58 minutes ago, Glasti said:

love the dashboard! have been trying to set it up. 90% works. the only thing i am not able to figure out is how to get the SSD section to work. i think it is because for some reason i am not able to get disks to show here 
image.thumb.png.d2872a42838d5a59e3916dd6504feb1a.png

 

they all show as in the screenshot.. 

i went through my telegraf.conf again with Gilbn's guide, but everything is setup according the guide.

any ideas? 

Found the issue! 

i didnt had  device_tags = ["ID_SERIAL"]  set in [[inputs.diskio]]
All working now! 

Edited by Glasti
  • Thanks 2
Link to comment
On 9/26/2020 at 12:14 AM, MammothJerk said:

My UPS is a bit finicky with the apcups plugin and does not always work correctly, NUT however always works and i created a small edit to the UPS section if you would like to add the option for NUT.

 

Firstly you need the "NUT Network UPS Tools" plugin for unraid and then the "maihai/nut-influxdb-exporter" docker to get the data to the influxdb database.

 

then all you need to do is change the variables around a bit and it works just the same as the apcups option :)

 

Attached is the UPS section of the main dashboard edited to work with NUT :).

 

 

NUT UPS Dashboard for falconexe-1601050759513.json 32.22 kB · 7 downloads

Hi, thanks for sharing. I am using nut ups and have installed nut influxdb exporter, which seemingly does not send data to influxdb. The log shows always connections refused. Mind advising how to get it done and what to change in variables?

Link to comment
1 hour ago, francishe said:

Hi, thanks for sharing. I am using nut ups and have installed nut influxdb exporter, which seemingly does not send data to influxdb. The log shows always connections refused. Mind advising how to get it done and what to change in variables?

Make sure you are using influx 1.8.x and that all the variables for nut influx are correct. Use your unraid ip if using bridge. 

Link to comment
On 3/31/2021 at 2:32 PM, GilbN said:

Make sure you are using influx 1.8.x and that all the variables for nut influx are correct. Use your unraid ip if using bridge. 

HI, 

Thanks for the advice.

I am now using influxdb 1.8.4-alpine. 

I have been trying for days to get it through but all in vain. I have tested on either uud 1.6 and TR's db for unraid nut ups, none of which favoured me. In the Query inspector I saw data was null when using nut datasource and data came in when switching to telegraf. Neither of them gave me readings on the db. There must be some variables I should know. a little bit frustrated. Again I attach part of the logs here, hoping someone would give a little look at them and help me out. Thanks in advance.

From telegraf

===========================================================

[httpd] 172.17.0.1 - root [02/Apr/2021:16:04:47 +0800] "POST /write?db=varken HTTP/1.1" 204 0 "-" "python-requests/2.21.0" 178c6a51-938a-11eb-9125-0242ac110002 10476
[httpd] 172.17.0.1 - root [02/Apr/2021:16:04:47 +0800] "POST /write?db=varken HTTP/1.1" 204 0 "-" "python-requests/2.21.0" 17c5704f-938a-11eb-9126-0242ac110002 6108
ts=2021-04-02T08:04:51.147415Z lvl=info msg="Executing query" log_id=0TGJnhvG000 service=query query="SELECT last(\"battery.charge\") FROM nutupstest.autogen.ups_status WHERE time >= now() - 1h GROUP BY time(30s)"
[httpd] 10.0.0.143, 10.0.0.143,172.17.0.1 - - [02/Apr/2021:16:04:51 +0800] "GET /query?db=nutupstest&epoch=ms&q=SELECT+last%28%22battery.charge%22%29+FROM+%22ups_status%22+WHERE+time+%3E%3D+now%28%29+-+1h+GROUP+BY+time%2830s%29 HTTP/1.1" 200 57 "-" "Grafana/7.4.5" 19bc4678-938a-11eb-9127-0242ac110002 483
ts=2021-04-02T08:04:51.147415Z lvl=info msg="Executing query" log_id=0TGJnhvG000 service=query query="SELECT last(\"battery.charge\") FROM nutupstest.autogen.ups_status WHERE time >= now() - 1h GROUP BY time(30s)"
[httpd] 10.0.0.143, 10.0.0.143,172.17.0.1 - - [02/Apr/2021:16:04:51 +0800] "GET /query?db=nutupstest&epoch=ms&q=SELECT+last%28%22battery.charge%22%29+FROM+%22ups_status%22+WHERE+time+%3E%3D+now%28%29+-+1h+GROUP+BY+time%2830s%29 HTTP/1.1" 200 57 "-" "Grafana/7.4.5" 19bc4678-938a-11eb-9127-0242ac110002 483
[httpd] 10.0.0.254 - - [02/Apr/2021:16:04:56 +0800] "POST /write?db=telegraf HTTP/1.1" 204 0 "-" "Telegraf/1.18.0 Go/1.16.2" 1caac777-938a-11eb-9128-0242ac110002 28741
ts=2021-04-02T08:04:56.158751Z lvl=info msg="Executing query" log_id=0TGJnhvG000 service=query query="SELECT last(\"battery.charge\") FROM nutupstest.autogen.ups_status WHERE time >= now() - 1h GROUP BY time(30s)"
[httpd] 10.0.0.143, 10.0.0.143,172.17.0.1 - - [02/Apr/2021:16:04:56 +0800] "GET /query?db=nutupstest&epoch=ms&q=SELECT+last%28%22battery.charge%22%29+FROM+%22ups_status%22+WHERE+time+%3E%3D+now%28%29+-+1h+GROUP+BY+time%2830s%29 HTTP/1.1" 200 57 "-" "Grafana/7.4.5" 1cb8f419-938a-11eb-9129-0242ac110002 394
ts=2021-04-02T08:05:01.171746Z lvl=info msg="Executing query" log_id=0TGJnhvG000 service=query query="SELECT last(\"battery.charge\") FROM nutupstest.autogen.ups_status WHERE time >= now() - 1h GROUP BY time(30s)"

============================================================================

From nut-influxdb-exporter

 

ng to NUT host 10.0.0.254:None
d successfully to NUT
tting data from NUT
ng to InfluxDB host:10.0.0.254, DB:nutupstest
d successfully to InfluxDB
ng to NUT host 10.0.0.254:None
d successfully to NUT
tting data from NUT
ng to InfluxDB host:10.0.0.254, DB:nutupstest
d successfully to InfluxDB
ng to NUT host 10.0.0.254:None
d successfully to NUT
tting data from NUT

==================================================================

Edited by francishe
Link to comment
On 1/15/2021 at 1:27 AM, wedge22 said:

Thanks for creating this dashboard, I was able to install it yesterday following the excellent videos created by Nate.

 

I am currently experiencing a couple of small issues, I do not see any readings for System Temps, System Power or Fan Speeds, I am using sensors not IPMI as I have a Gigabyte X99 motherboard. I enabled the sensors option in the applicable panels and restarted all of the dockers but no change.

 

I also noticed that the Plex stats map is not showing any location data and neither are the Plex stream logs in the table, I did signup for Maxmind as per the videos and entered my key.

 

Thanks in advance for any tips.

Hi,

I am also using x99 board and having the same issues wit you. Have you solved them and how? Thanks.

Solved by reading the thread on page 28.

Edited by francishe
Link to comment
On 3/21/2021 at 3:44 PM, clintkev251 said:

Yup, here's the base URL format that I'm using. Haven't tested this with https. So the final URL ends up being something like: http://xxx.xxx.xxx.xxx:3005/state/plugins/dynamix.docker.manager/images/binhex-delugevpn-icon.png which is available without authentication

tempsnip.png

 

After spending 30 minutes struggling with this I found out that if your installation is on another network without direct LAN access your base url needs to be the proxied address, seems to be fetched from the browser instead of Grafana installation🙄image.thumb.png.94f50e3acf9b14f70cfc91e0c23b52a6.png

 

Thank you for making this project @falconexe. I suddenly enjoy my metrics

Link to comment

SOLVED: See below

 

 

When thru all the install steps and have UUD kind of working. Biggest problem is getting Varken to connect to Tautulli and Sonarr. Here's the errors I get in the Varken log.

 

2021-04-03 01:10:30 : INFO : __init__ : Running job Every 30 seconds do thread(<bound method TautulliAPI.get_activity of <tautulli-1>>) (last run: 2021-04-03 01:10:00, next run: 2021-04-03 01:10:30)
2021-04-03 01:10:30 : DEBUG : connectionpool : Starting new HTTP connection (8): ********.1.37:8181
2021-04-03 01:10:33 : ERROR : helpers : Cannot resolve the url/ip/port. Check connectivity. Error: HTTPConnectionPool(host='192.168.1.37', port=8181): Max retries exceeded with url: /api/v2?apikey=xxxxxxxxxxxxxxxxxxxxxxx&cmd=get_activity (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x14a1e06afa90>: Failed to establish a new connection: [Errno 113] Host is unreachable'))

 

2021-04-03 01:13:03 : ERROR : helpers : Cannot resolve the url/ip/port. Check connectivity. Error: HTTPConnectionPool(host='192.168.1.37', port=8181): Max retries exceeded with url: /api/v2?apikey=xxxxxxxxxxxxxxxxxxx&cmd=get_activity (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x14a1e06943a0>: Failed to establish a new connection: [Errno 113] Host is unreachable'))

 

Note: I've x'ed out the API key.

 

Here's the varken.ini file.

 

[global]
sonarr_server_ids = 1
tautulli_server_ids = 1
maxmind_license_key = xxxxxxxxxxxxxxxxxxx

[influxdb]
url = 192.168.1.2
port = 8086
ssl = false
verify_ssl = false
username = telegraf
password = metricsmetricsmetricsmetrics

[tautulli-1]
url = 192.168.1.37:8181
fallback_ip = 1.1.1.1
apikey = xxxxxxxxxxxxxxxxxxx
ssl = false
verify_ssl = false
get_activity = true
get_activity_run_seconds = 30
get_stats = true
get_stats_run_seconds = 3600

[sonarr-1]
url = 192.168.1.131:8989
apikey = xxxxxxxxxxxxxxxxxxx
ssl = false
verify_ssl = false
missing_days = 7
missing_days_run_seconds = 300
future_days = 1
future_days_run_seconds = 300
queue = true
queue_run_seconds = 300

 

Checked all setting many times. Either I'm missing something or overlooked a setting.

 

Both Tautulli and Sonarr have been running for years and I verified both were running. Even restarted them several times.

 

 

SOLVED:

 

I followed the install instructions in the "Technically Speaking" YouTube videos. He setup his Varken docker with a "Bridge" network type. Not sure why, but this did not work for my setup. I tried "Host" and that failed too. So I used a custom interface, "br0" and gave the docker it's own IP address and now it's conneted to both Tautulli and Sonarr. If I had to guess why this happened is because most of my dockers are setup to use a different IP address from my UnRAID server.

Edited by subagon
Solutiom
Link to comment
15 hours ago, bjornlc said:

Nice work, i have finaly got it up and running. but i cant seam to connect with Unraid-api.

I have the Json plugin installed and pointing to the ip that Unraid-api says it is listening to and i get succsess. but all i get is No data found in response.

 

Make sure you're using JSON API plugin for Grafana | Grafana Labs

And include /api/getServers after host IP : unraid-api port (http://1.1.1.1:3005/api/getServers)

 

Here is mine. UUD should detect it and handle the rest

image.thumb.png.1962b07e1e97307d0c8b753f2a5f2e18.png

 

Edited by Gisli Gudmundsson
  • Thanks 1
Link to comment
On 4/3/2021 at 9:12 PM, corgan said:

@falconexe I asked the grafana image plugin developer to implement the use of dashboard variables, like image url.

He released a pre-release version of the plugin, which runs fine.

Now it's much easier to set the Image Path (and width/height if needed) once and reuse it everywhere its needed.

 

Download image plugin pre-release 2.3.0

 

grafik.thumb.png.5534e6cda00899388917caca6c8d0564.png

 

grafik.thumb.png.e83b2250226339d95cf9cb26288032b6.png

 

grafik.thumb.png.5e9d3f6f43df4d63aa6e87e59c67fbaa.png


 

@corgan

 

Yeah that’s friggen sweet. 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. I appreciate you working with both the API dev and the Grafana plugin dev. You are the driving force in this particular area.

 

Let me know once these updates are LIVE in their respective areas and out of development so I can update the instructions.

 

Any news on the SSL images being broken/proxy on the API side? I also remember you requested a default (missing) image? Any further info on how to get around the SSL authentication loop once and for all?

 

Edited by falconexe
Link to comment

Hi,

 

Thanks for the continued development of this Dashboard its great, its so nice to have all the info in one place.

 

I have a bit of an odd issue that I can't figure out. I'm using UUD 1.5 (though the issues still appears in 1.6) for me. The Disk Overview section and the SMART Stat Table, dont show the serial numbers of the drives correctly (with the exception of 2 SSDs), they seems to show as NaN or a single number.

 

I thought it was something in my Telegraf Config at first, but noticed that the Temperatures graph show them correctly. I have checked the overrides for the Table and can't see any obvious issues, I even tried setting an override to format this column as a string but no luck. Oddly when I goto Query Inspector and then Data, it shows the correct Serial Number there.

 

I am probably missing something really obvious here, but if anyone has any suggestions, they would be most welcome.

 

Thanks :)

UUD_NoSerial.png

Link to comment
4 hours ago, nuhll said:

Im happy i found out why my drives spun up, i removed this dashboard because it made my drives spin up unneccessary and i thought it was the new update, but it was this... 

 

Thanks anyway looks nice maybe this can be fixed some time.

 

@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.

 

Edited by falconexe
Link to comment
23 minutes ago, skaterpunk0187 said:

Just a little note Unraid.net plugin got updated it works alongside the Unraid API now.

 

@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!

Link to comment
13 hours ago, timethrow said:

Hi,

 

Thanks for the continued development of this Dashboard its great, its so nice to have all the info in one place.

 

I have a bit of an odd issue that I can't figure out. I'm using UUD 1.5 (though the issues still appears in 1.6) for me. The Disk Overview section and the SMART Stat Table, dont show the serial numbers of the drives correctly (with the exception of 2 SSDs), they seems to show as NaN or a single number.

 

I thought it was something in my Telegraf Config at first, but noticed that the Temperatures graph show them correctly. I have checked the overrides for the Table and can't see any obvious issues, I even tried setting an override to format this column as a string but no luck. Oddly when I goto Query Inspector and then Data, it shows the correct Serial Number there.

 

I am probably missing something really obvious here, but if anyone has any suggestions, they would be most welcome.

 

Thanks :)

UUD_NoSerial.png

 

 

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?

 

 

Edited by falconexe
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.