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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jason Dixon
November 30, 2016
Programming
390
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Graphite 1.0-ish
Jason Dixon
November 30, 2016
More Decks by Jason Dixon
See All by Jason Dixon
Monitorama PDX 2015 - Closing Plenary
obfuscurity
1
470
Stupid Graphite Tips
obfuscurity
37
4.9k
The State of Open-Source Monitoring
obfuscurity
145
50k
Trending with Purpose
obfuscurity
11
1.4k
Other Decks in Programming
See All in Programming
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
250
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
140
えっ!!コードを読まずに開発を!?
hananouchi
0
190
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
360
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
110
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
280
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
350
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
510
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
0
190
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Faster Mobile Websites
deanohume
310
32k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
RailsConf 2023
tenderlove
30
1.5k
Building the Perfect Custom Keyboard
takai
2
810
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Everyday Curiosity
cassininazir
0
250
Between Models and Reality
mayunak
4
370
The SEO Collaboration Effect
kristinabergwall1
1
500
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The Spectacular Lies of Maps
axbom
PRO
1
850
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