Samba monitoring with Netdata
Monitors the performance metrics of Samba file sharing using smbstatus
command-line tool.
Executed commands:
sudo -n smbstatus -P
Requirements
smbstatus
programsudo
programsmbd
must be compiled with profiling enabledsmbd
must be started either with the-P 1
option or insidesmb.conf
usingsmbd profiling level
The module uses smbstatus
, which can only be executed by root
. It uses
sudo
and assumes that it is configured such that the netdata
user can execute smbstatus
as root without a
password.
- Add to your
/etc/sudoers
file:
which smbstatus
shows the full path to the binary.
netdata ALL=(root) NOPASSWD: /path/to/smbstatus
- Reset Netdata's systemd unit CapabilityBoundingSet (Linux distributions with systemd)
The default CapabilityBoundingSet doesn't allow using sudo
, and is quite strict in general. Resetting is not optimal, but a next-best solution given the inability to execute smbstatus
using sudo
.
As the root
user, do the following:
mkdir /etc/systemd/system/netdata.service.d
echo -e '[Service]\nCapabilityBoundingSet=~' | tee /etc/systemd/system/netdata.service.d/unset-capability-bounding-set.conf
systemctl daemon-reload
systemctl restart netdata.service
Charts
Syscall R/Ws in kilobytes/s
- sendfile
- recvfile
Smb2 R/Ws in kilobytes/s
- readout
- writein
- readin
- writeout
Smb2 Create/Close in operations/s
- create
- close
Smb2 Info in operations/s
- getinfo
- setinfo
Smb2 Find in operations/s
- find
Smb2 Notify in operations/s
- notify
Smb2 Lesser Ops as counters
- tcon
- negprot
- tdis
- cancel
- logoff
- flush
- lock
- keepalive
- break
- sessetup
Enable the collector
The samba
collector is disabled by default. To enable it, use edit-config
from the
Netdata config directory, which is typically at /etc/netdata
, to edit the python.d.conf
file.
cd /etc/netdata # Replace this path with your Netdata config directory, if different
sudo ./edit-config python.d.conf
Change the value of the samba
setting to yes
. Save the file and restart the Netdata Agent with sudo systemctl
restart netdata
, or the appropriate method for your system.
Configuration
Edit the python.d/samba.conf
configuration file using edit-config
from the
Netdata config directory, which is typically at /etc/netdata
.
cd /etc/netdata # Replace this path with your Netdata config directory, if different
sudo ./edit-config python.d/samba.conf
Was this page helpful?
Need further help?
Search for an answer in our community forum.
Contribute
- Join our community forum
- Learn how to contribute to Netdata's open-source project
- Submit a feature request