register from args

too wild
receive array instead of array reference

This is useful when handle from CLI interface
fix test
pass rest arguments to collector