0
What’s happening in production Mårten Gustafson @martengustafson http://marten.gustafson.pp.se/ marten.gustafson@gmail.com
Hi!
which services are utilized?
most?
least?
most memory?
highest latency?
does it work?
http://www.picpop.com/
what’s happening in    production?
right. this. second.
measure!
everything!
in real time!
it’s cheap...
...and simple!
meter = metrics.meter("results",            "records",            TimeUnit.SECONDS)...calculate result...meter.mark(result...
counter = Metrics.newCounter( getClass(),                "requests")...receive request...counter.inc()
counters
timers
averages
etc...
how?
develop something, or...
...for java & scala use:https://github.com/codahale/metrics
JMX
Servlet     =HTTP + JSON
ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple  {"name":"AutocompleteService","...
ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple  {"name":"AutocompleteService","...
ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple  {"name":"AutocompleteService","...
ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple  {"name":"AutocompleteService","...
data is good
visualized data   is better
visualize
visualization = insight
insight = knowledge
knowledge = safety
does it work?
No.
does it work?
Yes.
which services are utilized?
available memory?
1 screen        +  1 computer        =visualization!
why not more?
think build server...
...only bigger...
...and more
what’s happening in   production?
visualizing data in  real time givesinsight and safety
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
2011 05-23 metrics-agilasverige-english
Upcoming SlideShare
Loading in...5
×

2011 05-23 metrics-agilasverige-english

814

Published on

10 minute lightning talk delivered at Agilasverige (Agile Sweden) 2011

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
814
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • \n
  • My name is Mårten, I work as a software developer\nBut I usually also have one foot - sometimes a whole leg - in our infrastructure\n
  • I work here.\nWe provide a web site, that’s our offering. Our core.\n
  • Our site is, amongst other things, built from a slew of Java services\nWe have multiple services on each server\n
  • We like to be availbale, thus we have multiple servers\nSame service, on multiple servers\nMultiple services on same server\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • ...or at least look at this to get inspired\n
  • \n
  • \n
  • JSON, not always funny to look at\nThe really interesting things are small tidbits of information “hidden” in this blob of data\n
  • Is it ok?\n
  • How much memory do we consume?\n
  • How many requests have we served?\n
  • \n
  • \n
  • \n
  • Visualization makes it easy to distinguish worse from better\n
  • Visualization makes it easy to distinguish worse from better\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Obviously the top one\n
  • \n
  • \n
  • \n
  • \n
  • Your project / team probably have a build server monitor, which is a good thing.\nBut how much “dashboard estate” do you spend on production - where your code actually (hopefully) delivers value?\n
  • \n
  • \n
  • \n
  • The dashboard where I work - all servers, most services\n
  • \n
  • Thanks\n
  • Transcript of "2011 05-23 metrics-agilasverige-english"

    1. 1. What’s happening in production Mårten Gustafson @martengustafson http://marten.gustafson.pp.se/ marten.gustafson@gmail.com
    2. 2. Hi!
    3. 3. which services are utilized?
    4. 4. most?
    5. 5. least?
    6. 6. most memory?
    7. 7. highest latency?
    8. 8. does it work?
    9. 9. http://www.picpop.com/
    10. 10. what’s happening in production?
    11. 11. right. this. second.
    12. 12. measure!
    13. 13. everything!
    14. 14. in real time!
    15. 15. it’s cheap...
    16. 16. ...and simple!
    17. 17. meter = metrics.meter("results", "records", TimeUnit.SECONDS)...calculate result...meter.mark(results.size())
    18. 18. counter = Metrics.newCounter( getClass(), "requests")...receive request...counter.inc()
    19. 19. counters
    20. 20. timers
    21. 21. averages
    22. 22. etc...
    23. 23. how?
    24. 24. develop something, or...
    25. 25. ...for java & scala use:https://github.com/codahale/metrics
    26. 26. JMX
    27. 27. Servlet =HTTP + JSON
    28. 28. ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple {"name":"AutocompleteService","counter":0},{"name":"AutocompleteService: Queries exec "AutocompleteService","status":"Ok"}]},{"name":"geo","application_status":"Ok","counter_to0},{"name":"PointConverter-deprecated","counter":0}],"monitored_services":[{"name":"Point ication_status":"Ok","counter_tot":1,"request_counters":[{"name":"RouteService-iPhone","c monitored_services":[{"name":"RouteService","status":"Ok"}]},{"name":"image","application :[{"name":"ImageService","counter":19}],"monitored_services":[{"name":"ImageService","sta n_status":"Ok","counter_tot":0,"request_counters":[{"name":"LocalityResolverService-cityN e-countyCode","counter":0},{"name":"LocalityResolverService-countyName","counter":0}],"erService","status":"Ok"}]},{"name":"sms.v2","application_status":"Ok","counter_tot":0,"requ s","counter":0},{"name":"SmsService","counter":0}],"monitored_services":[{"name":"SmsServ ":"Ok","counter_tot":0,"request_counters":[{"name":"WeatherService-forecasts","counter":0ame":"WeatherService-forecast","counter":0}],"monitored_services":[{"name":"WeatherServiplication_status":"Ok","counter_tot":3,"request_counters":[{"name":"AutocompleteService:r ervice","counter":3}],"monitored_services":[{"name":"AutocompleteService","status":"Ok"}]}unter_tot":55,"request_counters":[{"name":"PoiService:chunks","counter":47},{"name":"PoiS ":"PoiService:poi","counter":0}],"monitored_services":[{"name":"PoiService","status":"Ok"}]}, ication_status":"Ok","counter_tot":12244,"request_counters":[{"name":"memory.allocated" 2749},{"name":"memory.max","counter":4079},{"name":"memory.used","counter":1329},{" :"JvmMonitor","status":"Ok"}]},{"name":"weather.v2","application_status":"Ok","counter_tot r-forecast","counter":0},{"name":"WeatherService-rectangle-forecasts","counter":0},{"namame":"WeatherService-total","counter":0},{"name":"WeatherService-everythirdhour-forecas ange-forecast","counter":0},{"name":"WeatherService-oneperday-forecast","counter":0}]," [{"name":"WeatherService","status":"Ok"}]}]}
    29. 29. ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple {"name":"AutocompleteService","counter":0},{"name":"AutocompleteService: Queries exec "AutocompleteService","status":"Ok"}]},{"name":"geo","application_status":"Ok","counter_to0},{"name":"PointConverter-deprecated","counter":0}],"monitored_services":[{"name":"Point ication_status":"Ok","counter_tot":1,"request_counters":[{"name":"RouteService-iPhone","c monitored_services":[{"name":"RouteService","status":"Ok"}]},{"name":"image","application :[{"name":"ImageService","counter":19}],"monitored_services":[{"name":"ImageService","sta n_status":"Ok","counter_tot":0,"request_counters":[{"name":"LocalityResolverService-cityN e-countyCode","counter":0},{"name":"LocalityResolverService-countyName","counter":0}],"erService","status":"Ok"}]},{"name":"sms.v2","application_status":"Ok","counter_tot":0,"requ s","counter":0},{"name":"SmsService","counter":0}],"monitored_services":[{"name":"SmsServ ":"Ok","counter_tot":0,"request_counters":[{"name":"WeatherService-forecasts","counter":0ame":"WeatherService-forecast","counter":0}],"monitored_services":[{"name":"WeatherServication_status":"ok","counter_tot":3,"request_counters":[{"name":"AutocompleteServervice","counter":3}],"monitored_services":[{"name":"AutocompleteService","status":"Ok"}]}unter_tot":55,"request_counters":[{"name":"PoiService:chunks","counter":47},{"name":"PoiS":"PoiService:poi","counter":0}],"monitored_services":[{"name":"PoiService","status":"Ok"}]},ication_status":"Ok","counter_tot":12244,"request_counters":[{"name":"memory.allocated" 2749},{"name":"memory.max","counter":4079},{"name":"memory.used","counter":1329},{" :"JvmMonitor","status":"Ok"}]},{"name":"weather.v2","application_status":"Ok","counter_totr-forecast","counter":0},{"name":"WeatherService-rectangle-forecasts","counter":0},{"namame":"WeatherService-total","counter":0},{"name":"WeatherService-everythirdhour-forecas ange-forecast","counter":0},{"name":"WeatherService-oneperday-forecast","counter":0}]," [{"name":"WeatherService","status":"Ok"}]}]}
    30. 30. ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple {"name":"AutocompleteService","counter":0},{"name":"AutocompleteService: Queries exec "AutocompleteService","status":"Ok"}]},{"name":"geo","application_status":"Ok","counter_to0},{"name":"PointConverter-deprecated","counter":0}],"monitored_services":[{"name":"Point ication_status":"Ok","counter_tot":1,"request_counters":[{"name":"RouteService-iPhone","c monitored_services":[{"name":"RouteService","status":"Ok"}]},{"name":"image","application :[{"name":"ImageService","counter":19}],"monitored_services":[{"name":"ImageService","sta n_status":"Ok","counter_tot":0,"request_counters":[{"name":"LocalityResolverService-cityN e-countyCode","counter":0},{"name":"LocalityResolverService-countyName","counter":0}],"erService","status":"Ok"}]},{"name":"sms.v2","application_status":"Ok","counter_tot":0,"requ s","counter":0},{"name":"SmsService","counter":0}],"monitored_services":[{"name":"SmsServ ":"Ok","counter_tot":0,"request_counters":[{"name":"WeatherService-forecasts","counter":0ame":"WeatherService-forecast","counter":0}],"monitored_services":[{"name":"WeatherServiplication_status":"Ok","counter_tot":3,"request_counters":[{"name":"AutocompleteService:r ervice","counter":3}],"monitored_services":[{"name":"AutocompleteService","status":"Ok"}]}unter_tot":55,"request_counters":[{"name":"PoiService:chunks","counter":47},{"name":"PoiS ":"PoiService:poi","counter":0}],"monitored_services":[{"name":"PoiService","status":"Ok"}]}, ication_status":"Ok","counter_tot":12244,"request_counters":[{"name":"memory.allocated"9},{"name":"memory.max","counter":4079},{"name":"memory.used","counter": 132 :"JvmMonitor","status":"Ok"}]},{"name":"weather.v2","application_status":"Ok","counter_totr-forecast","counter":0},{"name":"WeatherService-rectangle-forecasts","counter":0},{"namame":"WeatherService-total","counter":0},{"name":"WeatherService-everythirdhour-forecas ange-forecast","counter":0},{"name":"WeatherService-oneperday-forecast","counter":0}]," [{"name":"WeatherService","status":"Ok"}]}]}
    31. 31. ete.v2","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"Autocomple {"name":"AutocompleteService","counter":0},{"name":"AutocompleteService: Queries exec "AutocompleteService","status":"Ok"}]},{"name":"geo","application_status":"Ok","counter_to0},{"name":"PointConverter-deprecated","counter":0}],"monitored_services":[{"name":"Point ication_status":"Ok","counter_tot":1,"request_counters":[{"name":"RouteService-iPhone","c RouteService","counter":1}],"monitored_services":[{"name":"RouteService","status":"Ok"}]},us":"Ok","counter_tot": 19,"request_counters":[{"name":"ImageService","counter":19"}]},{"name":"locality","application_status":"Ok","counter_tot":0,"request_counters":[{"name":"LocalityResolverService-countyCode","counter":0},{"name":"LocalityResolverService-cou calityResolverService","status":"Ok"}]},{"name":"sms.v2","application_status":"Ok","counter s","counter":0},{"name":"SmsService","counter":0}],"monitored_services":[{"name":"SmsServ ":"Ok","counter_tot":0,"request_counters":[{"name":"WeatherService-forecasts","counter":0ame":"WeatherService-forecast","counter":0}],"monitored_services":[{"name":"WeatherServiplication_status":"Ok","counter_tot":3,"request_counters":[{"name":"AutocompleteService:r ervice","counter":3}],"monitored_services":[{"name":"AutocompleteService","status":"Ok"}]}unter_tot":55,"request_counters":[{"name":"PoiService:chunks","counter":47},{"name":"PoiS ":"PoiService:poi","counter":0}],"monitored_services":[{"name":"PoiService","status":"Ok"}]}, ication_status":"Ok","counter_tot":12244,"request_counters":[{"name":"memory.allocated" 2749},{"name":"memory.max","counter":4079},{"name":"memory.used","counter":1329},{" :"JvmMonitor","status":"Ok"}]},{"name":"weather.v2","application_status":"Ok","counter_tot r-forecast","counter":0},{"name":"WeatherService-rectangle-forecasts","counter":0},{"namame":"WeatherService-total","counter":0},{"name":"WeatherService-everythirdhour-forecas ange-forecast","counter":0},{"name":"WeatherService-oneperday-forecast","counter":0}]," [{"name":"WeatherService","status":"Ok"}]}]}
    32. 32. data is good
    33. 33. visualized data is better
    34. 34. visualize
    35. 35. visualization = insight
    36. 36. insight = knowledge
    37. 37. knowledge = safety
    38. 38. does it work?
    39. 39. No.
    40. 40. does it work?
    41. 41. Yes.
    42. 42. which services are utilized?
    43. 43. available memory?
    44. 44. 1 screen + 1 computer =visualization!
    45. 45. why not more?
    46. 46. think build server...
    47. 47. ...only bigger...
    48. 48. ...and more
    49. 49. what’s happening in production?
    50. 50. visualizing data in real time givesinsight and safety
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×