Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Metrics-Driven Engineering with GrowthForecast

Metrics-Driven Engineering with GrowthForecast

Takumi Sakamoto

November 20, 2012
Tweet

More Decks by Takumi Sakamoto

Other Decks in Technology

Transcript

  1. About me • Takumi SAKAMOTO • twitter: @takus • facebook:

    facebook.com/takumi.sakamoto • DeNA Co., Ltd. (2012.4 ~) • Operation Engineer 2 2 Saturday, December 15, 12
  2. Metrics? 5 • Service Metrics • How many users? •

    How many PVs? • How many sales? • How many inquiries? • How many tweets of our services? • How many users of rival service? 5 Saturday, December 15, 12
  3. Metrics? • Application Metrics • How fast are pages generating?

    • How fast do workers process queues? • How many jobs in queue? • How many RAMs used by daemon process? • How many Errors or Warns? 6 6 Saturday, December 15, 12
  4. Metrics? • System Metrics • CPU • Memory • Disk

    I/O • Network I/O • Network connections • QPS of databases • Cache hit rates 7 7 Saturday, December 15, 12
  5. Easy Install $ sudo yum groupinstall "Development Tools" $ sudo

    yum install pkgcon g glib2-devel gettext libxml2-devel pango-devel cairo-devel $ cpanm -n https://github.com/downloads/kazeburo/ GrowthForecast/GrowthForecast-0.31.tar.gz $ growthforecast.pl --data-dir /path/to/data_dir 16 16 Saturday, December 15, 12
  6. Easy Update # POST to http://host/api/:service/:section/:graph my $ua = LWP::UserAgent->new;

    $ua->post('http://host:5125/api/comm/user/register', { number => $registered_user, color => '#333399' }); 17 17 Saturday, December 15, 12
  7. Pros/Cons 19 • Pros ;) • Easy install • Update

    metrics by HTTP • Regular data size (∵ RRDTool) • Integrated with uentd • Cons :-( • Managing large # of graphs is difficult • But, graph API is available • You can make your own WebUI easily • Can’t update past metrics 19 Saturday, December 15, 12
  8. Tips • Auto Refresh Plus • auto reload Chrome Tab

    • https://chrome.google.com/webstore/detail/ auto-refresh-plus/ oilipfekkmncanaajkapbpancpelijih/related 21 21 Saturday, December 15, 12
  9. Conclusion • Metrics is important • We can’t make a

    right choice without metrics • But we are so busy for adding new features • GrowthForecast • We can make service/application/system metrics graph easily • We can customize our own dashboard with graph API • @kazeburo ware is great 22 22 Saturday, December 15, 12
  10. See Also • GrowthForcast • http://kazeburo.github.com/GrowthForecast/ • Metrics Driven Engineering

    at Etsy • http://www.slideshare.net/mikebrittain/ metrics-driven-engineering-at-etsy 24 24 Saturday, December 15, 12