SlideShare a Scribd company logo
1 of 30
Download to read offline
Erlang Application Metrics
                       with Folsom
                       Joe Williams (@williamsjoe)

                       Boundary (@boundary / boundary.com)




Friday, March 30, 12
Who Am I?

                  • Joe Williams

                       • @williamsjoe

                       • Ops at Boundary




Friday, March 30, 12
What is Boundary?

                  • Realtime Monitoring and Analytics Platform

                  • We’re hiring!

                  • TRY MY PRODUCT




Friday, March 30, 12
Agenda

                  • Current and Future Monitoring Systems

                  • Define “Application Metrics”

                  • What is Folsom?

                  • How do you use Folsom?



Friday, March 30, 12
Legacy Monitoring Tools
                  • Consumers of application metrics

                       • Munin, Ganglia, etc

                  • Wide variety of protocols, interfaces and formats

                  • Usually RRD, results in inflexible, infrequently refreshed PNGs on
                    HTML

                  • Not what this talk is about.


Friday, March 30, 12
Current Monitoring Tools

                  • Consumers of application metrics

                       • OpenTSDB, statsd, Rienmann, etc are a steps in the right direction

                  • Hopefully fewer protocols, interfaces and formats

                  • Realtime, dynamic graphing

                  • Not what this talk is about.


Friday, March 30, 12
Application Metrics



                       • “.. code generates business value when it runs.” ~ Coda Hale




Friday, March 30, 12
Application Metrics

                  • Code instrumentation

                       • Write code to measure code

                       • Verify code behaves as you expect

                  • Exporting results of instrumentation

                  • General VM health


Friday, March 30, 12
Folsom

                  • Application-level metrics

                  • Multiple metric types

                  • Powerful statistical analysis

                  • Easily extensible



Friday, March 30, 12
Folsom


                        DEMO!



Friday, March 30, 12
Metric Types
                  • Counters

                  • Gauges

                  • Histograms

                  • Histories

                  • Meters

                  • Erlang VM Metrics

Friday, March 30, 12
Counters


                  • Counter metrics provide increment and decrement capabilities for
                    a single scalar value.




Friday, March 30, 12
Counters

                            > folsom_metrics:new_counter(Name).
                       > folsom_metrics:notify({Name, {inc, Value}}).
                       > folsom_metrics:notify({Name, {dec, Value}}).




Friday, March 30, 12
Gauges


                  • Gauges are point-in-time single value metrics.




Friday, March 30, 12
Gauges

                          > folsom_metrics:new_gauge(Name).
                       > folsom_metrics:notify({Name, Value}).




Friday, March 30, 12
Histograms

                  • Histograms are collections of values that have statistical analysis
                    done to them, such as mean, min, max, kurtosis and percentile.

                  • The can be used like "timers" as well with the timed update
                    functions.




Friday, March 30, 12
Histograms

                                   > folsom_metrics:new_histogram(Name).
                       > folsom_metrics:histogram_timed_update(Name, Mod, Fun, Args).
                         > folsom_metrics:histogram_timed_update(Name, Fun, Args).
                            > folsom_metrics:histogram_timed_update(Name, Fun).
                                  > folsom_metrics:notify({Name, Value}).




Friday, March 30, 12
Histories


                  • Histories are a collection of past events, such as errors or log
                    messages.




Friday, March 30, 12
Histories

                              > folsom_metrics:new_history(Name).
                       > folsom_metrics:get_history_values(Name, Count).
                         > folsom_metrics:notify({Name, Value}).




Friday, March 30, 12
Meters


                  • Meters are increment only counters with mean rates and
                    exponentially weighted moving averages applied to them, similar
                    to a unix load average.




Friday, March 30, 12
Meters

                           > folsom_metrics:new_meter(Name).
                        > folsom_metrics:notify({Name, Value}).




Friday, March 30, 12
Erlang VM


                  • General VM metrics provided by Erlang VM.




Friday, March 30, 12
Erlang VM

                            > folsom_vm_metrics:get_memory().
                        > folsom_vm_metrics:get_system_info().
                         > folsom_vm_metrics:get_statistics().
                          > folsom_vm_metrics:get_port_info().
                       > folsom_vm_metrics:get_process_info().




Friday, March 30, 12
Statistics
                  •        Statistical Analysis

                       •     Exponentially Weighted Moving Average (EWMA)

                       •     Rate / Acceleration

                       •     Avg, Mean, Min, Max, etc

                       •     Distribution

                       •     Percentiles / Histograms

                       •     Covariance / Correlation


