base.rb 509 B

12345678910111213141516171819202122232425262728293031
  1. require 'sidekiq'
  2. require 'sidekiq/api'
  3. module Sidekiq
  4. module Cloudwatch
  5. module Metric
  6. class Base
  7. DEFAULT_VALUE = "0.0"
  8. DEFAULT_UNIT = nil
  9. def self.descendants
  10. ObjectSpace.each_object(Class).select { |klass| klass < self }
  11. end
  12. def value
  13. DEFAULT_VALUE
  14. end
  15. def unit
  16. DEFAULT_UNIT
  17. end
  18. private
  19. def stats
  20. @stats ||= ::Sidekiq::Stats.new
  21. end
  22. end
  23. end
  24. end
  25. end