A brief overview what monitoring actually is and why should we care. Hands on experience on how to use the mozzle open source tool to monitor applications running on Cloud Foundry.
6. BASIC METRIC TYPES
Counter - single numerical value that only ever goes up
Gauge - single numerical value that can arbitrarily go up and
down
Distribution/Histogram - samples observations and counts
them
7. FROM OUTSIDE
➔ Collection is external to the
application
GATHERING METRICS
FROM INSIDE
➔ Collection is internal to the
application
8. MANUAL MONITORING
➔ Employed only when a problem arises
➔ Servers only the person fixing the problem
➔ Examples
$ htop
$ lsof -p | wc -l
$ nc -zv redis-master.cluster 6379
9. REACTIVE MONITORING
➔ Employed once a problem has been fixed
➔ Does not require code instrumentation
➔ Unlikely to be helpful in isolation
➔ Examples
◆ Memory usage
◆ CPU usage
◆ Open file descriptors
10. “Smart people learn from their
mistakes. Wise people learn from
other people's mistakes.
11. PROACTIVE MONITORING
➔ Implemented during application development
➔ Requires code instrumentation
➔ Can be crucial to managing business
➔ Examples
◆ Purchases
◆ Ad clicks
13. Dev & Ops
➔ Is the application leaking resources
➔ Is this new feature performing well
➔ What’s the system’s overall health
➔ Should the resources be increased?
WHO BENEFITS
14. Business
➔ Are customers able to use what they’re paying for
➔ Are customer satisfied
➔ What features should we invest in
➔ What’s the cost we can expect for infrastructure
WHO BENEFITS
15. EVENT-BASED
➔ Stores individual events
➔ Aggregates events into
metrics
TYPES OF SYSTEMS
AGGREGATION-BASED
➔ Receives and stores
aggregated data
16. PUSH
➔ Data is PUSHED into the
system
PUSH vs PULL
PULL
➔ Data is PULLED from the
application instances
28. TYPES OF INFRASTRUCTURE METRICS
Machinery
➔ CPU
➔ RAM
➔ Disk
➔ Instance count
HTTP events
➔ Response time
➔ Method
➔ Status code
Application events
➔ Crashes
➔ Scaling
➔ SSH
➔ ...
29.
30.
31. DESIGN GOALS
➔ Simple to use
$ mozzle -use-cf-cli-target
➔ Team oriented
➔ Simple to extend
➔ Simple to onboard environment
$ vagrant up --provision
34. CREDITS
Special thanks to all the people who made and
released these awesome resources for free:
◉ Presentation template by SlidesCarnival
◉ Photographs by Unsplash