0

I want to use collectl (V4.1.0-1) to get lustre (version=2.12.2_178_ga0680fe_dirty) specific stats. But, it says "-sl disabled because this system does not have lustre modules installed"! But, system does have the necessary lustre modules. Can somebody help in resolving this issue.

root@dgx1:~# collectl -sL
Use of uninitialized value $strace in pattern match (m//) at /usr/share/collectl/formatit.ph line 178.
Use of uninitialized value $speed in numeric gt (>) at /usr/share/collectl/formatit.ph line 181.
-sl disabled because this system does not have lustre modules installed
Error: no subsystems selected
type 'collectl -h' for help
root@dgx1:~#

root@dgx1:~# collectl -sl
Error: invalid subsystem 'l'
type 'collectl -h' for help
root@dgx1:~#

Following are the system details.

root@dgx1:~# uname -r
4.15.0-45-generic

root@dgx1:~# uname -a
Linux dgx1 4.15.0-45-generic #48-Ubuntu SMP Tue Jan 29 16:28:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

root@dgx1:~# lctl get_param version
version=2.12.2_178_ga0680fe_dirty

root@dgx1:~# lsmod | grep lustre
lustre                737280  2093
lmv                   180224  3 lustre
mdc                   237568  3 lustre
lov                   311296  1397 lustre
ptlrpc               1306624  8 fld,osc,fid,mgc,lov,mdc,lmv,lustre
obdclass             2158592  1421 fld,osc,fid,ptlrpc,mgc,lov,mdc,lmv,lustre
lnet                  557056  7 osc,ko2iblnd,obdclass,ptlrpc,mgc,lmv,lustre
libcfs                471040  12 fld,lnet,osc,fid,ko2iblnd,obdclass,ptlrpc,mgc,lov,mdc,lmv,lustre

root@dgx1:~# collectl --version
collectl V4.1.0-1 (zlib:2.074,HiRes:1.9741)
Copyright 2003-2016 Hewlett-Packard Development Company, L.P.
collectl may be copied only under the terms of either the Artistic License
or the GNU General Public License, which may be found in the source kit
user3488903
  • 131
  • 4

2 Answers2

0

I don't know the internal details of collectl specifically, but one likely candidate for the source of the problem is that the Lustre stats have been moving from procfs to sysfs and/or debugfs in newer releases due to upstream kernel coding requirements.

This is handled transparently inside Lustre lctl and lfs by looking in a number of places for the stats/parameters files {/sys/{fs,kernel/debug}/{lnet,lustre},/proc/{fs,sys}/{lnet,lustre}}, and possibly collectl needs to do the same (there are now library APIs to find such stats files that it could use). The lctl binary will also automatically mount /sys/kernel/debug if it isn't already mounted, so it may be that you need to add this to your /etc/fstab so that it is mounted when collectl runs.

LustreOne
  • 339
  • 2
  • 9
0

collectl needs to be patched since version 2.10. Notice however that collectl is no longer maintained (see this post on collectl).

There are also some other nice and current alternatives listed on the Whamcloud's third party tools page.

dig
  • 1