Refactoring to try reflection and Popymorphism in GetMetricHistory