Vdash - Node dashboard for Safe Network

Works well on Linux (Mint) :clap:t2:, with the delays noted in the OP (wonder why that is? Feels like it needs to be polling continuously but isn’t).

Two suggestions - make the name of the vault in Vault Status match the actual name of the vault being logged rather than just counting up from 1 - eg safe-vault-2 rather than vault 1. Also, it would be helpful if you could toggle word wrapping on and off in the Vault Log window.

Can’t build it in Windows though - have raised an issue on Github.

Look forward to future developments. Always happy to test stuff out with my limited abilities as you know, time permitting.

3 Likes

Looking forward to trying this tomorrow!

2 Likes

Excellent John, and thanks for the feedback and for raising issues.

I am about to push a simple timeline for PUTS and GETS, but that also needs quite a bit more work due to limitations of the graphics library. I’ll also need to provide multiple timescales.

There are lots of things I need to work on and the speed of processing is a priority because we now have some data to display but it is being updated far too slowly and is minutes behind real time even on a beefy processor.

I’ll bear your suggestions in mind, maybe when features are more complete I’ll be looking again at usability. Line wrap on the logfile window is possible but a biggish change so don’t expect that for a while.

So feel free to open issues for feature requests and UI enhancements too.

UPDATE: I’ve published a new version with a simple timeline for PUTS and GETS. Very crude work in progress, and not much use until I speed things up, but gives an idea of when this will be like.

2 Likes

I’ve no idea how you’re approaching this but wonder that an intermediate step that draws out the data and then the tail is a diff, might be faster than ever looking to read the whole of a large log file many times over. That said, I don’t know how you track the change… perhaps by line number if the log is not truncating itself.

Thanks @davidpbrown, the issue is within my processing, not accessing the files (which is handled by linemux). You can see this if you use logtail to monitor the files, it has no problem keeping up. Hopefully it won’t be hard to sort.

1 Like

All of my vault logs are static on Vdash, apart from one, Safe-Vault-2 which is updating about 10x a second. Why would that be I wonder?

Looks like you neglected to set the log level when starting your vaults:

And if you do cargo install vdash again (assuming that does what I expect it does) you will get a timeline!

1 Like

Hmm - pretty sure I did that. Let me try again.

1 Like

Make sure you do safe vault killall and then manually delete all the existing logfiles first or you will still have a lot of guff in them. I should add that to the instructions, sorry! Done :grinning:

2 Likes

Yes working now. Maybe I did things in the wrong order. Loving the nostalgic graphics!

3 Likes

Great stuff John. I see you still have quinn filling up your logfile though so the RUST_LOG setting isn’t doing it’s job and it may cause problems. But at least you have seen the timeline working.

1 Like

This sir is sexy.

2 Likes

Update: vdash is now at v0.2.2 v0.2.0 to mark it becoming a bit useful. See the OP for latest screenshot) including timelines for PUTS, GETS and ERRORS.

i (zoom in) / o (zoom out) - zoom Timeline in or out. The +/i keys also zoom in/out over the following ranges: 1 second/minute/hour/day/week/year per column
left/right arrow - move to next/previous vault status
q - quit

8 Likes

Latest update has a few enhancements, tweaks and bugfixes.

Instructions to install on Linux/MacOS using cargo install, and for building on Windows can be found here.

If anyone if you have time to try a build on Windows, that would be cool. @JPL?

AFAIK nobody has tried this on MacOS yet, so if there are any brave Mac users out there, let me know what happens if you try it.

5 Likes

Success! Had to add a flag --features="crossterm" though so

cargo +nightly build -Z features=itarget --bin vdash-crossterm --release --no-default-features --features="crossterm"

1 Like

Thanks very much John. I’ll update the README.

1 Like

I’ve never had any success getting RUST_LOG=debug,quinn=error working on Windows. Probably a matter of them not being in the path but I’ve no idea where they live.

This is just setting environment variables, so you should be able to do that manually before you run the main command. I can’t remember the syntax but it is something like:

set RUST_LOG “debug,quinn=error”

And you can see if that worked with something like:

echo %RUST_LOG%

Once you have RUST_LOG set, you can just run the vault command and it will pick that setting up. If you discover the exact incantation I’ll add it to the README.

1 Like

Update v0.2.4 has the essentials in place to be a useful vault/node monitor, so I’ve made a short screen recording below. It shows some PUTS and GETS if you watch for a minute or so. The animation just shows one vault/node, but you can cycle between several, and the timelines can be zoomed out from 1 second per column to 1 minute, day, hour etc if you’ve kept your logfiles for long enough!

I have ideas for improving on this, but don’t think I’ll do much more until Maidsafe’s code is settled and I know if this approach will be supported by the new logfiles (at the moment they don’t have the info I need for this, so that requires a little collaboration). They may of course have other priorities :grin: and/or may wish to go a different way. I raised an issue to track this and will add a little more to it: sn_node issue #1126

Anyway, here’s a short animation showing vdash in action. Here I’m just showing the activity of one vault using the ‘run-baby-fleming’ and doing some puts and gets using the safe CLI:

20 Likes

We do need to and will get the logs more structured here. Your input will be really useful, probably lead our message format actually. I would love to see a few projects using the logs like this so we can be sure of good log interface, but this itself will be a huge help.

@lionel.faber worth a watch as you are on logs alongside everything else right now.

9 Likes