Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Graphite 1.0-ish
Search
Jason Dixon
November 30, 2016
Programming
0
350
Graphite 1.0-ish
Jason Dixon
November 30, 2016
Tweet
Share
More Decks by Jason Dixon
See All by Jason Dixon
Monitorama PDX 2015 - Closing Plenary
obfuscurity
1
450
Stupid Graphite Tips
obfuscurity
37
4.9k
The State of Open-Source Monitoring
obfuscurity
145
49k
Trending with Purpose
obfuscurity
11
1.3k
Other Decks in Programming
See All in Programming
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
46k
SODA - FACT BOOK(JP)
sodainc
1
8.8k
NIKKEI Tech Talk#38
cipepser
0
230
Cursorハンズオン実践!
eltociear
2
1.2k
Six and a half ridiculous things to do with Quarkus
hollycummins
0
210
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.6k
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
240
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
730
なぜGoのジェネリクスはこの形なのか? - Featherweight Goが明かす設計の核心
qualiarts
0
250
CSC509 Lecture 07
javiergs
PRO
0
240
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
440
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
8.7k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Being A Developer After 40
akosma
91
590k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
620
How STYLIGHT went responsive
nonsquared
100
5.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Raft: Consensus for Rubyists
vanstee
140
7.2k
A designer walks into a library…
pauljervisheath
209
24k
The Language of Interfaces
destraynor
162
25k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Transcript
The Launch of Graphite 1.0-ish aka the cage match between
0.9.x and 0.10.0
what is graphite?
None
None
None
None
how did we get here?
None
http://www.aosabook.org/en/ graphite.html
None
the changing tsdb landscape
the not-so-secret secret about tsdb’s
the future now of graphite
not 0.9.x
but I love 0.9.x
ok, so what now?
live demo
highlights
pluggable storage finders • standard (whisper, rrd) • ceres •
Cyanite (external, Cassandra-based) • KairosDB (external) • OpenTSDB (external) • < your custom finder here >
pluggable carbon protocols
zomg so much test coverage special thanks to @brutasse @cbowman0
improved brace expansion and globstar support
None
improved unicode, timezone, and special char support throughout
updated requirements • Python 2.7 • Django 1.9 (graphite-web) •
Twisted 13.2+ (carbon)
new (optional) components • Carbonate (rebalancing suite) • Ceres (experimental
tsdb)
zomg new functions
None
aggregateLine
avg min max
applyByNode
i tried i really did but you should just go
read the applyByNode function docs because omg i can’t even
averageOutsidePercentile
None
delay
None
fallbackSeries
fallbackSeries(foo.requests, constantLine(0))
grep
None
groupByNodes
groupByNodes(app.server*.*.reqs.*, "sumSeries",1,4)
integralByInterval
None
interpolate
sorta behaves like lineMode=connected except it also supports a limit
arg for how many null values to interpolate over
invert
None
None
isNonNull
None
linearRegression
None
linearRegressionAnalysis
None
mapSeries reduceSeries
map and reduce, nbd (again, rtd)
multiplySeriesWithWildcards
just like the other *SeriesWithWildcards functions but more fun, because
multiplication
offsetToZero
basically treats the lowest value in a series as the
floor and subtracts that from all values in the series
None
zomg are we done yet
pow
power(foo.bar, 10) factor
removeBetweenPercentile
only render series that have a value outside the Nth
percentile of all values within an interval
None
removeEmptySeries
None
sortByTotal
sort series by the sum of their total values
squareRoot
None
timeSlice
used to limit values to a specific set of intervals
within the larger time range, e.g. when you’re interested in a contiguous span across disparate metrics
None
verticalLine
verticalLine("-1h")
weightedAverage
None
zomg new display formats
pdf
None
width=2000&height=800 format=pdf
None
dygraph
rickshaw
no surprises, work as intended, useful for quick prototyping with
their respective frameworks
zomg new graph options
hideNullFromLegend
hideXAxis
noNullPoints (format=json)
pieLabels valueLabels valueLabelsColor valueLabelsMin
None
anything else because we still have some time left on
the clock I think?
live demo
new logo
None
zomg new settings
INTRACLUSTER_HTTPS
MAX_TAG_LENGTH
DATE_FORMAT
WHISPER_FADVISE_RANDOM
MAX_RECEIVER_CONNECTIONS
ok I think that’s all but if we have time
left I guess I can answer questions or rant about Trump or whatever
thank you