It looks okay to me- the top of the .raw/.dsk/.tab files have lines like:
# NumDisks:   14 DiskNames: sdb sda dm-0 dm-1 dm-2 e24.0 e21.0 e22.0
e55.0 e53.0 e12.0 e23.0 e20.0 e25.0
(and the full names, like etherd/e24.0, are preserved in the raw data)

The output of "collectl -sdD -P" has the shorter names embedded:
[DSK:e55.0]Reads [DSK:e55.0]RMerge [DSK:e55.0]RKBytes
[...]
20150928 10:13:47 0 0 0 0 0 0 0 0 0 sdb 0 0 0 0 0 0 0 0 0 0 0 sda 0 0 0
0 0 0 0 0 0 0 0 dm-0 0 0 0 0 0 0 0 0 0 0 0 dm-1 0 0 0 0 0 0 0 0 0 0 0
dm-2 0 0 0 0 0 0 0 0 0 0 0 e24.0 0 0 0 0 0 0 0 0 0 0 0 e21.0 0 0 0 0 0 0
0 0 0 0 0 e22.0 0 0 0 0 0 0 0 0 0 0 0 e55.0 0 0 0 0 0 0 0 0 0 0 0 e53.0
0 0 0 0 0 0 0 0 0 0 0 e12.0 0 0 0 0 0 0 0 0 0 0 0 e23.0 0 0 0 0 0 0 0 0
0 0 0 e20.0 0 0 0 0 0 0 0 0 0 0 0 e25.0 0 0 0 0 0 0 0 0 0 0 0

Playback with -p shows the shortened names as well.


The flag to handle disk name remaps seems like a good idea.

- Gabriel

On 2015-09-26 13:10, Mark Seger wrote:
> sorry for not getting back sooner.  this seems reasonable but I just
> want to make sure it's complete.  for example that when building plot
> files do the headers get dealt with correctly?  and does playback work
> as well?  if following the 'cciss' route, it's probably going to work
> and that;s probably what I would have done too.  perhaps a switch like
> --diskremap foo:bar,xxx:yyy where these are sets of names you want to
> remap?  in your case you might say somethng like --diskremap etherd/:
> leaving off the new name to just indicate replacing it with nothing.
>  make sense?
> -mark
> 
> 
> On Tue, Sep 22, 2015 at 2:29 PM, Eggleston, Gabriel (NIH/NHGRI) [C]
> <[email protected] <mailto:[email protected]>> wrote:
> 
>     Good afternoon,
> 
>     We're monitoring some systems with Ganglia and collectl, and are also
>     using AoE. The devices are in the format "/dev/etherd/e##.#" (or
>     "/dev/etherd/e##.#p#" for partitions,) and they show up in
>     /proc/diskstats as "etherd/e##.#"
> 
>     The metrics sent by gexpr (like "diskinfo.writes.etherd/e21.0") make
>     Ganglia pretty upset due to the "/" character. I see that
>     formatit.ph <http://formatit.ph>
>     strips "cciss/" from disk names, so I tried duplicating that with
>     "etherd/" in the changes in the diff below. It's working well for us
>     with this change applied - could you consider including it in the next
>     version of collectl?
> 
>     (We currently use these devices without partitioning, but for
>     consistency I tried copying the method of excluding partitions from
>     cciss devices. I wasn't sure if the other cciss special-case handling in
>     this file applied to the AoE devices, so I left those alone.)
> 
>     --
> 
>     --- formatit.ph <http://formatit.ph> 2015-09-22 10:31:21.000000000 -0400
>     +++ formatit.ph.patch1  2015-09-22 11:59:30.000000000 -0400
>     @@ -239,6 +239,7 @@
>          my $diskName=$fields[3];
>          $diskName=remapDiskName($diskName)    if $diskRemapFlag;
>          $diskName=~s/cciss\///;
>     +    $diskName=~s/etherd\///;
>          push @dskOrder, $diskName;
>          $disks{$diskName}=$dskIndexNext++;
>        }
>     @@ -697,11 +698,12 @@
> 
>                # now for the magic.  Get the partition size and name,
>     but ignore
>                # cciss devices on controller 0 OR any devices with
>     partitions
>     -          # noting cciss device partitions end in 'p-digit' and sd
>     partitions
>     +          # noting cciss/etherd device partitions end in 'p-digit' and
>     sd partitions
>                # always end in a digit.
>               ($size, $name)=(split(/\s+/, $part))[3,4];
>               $name=~s/cciss\///;
>     -         next    if $name=~/^c0|^c.*p\d$|^sd.*\d$/;
>     +         $name=~s/etherd\///;
>     +         next    if $name=~/^c0|^c.*p\d$|^e.*p\d$|^sd.*\d$/;
>                $partitionSize{$name}=$size;
>              }
> 
>     @@ -3278,6 +3280,7 @@
>          ($major, $minor, $diskName, @dskFields)=split(/\s+/, $data);
> 
>          $diskName=~s/cciss\///;
>     +    $diskName=~s/etherd\///;
>          if (!defined($disks{$diskName}))
>          {
>            $dskChangeFlag|=1;    # new disk found
>     @@ -4599,6 +4602,7 @@
> 
>     $temp.="[DSK]QueLen${SEP}[DSK]Wait${SEP}[DSK]SvcTim${SEP}[DSK]Util${SEP}";
>            $temp=~s/DSK/DSK:$dskName/g;
>            $temp=~s/cciss\///g;
>     +      $temp=~s/etherd\///g;
>            $dskHeaders.=$temp;
>          }
>          writeData(0, $ch, \$dskHeaders, DSK, $ZDSK, 'dsk', \$headersAll);
> 
>     --
> 
>     Thanks,
>     Gabriel Eggleston
>     NHGRI Contractor – Digicon
>     [email protected] <mailto:[email protected]>
> 
> 
> 
>     
> ------------------------------------------------------------------------------
>     _______________________________________________
>     Collectl-interest mailing list
>     [email protected]
>     <mailto:[email protected]>
>     https://lists.sourceforge.net/lists/listinfo/collectl-interest
> 
> 

------------------------------------------------------------------------------
_______________________________________________
Collectl-interest mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/collectl-interest

Reply via email to