Jump to content

New Plugin - Disk Space


chef

Recommended Posts

CBers

@@chef In the notification message, can you add in the threshold value please.

 

So something like "C:\ (CDRIVE) disk space almost full - 171.4 GB free, threshold 256Gb".

 

Just a thought.

1.0.2.4

 

1. Fixed label issue on chart cards

2. Added labels to table data

3.Removed unmonitored partition data from table view

Did you amend the message as well?

  • Like 1
Link to comment
Share on other sites

Happy2Play

I get a empty table in table view and this console error in the plugin.

configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:417 Uncaught (in promise) SyntaxError: Illegal continue statement: no surrounding iteration statement
    at configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:417
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:417
Promise.then (async)
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:405
Promise.then (async)
renderChartAndTableData @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:398
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:455
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:452
onViewChange @ viewmanager.js?v=4.4.0.12:1
(anonymous) @ viewmanager.js?v=4.4.0.12:1
Promise.then (async)
ViewManager.loadView @ viewmanager.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
Promise.then (async)
loadContentUrl @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
onInitComplete @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ router.js?v=4.4.0.12:1
handleRoute @ router.js?v=4.4.0.12:1
page.dispatch @ page.js?v=4.4.0.12:1
page.replace @ page.js?v=4.4.0.12:1
page.start @ page.js?v=4.4.0.12:1
page @ page.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
Promise.then (async)
appRouter.start @ router.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
init @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1

Link to comment
Share on other sites

 

I get a empty table in table view and this console error in the plugin.

configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:417 Uncaught (in promise) SyntaxError: Illegal continue statement: no surrounding iteration statement
    at configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:417
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:417
Promise.then (async)
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:405
Promise.then (async)
renderChartAndTableData @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:398
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:455
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ configurationpage?name=DiskSpacePluginConfigurationPageJS&v=4.4.0.12:452
onViewChange @ viewmanager.js?v=4.4.0.12:1
(anonymous) @ viewmanager.js?v=4.4.0.12:1
Promise.then (async)
ViewManager.loadView @ viewmanager.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
Promise.then (async)
loadContentUrl @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
onInitComplete @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ router.js?v=4.4.0.12:1
handleRoute @ router.js?v=4.4.0.12:1
page.dispatch @ page.js?v=4.4.0.12:1
page.replace @ page.js?v=4.4.0.12:1
page.start @ page.js?v=4.4.0.12:1
page @ page.js?v=4.4.0.12:1
(anonymous) @ router.js?v=4.4.0.12:1
Promise.then (async)
appRouter.start @ router.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
Promise.then (async)
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
init @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
execCb @ alameda.js:1
defineModule @ alameda.js:1
depFinished @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
waitForDep @ alameda.js:1
(anonymous) @ alameda.js:1
main @ alameda.js:1
(anonymous) @ alameda.js:1
Promise.then (async)
req @ alameda.js:1
(anonymous) @ app.js?v=4.4.0.12:1
(anonymous) @ app.js?v=4.4.0.12:1

Okay, I'll figure it out quickly.

Link to comment
Share on other sites

ops! i didn't clear browser data when i checked that last release, and C# lets you continue in for each and javascript does not.  I was switching between them put a continue in.

Link to comment
Share on other sites

Psyborg

Thank you, Chef, for the recent changes.

 

Here are my news:

- I also get an empty table.

- My charts are smaller now, but still very big. Instead of one, I can see now two of five drives on my 24 inch display. :)

- The shortened drive name shows only the first part instead of the last one (red).

 

5e3c8d103b9a2_Zwischenablagebild1.png

 

 

And my config dialogue shows all disabled entries as checked ones. Every entry on the screenshot is actually disabled. Am I the only one with this? 

5e3c8df6a1eb5_Zwischenablagebild3.png

 

 

Link to comment
Share on other sites

1.0.2.6 has fixed the table problem. Please update :)

Edited by chef
  • Like 1
Link to comment
Share on other sites

Thank you, Chef, for the recent changes.

 

Here are my news:

- I also get an empty table.

- My charts are smaller now, but still very big. Instead of one, I can see now two of five drives on my 24 inch display. :)

- The shortened drive name shows only the first part instead of the last one (red).

 

5e3c8d103b9a2_Zwischenablagebild1.png

 

 

And my config dialogue shows all disabled entries as checked ones. Every entry on the screenshot is actually disabled. Am I the only one with this? 

5e3c8df6a1eb5_Zwischenablagebild3.png

 

 

I used subString() to shorten the drive path name. But, I wasn't sure if that was really what was needed to shorten the string properly.

 

Which part of the partition path is important in those drive shares?  

 

If I split the path string at every '/' then we can choose which part's are important.

 

example: '/share/path/some_extra_path' => 'share', 'path', 'some_extra_path'

 

So if 'some_extra_path' would help identify the partition then that is the one we need to use.

 

 

The second problem you mention, just to clarify,

 

You have unchecked the drives you don't want to monitor, and this does create the desired effect by removing the 'drive cards' from the main display, however when you open the dialog again all the drives are checked?

 

Thanks for your help with this, its appreciated!

Edited by chef
Link to comment
Share on other sites

Psyborg

I used subString() to shorten the drive name. But, I wasn't sure if that was really what was needed to shorten the string.

 

Which part of the partition path is important in those drive shares?  

 

If I split the path string at every '/' then we can choose which part's are important.

 

example: '/share/path/some_extra_path' => 'share', 'path', 'some_extra_path'

 

So if 'some_extra_path' would help identify the partition then that is the one we need to use.

 

