YAMon - per user & per device usage monitoring

I just installed it and had a problem, I will try to figure out later on the weekend.

Error message
Error #4 reading the devices data file: data3/users.js Forbidden

So far I have only tried this
ln -sf /tmp/www /www/user
chmod 704 /opt/YAMon3/www/yamon3.3.html

Edit also this error:
Monthly data file did not load properly?!?

Please check paths to ensure that the file exists: data3/2017/11/2017-11-05-mac_data.js
Then this
The requested URL /yamon/data3/2017/11/2017-11-05-mac_data.js was not found on this server.

i just did all the symbolic links as 777 data3 images index logs css /tmp/www/js the same.probably not good practice but it got the job done for me.

Sounds like it's a permissions issue... the files need read access for others... so 0664 should be sufficient (execute permission is not needed).
In theory setup.sh should take care of that for you?!?

Al

I think I used the default settings for everything when asked, I just pressed the enter key every time it stopped to ask for the y or n in the setup.sh

Did you run install.sh again to get the latest version of the setup script? I made a number of changes recently that should've addressed the permissions problems.

Al

I just installed the 3.3.6 version and it seem's to be working properly Thank's

good to hear! thanks for the update

I don't think the setup.sh file is doing the trick on LEDE. (I recently tried the 3.3.6 version.)

The script defaults to 770 for the web page directory, and I have always had to change permissions to 774 (I guess 664 would be good, as well...)

NB In past runs, I accepted the default (770) hoping the script would do the right thing, but then needed to ssh in to change the access to 774.

@al_c: could you prepare normal 'ipk' package for lede?

I'll check again and get an update out ASAP. Thanks for the headsup

Sure... one detail though... Can someone point me to instructions on how to create an ipk package (normal or otherwise)? I'm actually quite ignorant (in the purest sense of the word) with just about anything Linux...

Al

See https://wiki.openwrt.org/doc/devel/packages https://wiki.openwrt.org/doc/howtobuild/single.package

yeah i had to do the samething, but i just ran the script again after deleting the directory and changed it to 777, which probably isnt very good, but it works lol, also its always asking me the same configuration questions, everytime i view it. Is there a way to save that configuration so i dont have to set it everytime i clear my cookies or cache?

@al_c

Take a step-by-step tutorial on how to install YAMon in LEDE, it will help many novice.

EDIT: after install last Vs. YAMon i have this err....

05

install scripts run fine no err msg....

Installed and working fine...

yamon is different from the wrtbwmon, that write up just shows usage for each device, but all you have to do is re-run the script and put 774 where it asks for default settings of 770 during the installation process, and youll be able to access that directory. You currently probably have the default permissions for the directories which are incorrect.

1 Like

Thanks!

is only put correct permissions... :smiley:

@sycohexor - thanks for chiming in. I will get an update out shortly that fixes that issue.

There's more info on the installation process at http://usage-monitoring.com/download.php... I'll include a link to that in the setup script too.

I just had another go at installing YAMon on my TP-Link Archer mr200 4G router with LEDE installed.
The router does not have a USB port so I am using NFS client on the router to an NFS server where I store all the YAMon files.
This now appears to be working (I had issues last time I tried) and I will be monitoring this test setup to see if it's any better than nlbwmon that I have in production.

Yamon does not start on reboot though, is there a method to get it to do this?

One thing is puzzling me though I can click on the device from one of the screens and enter a name for each client.
I can also click on group to enter a group name.
Where are these entries stored?
Can I set up IP address, MAC address, host names and group names in advance for putting it into production for several more devices than I will be testing with? Or do I have to wait for them to appear on the page. It would be handy if I could set things up in advance.

Where are these entries stored?
By default in a LocalStorage variable in your browser. The shortcoming of
this approach is that the device/group customization are known only within
that browser on that device (a standard limitation of LS variables). You
can export the customizations into an updated version of users.js via the
export button in the top right corner of the Devices table... you can then
copy the file back to your router (but will have to repeat the process
if/when devices/groups change)
With the [optional] database integration option on the Settings tab, the
info is saved to a database table at usage-monitoring.com (your settings
are stored separately from everyone else)... the advantage of this
arrangement is that your settings are sharable across all of the devices
you use to access the reports and always up-to-date.
(These are the best options that I could imagine without cgi/bin
capabilities on the router)

Can I set up IP address, MAC address, host names and group names in
advance...
ATM other than handraulically creating user.js entries, no... it would not
be too hard to build an interface though. What do you have in mind? I
presume that you'll know the device, name & mac... what about the IP
address(es)? It would be relatively straight forward to have an Add
button on the Devices tab that pops an empty instance of the Edit dialog...
thoughts?