Uploaded image for project: 'Apache Ozone'
  1. Apache Ozone
  2. HDDS-1116

Add java profiler servlet to the Ozone web servers

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.4.0
    • None

    Description

      Thanks to gopalv we learned that prasanth_j implemented a helper servlet in Hive to initialize new async profiler sessions and provide the svg based flame graph over HTTP. (see HIVE-20202)

      It seems to very useful as with this approach the profiling could be very easy.

      This patch imports the servlet from the Hive code base to the Ozone code base with minor modification (to make it work with our servlet containers)

      • The two servlets are unified to one
      • Streaming the svg to the browser based on IOUtils.copy
      • Output message is improved

      By default the profile servlet is turned off, but you can enable it with 'hdds.profiler.endpoint.enabled=true' ozone-site.xml settings. In that case you can access the /prof endpoint from scm,om,s3g.

      You should upload the async profiler first (https://github.com/jvm-profiling-tools/async-profiler) and set the ASYNC_PROFILER_HOME environment variable to find it.

      Attachments

        Issue Links

          Activity

            People

              elek Marton Elek
              elek Marton Elek
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 50m
                  50m