Samba monitoring with Netdata
Monitors the performance metrics of Samba file sharing using smbstatus command-line tool.
Executed commands:
sudo -n smbstatus -P
Requirements
smbstatusprogramsudoprogramsmbdmust be compiled with profiling enabledsmbdmust be started either with the-P 1option or insidesmb.confusingsmbd 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/sudoersfile: 
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