Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-16206

Make Codahale metrics reporters pluggable

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.1.2
    • 3.0.0
    • Metastore
    • None

    Description

      Hive metrics code currently allows pluggable metrics handlers - ie, handlers that take care of providing interfaces for metrics collection as well as a reporting; one of the 'handlers' is CodahaleMetrics. Codahale can work with different reporters - currently supported ones are Console, JMX, JSON file and hadoop2 sink. However, adding a new reporter involves changing that class. We would like to make this conf driven just the way MetricsFactory handles configurable Metrics classes.

      Scope of work:

      • Provide a new configuration option, HIVE_CODAHALE_REPORTER_CLASSES that enumerates classes (like HIVE_METRICS_CLASS and unlike HIVE_METRICS_REPORTER).
      • Move JsonFileReporter into its own class.
      • Update CodahaleMetrics.java to read new config option and if the new option is not present, look for the old option and instantiate accordingly) - ie, make the code backward compatible.
      • Update and add new tests.

      Attachments

        1. HIVE-16206.2.patch
          23 kB
          Sunitha Beeram
        2. HIVE-16206.3.patch
          27 kB
          Sunitha Beeram
        3. HIVE-16206.4.patch
          27 kB
          Sunitha Beeram
        4. HIVE-16206.5.patch
          33 kB
          Sunitha Beeram
        5. HIVE-16206.6.patch
          33 kB
          Sunitha Beeram
        6. HIVE-16206.7.patch
          34 kB
          Sunitha Beeram
        7. HIVE-16206.patch
          28 kB
          Sunitha Beeram

        Issue Links

          Activity

            People

              sbeeram Sunitha Beeram
              sbeeram Sunitha Beeram
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: