Monitoring with Graphite: Tracking Dynamic Host and Application Metrics at Scale [Pehme köide]

  • Formaat: Paperback, 290 pages, kõrgus x laius x paksus: 233x181x15 mm, kaal: 498 g, black & white illustrations
  • Ilmumisaeg: 24-Mar-2017
  • Kirjastus: O'Reilly Media, Inc, USA
  • ISBN-10: 1491916435
  • ISBN-13: 9781491916438
Teised raamatud teemal:
  • Pehme köide
  • Hind: 40,87 EUR*
  • Tavahind: 48,39 EUR
  • Säästad 16%
  • Lisa soovinimekirja
  • Lisa ostukorvi
  • Kogus:
  • Tasuta tarne
  • Saadame välja 1 tööpäeva jooksul
  • Laos olemas 1 eks TÜ RaamatupoesRaekoja plats 11, Tartu, E-R 10-18
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • soodushind kehtib ainult laos olevatele toodetele (tellimishind: 41,13 EUR)
  • Formaat: Paperback, 290 pages, kõrgus x laius x paksus: 233x181x15 mm, kaal: 498 g, black & white illustrations
  • Ilmumisaeg: 24-Mar-2017
  • Kirjastus: O'Reilly Media, Inc, USA
  • ISBN-10: 1491916435
  • ISBN-13: 9781491916438
