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
- bootstrap
- ember.js
- java
- javascript
- prototyping
Log in or sign up for Devpost to join the conversation.