Did you mean to use log.scan(/<snip>/).each{} instead of
log.scan(/<snip>/){} ? Note that your version calls each on the
results of scan, instead of passing a block to scan.

The return value of each is simply the array it was called on itself.

The return value of scan w/o block is array of groups matched by regex
(arrays), w/ block - the string itself.


-- Matma Rex