Yes, that's right. For me is only the last 'some_extra_path' important. (See the lower red rectangle in the screenshot. This is the wanted part.)

 

The second problem you mention, just to clarify,

 

You have unchecked the drives you don't want to monitor, and this does create the desired effect by removing the 'drive cards' from the main display, however when you open the dialog again all the drives are checked?

 

Exactly. 

 

Thanks for your help with this, its appreciated!

Thank YOU for your great work (and responsiveness)!

Link to comment
Share on other sites

Found another bug in the Available space fill color!

 

Is now fixed in 1.0.2.7

Edited by chef
Link to comment
Share on other sites

@@Psyborg

 

One last question about the card labels, 

 

I'm thinking we can write long paths like this: "/share/.../destination_folder"

 

Would this type of label on the card be useful for determining which drive the card is displaying?

Link to comment
Share on other sites

Psyborg

@@Psyborg

 

One last question about the card labels, 

 

I'm thinking we can write long paths like this: "/share/.../destination_folder"

 

Would this type of label on the card be useful for determining which drive the card is displaying?

 

On my NAS all destinations of use for Emby begin with "/share/", so I don't need it. Because the drives on the NAS are mounted as folders and because these are bearing unique names in my case "destination_folder" would be enough. 

  • Like 1
Link to comment
Share on other sites

On my NAS all destinations of use for Emby begin with "/share/", so I don't need it. Because the drives on the NAS are mounted as folders and because these are bearing unique names in my case "destination_folder" would be enough.

Perfect, thanks. I don't have a NAS or mounted folders, so I wasn't sure.

Link to comment
Share on other sites

Not sure which update this happened with but now for me my mounts no longer show their actual mount points just some weird abbreviation.

IE rather than saying /media/emby it now displays medi

Link to comment
Share on other sites

Not sure which update this happened with but now for me my mounts no longer show their actual mount points just some weird abbreviation.

IE rather than saying /media/emby it now displays medi

Yes, this will be fixed in the next release. I used a subString method to try and limit long share paths, but it was the wrong thing to do.

 

Ive got it sorted. Now we'll just split the path into array of folders and if its larger then 3, will grab the last folder name for the card.

  • Like 2
Link to comment
Share on other sites

Yes, this will be fixed in the next release. I used a subString method to try and limit long share paths, but it was the wrong thing to do.

 

Ive got it sorted. Now we'll just split the path into array of folders and if its larger then 3, will grab the last folder name for the card.

Well done :)

Link to comment
Share on other sites

please let me know how 1.0.2.8 works out with regards to card titles.

 

There maybe a weird thing happening when the charts get drawn in  the canvas.  I tried to confine the size, which might not work as expected.

Edited by chef
Link to comment
Share on other sites

Happy2Play

Not seeing any issues on my side.

 

Was going to say what is going on with "Total Storage" as it is doubled.  But Drivepool plus each drive would be correct.

 

5e3cccf01d6cb_chart.jpg

  • Like 1
Link to comment
Share on other sites

CBers

@@chef - great work with this plugin.
 
Question: What does the TICK next to each drive signify please?

5e3d1e450a94f_EmbyDiskSpace9.jpg
 
This is in the configuration screen.
 
Thanks.

Link to comment
Share on other sites

Hi @@chef,

 

Slight issue with display of graphs

 

If I open and then save the settings dialogue (changes not req'd) whilst the graphs are visible, then switch between graphs and table and back to graphs again, everything shows and displays as expected.

However, If I open and then save the settings dialogue whilst the table is visible, then switch to the graphs, this happens (see screen grab) - every time...

 

cheers jordy

 

EDIT: sorry, I attached the wrong image :)

post-196-0-86126800-1581064854_thumb.jpg

Edited by jordy
Link to comment
Share on other sites

CBers

Hi @@chef,

 

Slight issue with display of graphs

 

If I open and then save the settings dialogue (changes not req'd) whilst the graphs are visible, then switch between graphs and table and back to graphs again, everything shows and displays as expected.

However, If I open and then save the settings dialogue whilst the table is visible, then switch to the graphs, this happens (see screen grab) - every time...

 

cheers jordy

 

@@jordy

 

Don't think you are running the latest version (v1.0.2.8), as there are now only 2 icons at the top of the screen, or is that what you mean ?

 

5e3d22c6b8eca_EmbyDiskSpace10.jpg

Link to comment
Share on other sites

@@jordy

 

Don't think you are running the latest version (v1.0.2.8), as there are now only 2 icons at the top of the screen, or is that what you mean ?

 

5e3d22c6b8eca_EmbyDiskSpace10.jpg

Sorry  @@CBers, I attached the wrong file check the post again :)

  • Like 1
Link to comment
Share on other sites

CBers

@@jordy

 

I am seeing something similar, whereby the images shrink in size.

 

5e3d25d7d4bb3_EmbyDiskSpace11.jpg

 

You can see the USED and AVAILABLE are on separate lines.

 

Should be like this.

 

5e3d26187ba2d_EmbyDiskSpace12.jpg

 

This was after I opened the CONFIG page again and saved it.

  • Like 1
Link to comment
Share on other sites

@@jordy

 

I am seeing something similar, whereby the images shrink in size.

 

5e3d25d7d4bb3_EmbyDiskSpace11.jpg

 

You can see the USED and AVAILABLE are on separate lines.

 

Should be like this.

 

5e3d26187ba2d_EmbyDiskSpace12.jpg

 

This was after I opened the CONFIG page again and saved it.

Yes, the incorrect images look like the image size is being dictated by the drive details at the bottom. Less text = smaller image

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...