Network Status Page

Designed to monitor a local server and network with forecast.io, Plex, and pfSense integration.

 https://status.d4rk.co/ Live site  Source Code

 Features

  • Responsive web design viewable on desktop, tablet and mobile web browsers

  • Designed using Bootstrap 3

  • Uses jQuery to provide near real time feedback

  • Optimized for OS X Mavericks (Tested on OS X 10.9 and Safari 7.0 and iOS 7.0.3 on iPhone/iPad.)

  • Displays the following:

    • currently playing items from Plex Media Server
    • current network bandwidth from pfSense
    • current ping to Google DNS
    • online / offline status for custom services
    • minute by minute weather forecast from forecast.io
    • server load
    • used / total memory
    • total disk space for all hard drives
  • Weather forecast only shows while viewing from local network

  • Now Playing section adjusts scrollable height on the fly depending on browser window height

 

Screenshots

[sharedmedia=core:attachments:20405]

![post-71812-0-85986700-1383266502.jpg|690x461](upload://m1oSKPDlDFm0Jgs0isXOfGwImrV.jpg)

 

Previous PlexPass only post: http://forums.plexapp.com/index.php/topic/82978-showing-off-whats-possible-with-plex/

 

Several members in the PlexPass only area contributed ideas and code and I'd like to thank them for that:

[member='dashbad']

[member='A.J']

[member='*=Matt=*']

 Feel free to take the code and tinker with it or contribute feature ideas here and or questions here.

This looks really cool. What does it look like when multiple media/streams are playing?

This looks really cool. What does it look like when multiple media/streams are playing?

It stacks them in the middle section and then you can scroll the middle section independently from the main page view. On iOS it's just one long column of course. Here is a screenshot of it scrolled half way between two items playing at the same time.

http://d.pr/i/lYQ

![post-71812-0-25717000-1383804420.jpg|620x500](upload://5xuSGHN8iEDd981yffAx4U4gNUh.jpg)

And the from an iPhone it looks like:

http://d.pr/i/Sl76

![post-71812-0-73434800-1383804637.png|281x500](upload://uS1pfW7RqG4R1C69PyEzqxrFpU.png)

Love it... would love to set this up once I get the replacement mini. :D

The 2009 served valiantly for years but now that we're sharing with more mobile devices, we finally need something better.

I used to have a 2009 mini as well. The performance increase when going to a 2012 Mac mini was massive. I think you’ll be quite pleased with the results. Are you going to pick one up soon or wait? It seems like we won’t see a new Mac mini until next year sometime.

Network Status Page - Update 0.1.1

 

Download and documentation here.

 

New:
- Hovering over hard drives now shows the amount of free / total space instead of used / total space (this is closer to how OS X 10.7+ reports space in About this Mac -> More info -> Storage)
- Added option in config.ini to set number of CPU cores so load calculates correctly out of the box.
- printDiskBar() now automatically uses GB or TB display when appropriate.
- Added new autoByteFormat()
- Rewrote how the myPlex token is retrieved and stored for speed. 
 
Fixes:
- Renamed Disk Space to Storage 
- Removed unused functions after rewriting printDiskBar().
- Disabled Memory display. I left the function in the code but OS X uses memory uniquely compared to other OS’s rendering the display of used ram essentially pointless.
- Summaries are now being truncated on both movies and tv episodes if they need to be instead of just on movies.
- Renamed misc folder to caches
- Added more commenting to help out people not familiar with php
- Found more places where config.ini variables weren’t being used
- Fixed up SABthrottle.php a bit
- Removed unused files
 

I just caught a glaring bug in the new plex token caching and pushed it to github. If you were running 0.1.1 grab the latest functions.php or check the commit to see it.

This looks VERY cool!

I will take a look at installing it. Any ideas of how to get it up and running on a Linux (Mint 15) machine? I think I have all the pre-req's already installed.

Thx!

This looks VERY cool!
 
I will take a look at installing it. Any ideas of how to get it up and running on a Linux (Mint 15) machine? I think I have all the pre-req's already installed.
 
Thx!

 
There is a linux optimized version that [member='dashbad'] created located here. He's pretty good about integrating any improvements from my builds.

This looks brilliant, will try and get it to work on windows server'12 !

This looks brilliant, will try and get it to work on windows server'12 !

Any luck getting it working on Windows? I'm mostly a Windows guy and plan on trying to adapt this.

I ended up installing this on my linux box. I have 3 servers on my network that stream Plex, plus 2 NAS boxes (Synology DS413j + FreeNAS). Has anyone set this up to monitor resources on other servers?

Would love to get this up and running on my WS2012 setup. I can tinker a bit with code, but not this much. Got the site up and running with XAMPP, but it displays near nothing, just same frames and logos.

I'd be willing to donate/pay if u/someone could fork this for Windows :)

Can't wait to get it to work on Windows Server 2012 xD

I'd be willing to donate/pay if u/someone could fork this for Windows :)
Can't wait to get it to work on Windows Server 2012 xD


Likewise. Been dieing to get this working with IIS.

This looks very, very cool.

I've managed to install but I'm having trouble getting things to work.

I've looked at the config file and tried filling in details where appropriate (plex server ip, etc)

Can somebody help with a friendly step by step guide on how to get this configured?

Also, I'd like to monitor bandwidth but I have no idea how to use pfSense. Is this router specific? Will it work with an Apple Time Capsule/Airport device?

Thanks in advance for help.

This looks very, very cool.

I've managed to install but I'm having trouble getting things to work.

I've looked at the config file and tried filling in details where appropriate (plex server ip, etc)

Can somebody help with a friendly step by step guide on how to get this configured?

Also, I'd like to monitor bandwidth but I have no idea how to use pfSense. Is this router specific? Will it work with an Apple Time Capsule/Airport device?

Thanks in advance for help.

Are you running your plex on a mac or linux? 

I've modified the bandwidth monitor to work with ifstat (which uses local monitoring vs router monitoring), but thats for my Linux setup.

What part have you gotten to work already? Do you see any information or nothing? I'll do my best to walk you through the config.

If your using the default code (from ryanc) theres a few more things that need to be modified aside from the config file. You also need to change some settings in assets/php/functions.php. The hard drives volumes listed there are all his, so you'll need to modify that to reflect your current setup.

Are you running your plex on a mac or linux? 

I've modified the bandwidth monitor to work with ifstat (which uses local monitoring vs router monitoring), but thats for my Linux setup.

What part have you gotten to work already? Do you see any information or nothing? I'll do my best to walk you through the config.

If your using the default code (from ryanc) theres a few more things that need to be modified aside from the config file. You also need to change some settings in assets/php/functions.php. The hard drives volumes listed there are all his, so you'll need to modify that to reflect your current setup.

Ah that makes sense. I was wondering why none of my drives were showing up.

I'm running on my Mac (OSX 10.9) which is where my PMS is hosted too. I'm running the site locally using XAMPP.

Would I be able to use local monitoring too? Here's a screenshot of what I see at the moment:

ScreenShot2014-01-08at150426_zps4d61be81

Looking forward to your reply. Thanks for you help!!

OK, I've updated the 'functions.php' file and amended the drives to reflect my own setup.

function makeTotalDiskSpace()
{
	$du = getDiskspaceUsed("/") + getDiskspaceUsed("/Volumes/My Book") + getDiskspaceUsed("/Volumes/My Book 3TB");
	$dts = disk_total_space("/") + disk_total_space("/Volumes/My Book") + getDiskspaceUsed("/Volumes/My Book 3TB");
	$dfree = $dts - $du;
	printDiskBar(sprintf('%.0f',($du / $dts) * 100), "Total Capacity", $dfree, $dts);
}

and

function makeDiskBars()
{
	// For special drives like my Drobos I have to set the total disk space manually.
	// That is why you see the total space in bytes.
	printDiskBar(getDiskspace("/"), "Macintosh HD", disk_free_space("/"), disk_total_space("/"));
	printDiskBar(getDiskspace("/Volumes/My Book"), "My Book", disk_free_space("/Volumes/My Book"), disk_total_space("/Volumes/My Book"));
	printDiskBar(getDiskspace("/Volumes/My Book 3TB"), "My Book 3TB", disk_free_space("/Volumes/My Book 3TB"), disk_total_space("/Volumes/My Book 3TB"));
}

That seems to have done the trick for disk storage. 

Awesome- glad that part is working. You can comment out any services your not using in assets/php/services_ajax.php so you're not seeing offline on the bottom left column. 

Did you set the config.ini file location in functions.php?

You can edit left_column_top_ajax.php to change the links on the top left column.