sharkcz / collectl

git mirror of collectl releases
Other
5 stars 4 forks source link

Thanks to Martin for reporting this. I have added it to my list of things to fix #4

Closed loberman closed 2 months ago

loberman commented 2 months ago
While using collectl today I noticed that the “disk” activity involving NMVE drives wasn’t showing up in the disk totals. Is that expected?

 I’m using

# collectl -v
collectl V4.3.8 (zlib:2.102)

This already has the appropriate disk filter (i.e., I didn’t add it):
# grep DiskFilter /etc/collectl.conf

# When collectl reads disk data, it filters out any that don't match the DiskFilter,

DiskFilter = /hd[ab] | sd[a-z]+ |dm-\d+ |xvd[a-z] |fio[a-z]+ | vd[a-z]+ |emcpower[a-z]+ |psv\d+ |nvme\d+n\d+ | nvme\d+c\d+|rbd\d+ /

If I run
# collectl -sD --dskfilt nvme0c0n1
I do see the activity for that device. However, I don’t see it included in the disk totals for example collectl -scmnd

Thanks I will check on this and figure it out.

Regards
Laurence
loberman commented 2 months ago
I think I know what is going on here. Its the devices named nvme0cxx that are probably not being included in the aggrgate. I will fix it.

I just tested here in my lab and its fine with the generic device names

[root@segstorage3 ~]# dd if=/dev/nvme7n2 of=/dev/null bs=64K iflag=direct count=1000000
^C339433+0 records in
339432+0 records out
22245015552 bytes (22 GB, 21 GiB) copied, 31.6451 s, 703 MB/s

#         <----CPU[HYPER]-----><----------Disks----------->
#Time     cpu sys inter  ctxsw KBRead  Reads KBWrit Writes 
16:24:56    0   0 12978  22909 712320  11180      0      0 
16:24:57    0   0 12917  22699 708480  11113      0      0 
16:24:58    0   0 12473  29597 684288  10714      0      0 
loberman commented 2 months ago
Indeed, when native multipathhing is in use we see this

uuid.263cbcb4-9ae8-49f5-8918-745dba717109 [nvme]:nvme0n2 NVMe,Linux,4.18.0-4
size=781422768 features='n/a' hwhandler='ANA' wp=rw
|-+- policy='n/a' prio=50 status=optimized
| `- 0:0:1     nvme0c0n1 0:0     n/a   optimized live   
|-+- policy='n/a' prio=50 status=optimized
| `- 0:1:1     nvme0c1n1 0:0     n/a   optimized live   
|-+- policy='n/a' prio=50 status=optimized
| `- 0:2:1     nvme0c2n1 0:0     n/a   optimized live   
`-+- policy='n/a' prio=50 status=optimized
  `- 0:3:1     nvme0c3n1 0:0     n/a   optimized live   

[root@segstorage3 ~]# dd if=/dev/nvme0n1 of=/dev/null bs=64K iflag=direct count=1000000
^C75119+0 records in
75118+0 records out
4922933248 bytes (4.9 GB, 4.6 GiB) copied, 12.4603 s, 395 MB/s

#         <----CPU[HYPER]-----><----------Disks----------->
#Time     cpu sys inter  ctxsw KBRead  Reads KBWrit Writes 
16:38:21    0   0  4617  12348      0      6      0      0 
16:38:22    0   0  6901  18649      0      0      0      0 
16:38:23    0   0  6819  18595      0      0      0      0 
16:38:24    0   0  6739  18419      0      0      0      0 
16:38:25    0   0  5628  15048      0      0      0      0 

I will see what can be done
loberman commented 2 months ago

sent a fix for Martin to test.

loberman commented 2 months ago

FIxed in latest release