Friday, March 30, 12
Sampling

                  • Exponentially decaying

                  • Uniform

                  • None




Friday, March 30, 12
Extensibility
                  • Clean Native API

                  • Folsom Wrappers

                       • REST+JSON

                        • Munin plugins!

                       • SNMP? Graphite? CollectD?


Friday, March 30, 12
Future Work

                  • Metrics REST+JSON Spec

                  • Performance Improvements

                  • Better Querying, Slicing and etc of metric values

                  • More metric types (meter reader, timer, etc)



Friday, March 30, 12
Similar Tools
                  •    Coda Hale’s Metrics (JVM) - github.com/coda/metrics

                  •    Ruby - github.com/johnewart/ruby-metrics

                  •    JavaScript - github.com/mikejihbe/metrics

                  •    .NET Metrics - github.com/danielcrenna/metrics-net

                  •    Ostrich - github.com/twitter/ostrich

                  •    Python Ostrich - github.com/wadey/python-ostrich

                  •    .Net Ostrich - github.com/ewhauser/OstrichNet



Friday, March 30, 12
Folsom


                        DEMO!



Friday, March 30, 12
Questions?
                            Joe Williams (@williamsjoe)

                       Boundary (@boundary / boundary.com)

                       https://github.com/boundary/folsom




Friday, March 30, 12

More Related Content

Similar to Erlang Application Metrics with Folsom

Adventures in Crowdsourcing: Research at UT Austin & Beyond
Adventures in Crowdsourcing: Research at UT Austin & BeyondAdventures in Crowdsourcing: Research at UT Austin & Beyond
Adventures in Crowdsourcing: Research at UT Austin & BeyondMatthew Lease
 
Availability, the Cloud and Everything
Availability, the Cloud and EverythingAvailability, the Cloud and Everything
Availability, the Cloud and Everythinglogicalstack
 
Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...
Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...
Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...tboubez
 
openTSDB - Metrics for a distributed world
openTSDB - Metrics for a distributed worldopenTSDB - Metrics for a distributed world
openTSDB - Metrics for a distributed worldOliver Hankeln
 
Big data, little data, whatever
Big data, little data, whateverBig data, little data, whatever
Big data, little data, whateverdenesuk
 
bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02
bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02
bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02denesuk
 
Selecting a Web Framework
Selecting a Web FrameworkSelecting a Web Framework
Selecting a Web Frameworkpamselle
 
Structure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari Gesher
Structure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari GesherStructure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari Gesher
Structure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari GesherGigaom
 

Similar to Erlang Application Metrics with Folsom (8)

Adventures in Crowdsourcing: Research at UT Austin & Beyond
Adventures in Crowdsourcing: Research at UT Austin & BeyondAdventures in Crowdsourcing: Research at UT Austin & Beyond
Adventures in Crowdsourcing: Research at UT Austin & Beyond
 
Availability, the Cloud and Everything
Availability, the Cloud and EverythingAvailability, the Cloud and Everything
Availability, the Cloud and Everything
 
Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...
Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...
Five Things I Learned While Building Anomaly Detection Tools - Toufic Boubez ...
 
openTSDB - Metrics for a distributed world
openTSDB - Metrics for a distributed worldopenTSDB - Metrics for a distributed world
openTSDB - Metrics for a distributed world
 
Big data, little data, whatever
Big data, little data, whateverBig data, little data, whatever
Big data, little data, whatever
 
bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02
bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02
bigdatalittledataspe-pd2aoct2012denesuk-140321031823-phpapp02
 
Selecting a Web Framework
Selecting a Web FrameworkSelecting a Web Framework
Selecting a Web Framework
 
