Resources monitor per user/website

Started by ring_c, September 01, 2018, 08:54:37 PM

Previous topic - Next topic

ring_c

Hi,


Is there a way for me as admin to see how many resources each user/site is using (RAM/CPU/etc...)?
Couldn't find a page with such info.


TIA.

bullten

Well per site is not possible but all over you can see in GUi. You have to perform below installation

http://forum.centos-webpanel.com/how-to/(tutorial)-installing-netdata-on-centos-web-panel/

Check demo before installing it into your server

https://my-netdata.io/#demosites

ring_c

#2
Unfortunately, it resulted in an error, quite early.
Right after the command pip install mysqlclient I was getting these errors:

Installing collected packages: mysqlclient
  Running setup.py install for mysqlclient ... error
    Complete output from command /usr/bin/python2 -u -c "import setuptools, toke                                                                                                                                                             nize;__file__='/tmp/pip-install-WBKL5o/mysqlclient/setup.py';f=getattr(tokenize,                                                                                                                                                              'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(comp                                                                                                                                                             ile(code, __file__, 'exec'))" install --record /tmp/pip-record-G1r32T/install-re                                                                                                                                                             cord.txt --single-version-externally-managed --compile:
    /usr/lib64/python2.7/distutils/dist.py:267: UserWarning: Unknown distributio                                                                                                                                                             n option: 'long_description_content_type'
      warnings.warn(msg)
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-2.7
    copying _mysql_exceptions.py -> build/lib.linux-x86_64-2.7
    creating build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/__init__.py -> build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/compat.py -> build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/connections.py -> build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/converters.py -> build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/cursors.py -> build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/release.py -> build/lib.linux-x86_64-2.7/MySQLdb
    copying MySQLdb/times.py -> build/lib.linux-x86_64-2.7/MySQLdb
    creating build/lib.linux-x86_64-2.7/MySQLdb/constants
    copying MySQLdb/constants/__init__.py -> build/lib.linux-x86_64-2.7/MySQLdb/                                                                                                                                                             constants
    copying MySQLdb/constants/CLIENT.py -> build/lib.linux-x86_64-2.7/MySQLdb/co                                                                                                                                                             nstants
    copying MySQLdb/constants/CR.py -> build/lib.linux-x86_64-2.7/MySQLdb/consta                                                                                                                                                             nts
    copying MySQLdb/constants/ER.py -> build/lib.linux-x86_64-2.7/MySQLdb/consta                                                                                                                                                             nts
    copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.linux-x86_64-2.7/MySQLd                                                                                                                                                             b/constants
    copying MySQLdb/constants/FLAG.py -> build/lib.linux-x86_64-2.7/MySQLdb/cons                                                                                                                                                             tants
    copying MySQLdb/constants/REFRESH.py -> build/lib.linux-x86_64-2.7/MySQLdb/c                                                                                                                                                             onstants
    running build_ext
    building '_mysql' extension
    creating build/temp.linux-x86_64-2.7
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2                                                                                                                                                              -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-sw                                                                                                                                                             itches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wa                                                                                                                                                             ll -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buf                                                                                                                                                             fer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv                                                                                                                                                              -fPIC -Dversion_info=(1,3,13,'final',0) -D__version__=1.3.13 -I/usr/include/mys                                                                                                                                                             ql -I/usr/include/python2.7 -c _mysql.c -o build/temp.linux-x86_64-2.7/_mysql.o
    _mysql.c:37:20: fatal error: Python.h: No such file or directory
     #include "Python.h"
                        ^
    compilation terminated.
    error: command 'gcc' failed with exit status 1


    ----------------------------------------
Command "/usr/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-                                                                                                                                                             install-WBKL5o/mysqlclient/setup.py';f=getattr(tokenize, 'open', open)(__file__)                                                                                                                                                             ;code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exe                                                                                                                                                             c'))" install --record /tmp/pip-record-G1r32T/install-record.txt --single-versio                                                                                                                                                             n-externally-managed --compile" failed with error code 1 in /tmp/pip-install-WBK                                                                                                                                                             L5o/mysqlclient/



I guess I shouldn't continue the installation...
Any idea what's wrong?

bullten

Does this helps

yum install python-devel -y

ring_c

Quote from: bullten on September 02, 2018, 10:23:10 PM
Does this helps

yum install python-devel -y
Yes, it does. Thanks!
BUT... then I get this error:


[root@cwp netdata]# rpm -ivh https://github.com/firehol/packages/releases/download/2018-08-19-1732/firehol-3.1.6-1.el7.noarch.rpm
Retrieving https://github.com/firehol/packages/releases/download/2018-08-19-1732/firehol-3.1.6-1.el7.noarch.rpm
error: Failed dependencies:
        ipset is needed by firehol-3.1.6-1.el7.noarch



So I can't write the file /etc/firehol/fireqos.conf


ring_c

Ok, figured it out after some search.
You first have to run this:
[codee]yum install ipset-service



Now it works. Thanks!
I'll go and check this. Looks great.

ring_c

Ok, this DOES look impressive and lots of data (too much? :) )...
Coming back to my original question - how can I see resources used by a specific site.
Let's say there's a huge increase in CPU usage - how can I tell which site is causing it and which process in this site?

ring_c

Oh, and one more thing - I see this system is open for all. How can I protect its access with a password so others won't use it?

ring_c

I got to work now, and am trying to access netdata from my workplace's PC, and get this:
Access to file is not permitted: /usr/local/apache/htdocs/netdata/usr/share/netdata/web//index.html


Is it related at all to the fact I'm trying to access it from another PC?
I've also tried from my mobile, and got the same.


Any idea what's wrong?

bullten

Well you cannot monitor per site basis. Its for those who who to see how their server is functioning and using resources based on GUI. This send notification too on desktop to let user know if something is wrong.

Well that error is related to permission I think

Did you try to run the following command for permission

chown -R netdata:netdata /usr/local/apache/htdocs/netdata

ring_c

Quote from: bullten on September 03, 2018, 11:28:47 AM
Did you try to run the following command for permission

chown -R netdata:netdata /usr/local/apache/htdocs/netdata
Wow you're a savior! Thank you!
Wasn't it part of the tutorial, though? I can swear there was such a command in there...

bullten

You can actually password protect it using /usr/local/apache/bin/htpasswd and adding it in vhost file.

Search online to know how.

Well there was command in tutorial but I don't know why it didn't execute.

ring_c

Sorry for so many questions...
What if I won't password protect it. Is there any vulnerability in leaving it open to all?
Do you protect yours?

bullten

Yes we do password protect it. Obviously its not good to keep it open. anyone can come and change settings see things. Thats not a vulnerability but why would I allow someone to see my chart :)

ring_c

Correct. I will have to investigate how to do it. As a newbie, everything looks so difficult (throws me back to the MS-DOS days before the Windows era, but I haven't used command line ever since)...


Any chance you have a guide up your sleeve to share how to put this password protection in place?