107
The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

The Launch of Graphite 1.0-ish

aka the cage match between 0.9.x and 0.10.0

Page 2: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

what is graphite?

Page 3: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 4: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 5: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 6: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 7: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

how did we get here?

Page 8: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 9: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

http://www.aosabook.org/en/graphite.html

Page 10: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 11: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

the changing tsdb landscape

Page 12: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

the not-so-secret secret about tsdb’s

Page 13: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

the future now of graphite

Page 14: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

not 0.9.x

Page 15: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

but I love 0.9.x

Page 16: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

ok, so what now?

Page 17: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

live demo 💥

Page 18: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

highlights

Page 19: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

pluggable storage finders• standard (whisper, rrd)

• ceres

• Cyanite (external, Cassandra-based)

• KairosDB (external)

• OpenTSDB (external)

• < your custom finder here >

Page 20: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

pluggable carbon protocols

Page 21: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

zomg so much test coverage special thanks

to @brutasse @cbowman0

Page 22: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

improved brace expansion and globstar

support

Page 23: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 24: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

improved unicode, timezone, and special

char support throughout

Page 25: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

updated requirements

• Python 2.7

• Django 1.9 (graphite-web)

• Twisted 13.2+ (carbon)

Page 26: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

new (optional) components

• Carbonate (rebalancing suite)

• Ceres (experimental tsdb)

Page 27: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

zomg new functions

Page 28: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 29: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

aggregateLine

Page 30: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

avg

min

max

Page 31: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

applyByNode

Page 32: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

i tried i really did but you should just go read the

applyByNode function docs because omg i can’t even

Page 33: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

averageOutsidePercentile

Page 34: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 35: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

delay

Page 36: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 37: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

fallbackSeries

Page 38: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

fallbackSeries(foo.requests, constantLine(0))

Page 39: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

grep

Page 40: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 41: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

groupByNodes

Page 42: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

groupByNodes(app.server*.*.reqs.*,"sumSeries",1,4)

Page 43: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

integralByInterval

Page 44: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 45: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

interpolate

Page 46: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

sorta behaves like lineMode=connected except it

also supports a limit arg for how many null values to interpolate over

Page 47: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

invert

Page 48: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 49: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 50: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

isNonNull

Page 51: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 52: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

linearRegression

Page 53: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 54: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

linearRegressionAnalysis

Page 55: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 56: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

mapSeries reduceSeries

Page 57: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

map and reduce, nbd (again, rtd)

Page 58: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

multiplySeriesWithWildcards

Page 59: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

just like the other *SeriesWithWildcards

functions but more fun, because multiplication

Page 60: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

offsetToZero

Page 61: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

basically treats the lowest value in a series as the floor and subtracts

that from all values in the series

Page 62: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 63: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

zomg are we done yet

Page 64: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

pow

Page 65: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

power(foo.bar, 10)

factor

Page 66: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

removeBetweenPercentile

Page 67: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

only render series that have a value outside the Nth percentile

of all values within an interval

Page 68: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 69: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

removeEmptySeries

Page 70: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 71: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

sortByTotal

Page 72: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

sort series by the sum of their total values

Page 73: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

squareRoot

Page 74: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 75: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

timeSlice

Page 76: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

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

Page 77: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 78: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

verticalLine

Page 79: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

verticalLine("-1h")

Page 80: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

weightedAverage

Page 81: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 82: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

zomg new display formats

Page 83: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

pdf

Page 84: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 85: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

width=2000&height=800

format=pdf

Page 86: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 87: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

dygraph

Page 88: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

rickshaw

Page 89: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

no surprises, work as intended, useful for quick prototyping with

their respective frameworks

Page 90: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

zomg new graph options

Page 91: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

hideNullFromLegend

Page 92: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

hideXAxis

Page 93: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

noNullPoints (format=json)

Page 94: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

pieLabels valueLabels

valueLabelsColor valueLabelsMin

Page 95: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 96: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

anything else because we still have some time left

on the clock I think?

Page 97: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

live demo 💥

Page 98: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

new logo 💥

Page 99: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0
Page 100: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

zomg new settings

Page 101: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

INTRACLUSTER_HTTPS

Page 102: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

MAX_TAG_LENGTH

Page 103: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

DATE_FORMAT

Page 104: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

WHISPER_FADVISE_RANDOM

Page 105: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

MAX_RECEIVER_CONNECTIONS

Page 106: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

ok I think that’s all but if we have time left I guess I can answer

questions or rant about Trump or whatever

Page 107: The Launch of Graphite 1.0-ish - GrafanaCon · The Launch of Graphite 1.0-ish aka the cage match between 0.9.x and 0.10.0

thank you