Teised raamatud teemal:
Graphite has become one of the most powerful monitoring tools available today, due to its ease of use, rapid graph prototyping abilities, and a friendly rendering API. With this practical guide, system administrators and engineers will learn how to use this open source tool to track operational data you need to monitor your systems, as well as application-level metrics for profiling your services. Author Jason Dixon, member of the Graphite project, provides a thorough introduction of Graphite from the basics to the skills and tools you need for troubleshooting and scaling out its software components. If you want to learn more about monitoring systems, services, or applications, this is the book you need. Get an introduction to monitoring, including important concepts and terminology Examine the features and functionality of key Graphite components, including Carbon and Whisper Learn the typical user workflow necessary to create a basic line chart Build complex charts with chained functions and multiple axes that interact directly with the rendering API Understand how to use the native Graphite dashboard, as well as the more popular third-party dashboards Master the art of scaling and troubleshooting high-performance or highly available Graphite clusters
Preface ix
1 What Is Graphite?
1(14)
What Is Time-Series Data?
2(1)
Time-Series Databases
3(2)
Storage Considerations
3(1)
Prioritizing Workloads
4(1)
What Is the History of Graphite?
5(1)
What Makes Graphite Unique?
6(5)
Simple Metrics Format
6(1)
Graphing API
7(1)
Rapid Prototyping
8(1)
Rich Statistical Library
9(1)
Chained Functions
9(2)
Case Studies: Who Uses Graphite in Production?
11(2)
Booking.com
11(1)
GitHub
12(1)
Etsy
12(1)
Electronic Arts
13(1)
Why Should I Use Graphite?
13(2)
2 Monitoring Conventions
15(16)
Three Tenets of Monitoring
15(3)
Fault Detection
16(1)
Alerting
17(1)
Capacity Planning
18(1)
Rethinking the Poll/Pull Model
18(3)
Pull Model
19(1)
Push Model
20(1)
Where Does Graphite Fit into the Picture?
21(1)
Composable Monitoring Systems
22(7)
Telemetry
24(2)
Metrics Router
26(1)
Aggregation
26(1)
State Engine
27(1)
Notification Routers
28(1)
Storage Engine
28(1)
Visualization
29(1)
Conclusion
29(2)
3 Graphite Components: The Moving Parts
31(28)
Carbon
31(7)
carbon-cache
32(1)
carbon-relay
32(3)
carbon-aggregator
35(1)
Filtering Metrics
35(1)
Internal Statistics
36(1)
Network Security Considerations
37(1)
Whisper
38(8)
How Do Whisper Files Get Created?
38(1)
Retention Policies and Archives
38(1)
The Laws of Whisper Archives
39(1)
Calculating Whisper File Sizes
40(1)
Deconstructing a Whisper File
41(1)
Which Archive Handles My Query?
41(1)
Aggregation Methods
42(2)
xFilesFactor
44(1)
Planning Your Namespaces
44(1)
Performance Considerations
45(1)
Graphite-Web
46(6)
Django Framework
46(1)
Web Server
47(1)
Database
47(1)
Memcached
48(1)
Events
49(1)
Storage Backends
50(2)
Putting It All Together
52(6)
Basic Setup
52(1)
Vertical Scaling
53(1)
Horizontal Scaling
54(2)
Multisite Replication
56(2)
A Final Thought
58(1)
4 Building Your First Graphite Server
59(24)
Quick Start with Synthesize
60(6)
Where Does Graphite Store All My Files?
61(1)
Are Packages Available for My Distro?
62(1)
What Installation Methods Are Available?
62(1)
Should I Use Virtualenv?
63(1)
Using sudo Effectively
63(1)
Dependencies
64(1)
Installing from Source
65(1)
Preparing Your Web Database
66(2)
Configuring Carbon
68(6)
carbon.conf
68(3)
storage-schemas.conf
71(1)
storage-aggregation.conf
72(1)
Some Final Preparations
73(1)
Starting Your Carbon Daemons
73(1)
Configuring Graphite-Web
74(2)
local_settings.py
74(1)
Setting Up Apache
75(1)
Verifying Your Graphite Installation
76(7)
Carbon Statistics
77(1)
Feeding New Data to Carbon
78(1)
Building Your First Graph
78(5)
5 The Graphite User Interface
83(50)
Finding Metrics
84(4)
Navigating the Tree
84(2)
Using the Search Feature
86(2)
Working Smarter with the Auto-Completer
88(1)
Wildcards
88(1)
The Graphite Composer Window
89(1)
The Embedded Chart
90(2)
The Toolbar
92(10)
Selecting Recent Data
93(2)
Refreshing the Graph
95(1)
Selecting a Date Range
96(1)
Exporting a Short URL
97(1)
Loading a Graph from URL
98(1)
Saving to My Graphs
99(2)
Deleting from My Graphs
101(1)
The Graph Options Menu
102(20)
Adding a Graph Title
103(1)
Overriding the Graph Legend
104(1)
Toggling Axes and the Grid
105(1)
Applying a Graph Template
106(1)
Line Chart Modes
106(4)
Area and Stacked Graphs
110(4)
Tweaking the Y-Axis
114(8)
The Graph Data Dialog
122(8)
What Are Targets Anyway?
122(1)
Building a Carbon Performance Graph
123(7)
Sharing Your Work
130(3)
6 The Render API
133(30)
Working with Functions
134(24)
Starting with the Basics
135(5)
Math and Statistical Transforms
140(3)
Filtering and Sorting
143(4)
Grouping on Wildcards
147(1)
Data Smoothing and Forecasting
148(5)
Adjusting Metric Labels
153(5)
Alternate Output Formats
158(5)
7 Dashboards
163(20)
Why Do I Need a Dashboard?
163(1)
Graphite Dashboard
164(2)
Third-Party Dashboards
166(7)
Grafana
166(3)
Tasseo
169(2)
Dusk
171(2)
Do-It-Yourself
173(8)
Dashing
173(2)
Rickshaw and D3.js
175(6)
Conclusion
181(2)
8 Troubleshooting Graphite Performance
183(42)
First, the Basics
184(1)
The Troubleshooting Toolbelt
185(14)
Generating Metrics and Benchmarking
185(2)
CPU Utilization
187(1)
Disk Performance (I/O)
188(3)
Networking
191(4)
Inspecting Metrics
195(4)
Configuration Settings
199(4)
Carbon
199(3)
Graphite-Web
202(1)
Logging
203(13)
Carbon
204(6)
Graphite-Web
210(6)
Kernel messages
216(1)
Failure Scenarios
216(8)
The Full Disk
217(2)
CPU Saturation
219(2)
Rendering Problems
221(3)
Taking It to the Next Level
224(1)
9 Scaling Graphite
225(34)
What Makes It "Hard" to Scale Graphite?
225(1)
Peters Graphite Story
226(31)
The Beginning
226(1)
The Pains of Popularity
227(2)
Clearing the Next Hurdle
229(1)
Try, Try Again
230(2)
Maximizing Resources
232(3)
Avoiding Outages
235(7)
Shared Web Database
242(7)
Scaling in Both Directions
249(8)
Some Final Thoughts
257(1)
Summary
257(2)
A Carbon and Graphite-Web Internal Statistics 259(6)
Index 265
Jason Dixon is a member of the Graphite project and the creator of the Monitorama conference series. He works as the Director of Product Solutions at Librato, specializing in data and service integrations.