Structure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari Gesher
Structure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari GesherStructure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari Gesher
Structure Data 2014: INVERTING 80/20: BEYOND BESPOKE BIG DATA, Ari Gesher
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Recently uploaded (20)

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Erlang Application Metrics with Folsom

  • 1. Erlang Application Metrics with Folsom Joe Williams (@williamsjoe) Boundary (@boundary / boundary.com) Friday, March 30, 12
  • 2. Who Am I? • Joe Williams • @williamsjoe • Ops at Boundary Friday, March 30, 12
  • 3. What is Boundary? • Realtime Monitoring and Analytics Platform • We’re hiring! • TRY MY PRODUCT Friday, March 30, 12
  • 4. Agenda • Current and Future Monitoring Systems • Define “Application Metrics” • What is Folsom? • How do you use Folsom? Friday, March 30, 12
  • 5. Legacy Monitoring Tools • Consumers of application metrics • Munin, Ganglia, etc • Wide variety of protocols, interfaces and formats • Usually RRD, results in inflexible, infrequently refreshed PNGs on HTML • Not what this talk is about. Friday, March 30, 12
  • 6. Current Monitoring Tools • Consumers of application metrics • OpenTSDB, statsd, Rienmann, etc are a steps in the right direction • Hopefully fewer protocols, interfaces and formats • Realtime, dynamic graphing • Not what this talk is about. Friday, March 30, 12
  • 7. Application Metrics • “.. code generates business value when it runs.” ~ Coda Hale Friday, March 30, 12
  • 8. Application Metrics • Code instrumentation • Write code to measure code • Verify code behaves as you expect • Exporting results of instrumentation • General VM health Friday, March 30, 12
  • 9. Folsom • Application-level metrics • Multiple metric types • Powerful statistical analysis • Easily extensible Friday, March 30, 12
  • 10. Folsom DEMO! Friday, March 30, 12
  • 11. Metric Types • Counters • Gauges • Histograms • Histories • Meters • Erlang VM Metrics Friday, March 30, 12
  • 12. Counters • Counter metrics provide increment and decrement capabilities for a single scalar value. Friday, March 30, 12
  • 13. Counters > folsom_metrics:new_counter(Name). > folsom_metrics:notify({Name, {inc, Value}}). > folsom_metrics:notify({Name, {dec, Value}}). Friday, March 30, 12
  • 14. Gauges • Gauges are point-in-time single value metrics. Friday, March 30, 12
  • 15. Gauges > folsom_metrics:new_gauge(Name). > folsom_metrics:notify({Name, Value}). Friday, March 30, 12
  • 16. Histograms • Histograms are collections of values that have statistical analysis done to them, such as mean, min, max, kurtosis and percentile. • The can be used like "timers" as well with the timed update functions. Friday, March 30, 12
  • 17. Histograms > folsom_metrics:new_histogram(Name). > folsom_metrics:histogram_timed_update(Name, Mod, Fun, Args). > folsom_metrics:histogram_timed_update(Name, Fun, Args). > folsom_metrics:histogram_timed_update(Name, Fun). > folsom_metrics:notify({Name, Value}). Friday, March 30, 12
  • 18. Histories • Histories are a collection of past events, such as errors or log messages. Friday, March 30, 12
  • 19. Histories > folsom_metrics:new_history(Name). > folsom_metrics:get_history_values(Name, Count). > folsom_metrics:notify({Name, Value}). Friday, March 30, 12
  • 20. Meters • Meters are increment only counters with mean rates and exponentially weighted moving averages applied to them, similar to a unix load average. Friday, March 30, 12
  • 21. Meters > folsom_metrics:new_meter(Name). > folsom_metrics:notify({Name, Value}). Friday, March 30, 12
  • 22. Erlang VM • General VM metrics provided by Erlang VM. Friday, March 30, 12
  • 23. Erlang VM > folsom_vm_metrics:get_memory(). > folsom_vm_metrics:get_system_info(). > folsom_vm_metrics:get_statistics(). > folsom_vm_metrics:get_port_info(). > folsom_vm_metrics:get_process_info(). Friday, March 30, 12
  • 24. Statistics • Statistical Analysis • Exponentially Weighted Moving Average (EWMA) • Rate / Acceleration • Avg, Mean, Min, Max, etc • Distribution • Percentiles / Histograms • Covariance / Correlation Friday, March 30, 12
  • 25. Sampling • Exponentially decaying • Uniform • None Friday, March 30, 12
  • 26. Extensibility • Clean Native API • Folsom Wrappers • REST+JSON • Munin plugins! • SNMP? Graphite? CollectD? Friday, March 30, 12
  • 27. Future Work • Metrics REST+JSON Spec • Performance Improvements • Better Querying, Slicing and etc of metric values • More metric types (meter reader, timer, etc) Friday, March 30, 12
  • 28. Similar Tools • Coda Hale’s Metrics (JVM) - github.com/coda/metrics • Ruby - github.com/johnewart/ruby-metrics • JavaScript - github.com/mikejihbe/metrics • .NET Metrics - github.com/danielcrenna/metrics-net • Ostrich - github.com/twitter/ostrich • Python Ostrich - github.com/wadey/python-ostrich • .Net Ostrich - github.com/ewhauser/OstrichNet Friday, March 30, 12
  • 29. Folsom DEMO! Friday, March 30, 12
  • 30. Questions? Joe Williams (@williamsjoe) Boundary (@boundary / boundary.com) https://github.com/boundary/folsom Friday, March 30, 12