Inspiration

  • System admin David's boss needs to know how cpu utilization is going on Monday mornings for a report to administrators
  • David has to go through, find all necessary charts, find the right dates, screen shot capture... too much work.
  • David wishes Ambari had a way to automatically create a nice summary report about the metrics he cares about.

What it does

Report Scheduler

  • Widget to create a summary report instance
  • Ambari Scheduler will collect requested information at interval set by user
  • Ambari will create a summary report html which creates a comprehensive summary of cluster performance based on user's request

  • Currently no way to schedule reports to be created -Need to add an option to Manage/Create summary reports in Dashboard of Component

How I built it

  • New Action in the summary box of Dashboard components (ex. HDFS, Hbase, Yarn) /ambari/ambari-webapp/views/main/service/info/summary.js
  • New Widget Modal for Report Scheduler
  • Consistent with Ambari design

  • Rest Calls --POST to create a report scheduler instance (which will collect data and generate HTML files), GET to display report schedulers --Use existing metrics API's

  • Database Changes --Table to store the report schedules -HTML Report Generator --Given JSON FILE we generate HTML Files --Charts/Graphs with requested information over time --Save file as “.html”

  • Scheduler --ExecutionSchedulerManager --Cron job will take in start and end date & time

Challenges I ran into

-- Time to implement everything!

Accomplishments that I'm proud of

-- Hopefully making system admin's life easier

What I learned

-- There is so much we can do and add to Ambari

What's next for Report Scheduler

-- More customizations to the widget -- Add emails, add more thresholds -- Alert update suggestions/analytics based on history of alerts seen -- More interactive charts to understand how alerts that popped up relate to the charts

Built With

Share this project:
×

Updates