►
From YouTube: Grafana Tempo Community Call 2023-01-12
Description
What was discussed:
- 2.0 Progress
- Mario's TraceQL demo
- Whether or not Mario's TraceQL demo could be edited before uploading to YouTube
- Extending TraceQL
Join our next Tempo community call: https://docs.google.com/document/d/1yGsI6ywU-PxZBjmq3p3vAXr9g5yBXSDk4NU8LGo8qeY/edit
A
All
right
welcome
to
the
first
and
best
Tempo
Community
call
2023
Mario
is
going
to
give
us
a
traceql
demo
and
other
than
that.
We
don't
have
much
so
we'll
do
AMA
kind
of
stuff
and
hang
out
and
you
know
do
whatever.
Whatever
the
community
team
wants.
I
guess
something
to
talk
about
before
I
make
Mario
break
out.
The
show
is
that
we're
still
on
target
for
Tempo
2.0
end
of
this
month.
I
think
we
have
one
PR
left
to
get
in,
which
is
this
data
type
aware
API.
A
Let
me
talk
about
that
for
one
second,
so
this
data
type
aware
tags,
API
is
kind
of
the
last
requirement
for
us
to
turn
on
traceql
and
cloud
and
for
us
to
feel
like
it's
a
polished,
finished
product
and
I'll
briefly
kind
of
outline.
A
The
problem,
which
is
that
in
Old
tempo
all
attributes
are
strings,
and
so,
if
you
say
like
HTTP
status,
equals
200
you're
searching
for
the
string
two
zero
zero,
but
in
parquet
it
matches
the
open,
Telemetry
object
model
where
things
can
be
integers
or
strings
or
a
bunch
of
other
kind
of
data
types.
And
so
the
problem
is:
when
you
do
a
HTTP
status,
equals
and
grafana
asks
tempo
for
some
suggestions.
A
It
thinks
everything's,
a
string
and
I'll
put
quotes
around
that
200,
which
will
make
your
query
fail,
because
the
HTTP
status
is
probably
the
number
200
and
not
the
string
200.,
so
Marty's
working
on
a
PR.
In
fact,
it's
up
and
I
think
it's
probably
close
to
to
ready,
and
once
we
get
that
in
and
grafana
supports
it,
we
will
be
completely
ready
to
turn
this
on
in
cloud
and
I
will
say.
This
is
kind
of
like
the
complete
the
complete
experience
now
for
Tempo
2.0.
A
This
is
the
last
feature
we
need
in
and
we're
going
to
spend
the
next
couple
weeks,
just
polishing
and
making
sure
the
experience
is
what
we
want
it
to
be,
and
then
we're
gonna
release
2.0
at
the
end
of
this
month.
So
we're
we're
in
a
good
spot
here,
I'd
hope
to
see
an
RC
in
the
next
couple
weeks
and
then
we'll
start
iterating
on
that
and
yeah
everything's.
A
Looking
everything's
looking
positive
from
our
side
to
hit
the
dates
we've
talked
about,
it
might
be
a
little
bit
longer
to
see
it
in
Cloud
because,
like
I
said,
we
really
need
grafana
to
support
this
API
for
it
to
feel
like
you
know.
Otherwise,
it's
just
kind
of
it's
going
to
be
a
bad
experience.
You
know
you
do
HP
status,
you
hit,
you
get
a
string,
200
you
hit
it
and
then
nothing
returns
and
you
scratch
your
head
because
you
know
you
have
some
200s
in
the
back
end.
A
So
that's
where
we
are-
and
things
are
looking
great
performance
is
where
we
want
it
to
be.
You
know
resource
which
is
where
we
want
it
to
be,
and
we're
ready
to
go
with
2.0.
It's
just
going
to
be
a
matter
of
getting
this
last
thing
in
with
that
said,
Mario.
What
do
you
got
for
a
spell.
B
All
right
name
food-
this
is
not
gonna
match
anything.
So
what
I'm
running
is
it's
the
intro
to
MLT
demo
is
a
repository
in
the
grafana
market
cap
and
you
need
to
do
MLT.
We
should
link
it
in
in
the
dock
and
I
believe.
The
only
difference
is
that
I'm
running
tip
of
a
Tempo
and
grafana,
otherwise
it
should
be
good
to
go
to
run
tree
skill
queries
all
right.
B
So
here
we
have
the
old
search,
UI
still
working
returns
and
we
can
search
by
filter
by
any
tag
and
well.
We
can
do
the
same
with
Trace
Guild,
which
is
what
we
want
to
see.
B
First,
we
can
just
start
fetching
traces
and
now
work
our
way
through
a
more
complex
query,
and
for
that
we
just
need
to
type
like
the
open
like
a
blank
query,
which
is
just
two
curly
braces.
This
will
return
any
span
set
that
matches
anything
which
is
all
of
them
and
from
here
we
can
jump
quickly
to
any
of
these
traces
as
before.
It
will
open
like
in
the
screen.
B
Well,
if
it
does
yeah
the
the
screen
will
split
and
it
will
show
the
trace
in
the
right.
If
you
notice
now
there
isn't
a
dedicated
dap
for
the
trace
by
ID
search.
It's
the
same
Trace
ql
tab.
It's
just
no
filtering,
you
just
put
the
ID
and
it
will
return
a
trace
or
a
trace
fuel
query
result
and,
depending
on
on
the
query,
basically
all
right.
So
what
can
we
do
with
transql?
Well,
we
can
search
for
errors.
B
Yeah
spoke
too
fast.
The
demo
guns
are
not
with
me
today.
B
Shouldn't
be
I
can
move
it
forwards
a
bit
and
if
we
find
500s
well,
but
at
least
we
find
two
hundreds
and
one
of
the
very
cool
features
of
now
the
grafana
UI
for
traceql
is
once
you
have
results,
pretty
query:
you
not
only
have
all
the
traces
that
matched
your
query,
but
now
there
is
a
drop
down
in
which
it
will
tell
you
which
spans
within
that
trade
matched
that
query
and
you
can
still
click
on
the
trace
ID
and
that
will
bring
you
to
the
view
of
that
Trace.
B
But
you
can
now
also
click
on
this
plan,
ID
that
will
open
the
same
view
that
now
focused
on
this
band
that
matched
now
here.
This
is
Spanish
very
rather,
this
Trace
is
very
small.
So
it's
not
very
helpful
in
this
case,
but
imagine
you
have
a
trace
with
hundreds
or
thousands
of
traces.
B
This
can
be
extremely
useful,
but
you
know
we're
just
searching
for
200s,
but
with
HTTP
I
think
ranges
are
usually
a
better
way
of
searching
for
successes
or
errors
during
morning
status
codes
for
success
than
200
we're
missing
a
lot
and
one
thing
we
can
do
with
driftkill,
which
is
Piper
where
is
status
code,
would
suggest.
Yes,
it's
cyberware,
so
you
know
it's
increased.
We
can
search
for
the
entire
range
of
200s
I
believe
this
demo
only
has
two
hundreds
but
less.
B
B
B
All
right,
so
there
are
only
two
hundreds,
but
oh,
no
they're
too
old
for
him.
Okay,
this
is
working.
That's
how
unexpected
all
right
and
again,
you
can
jump
right
to
the
expand
that
match
that
specific
condition.
B
Okay,
so
what
else
so
I
know
in
this
demo?
We
have
the
database
and
well
I,
don't
even
know
the
name
so
I'm
just
trying
to
search
for
this
database.
It
will
match.
If
this
panel
has
this
attribute
and
it's
not
empty,
and
indeed
there
is
pens
with
other
no
okay.
B
All
right,
okay
database
name,
I.
B
And
if
I
find
phosphorus
all
right,
it
actually
does
okay
cool.
It
was
working,
oh
my
gosh,
okay,
but
what
if
I
want
a
trace
which
has
multiple
goals
to
the
database,
then
what
I
can
do
is
pipe
it
and
ask
okay
so
find
me
in
this
pan
set
which
satisfies
this
condition.
Database
name
equals
postgres,
but
it
that
is
present
more
than
once.
B
Yes,
okay,
the
only
Trace
that
we
is
returning
so
yeah,
maybe
I,
don't
know
one
of
the
queries
when
it
hits
the
database
to
too
many
times
it
gets
slower
and-
and
you
want
to
filter
by
that
yeah
I.
Don't
have
a
script
really.
So
if
anyone
has
ideas
or
suggestions
on
what
we
can
demo
just
please
just
pick
up
and
we
can
try
and
see
if
we
find
choices
do.
A
You
do
after
your
dot
db.name.
Do
you
like
it
at
dot,
DB.
A
A
B
So
yeah,
let's
explore
it
too:
okay,
no
more
DBS
statements,
all
right,
but
it's
returning
and
it's
finding
and
let's
imagine
we
have
many
traces
with
create,
or
rather
different,
SQL
statements
and
we're
returning
only
creates-
and
this
is
just
based
on
a
regex.
We
don't
have
to
attack
the
entire
query
because
we
don't
know
exactly
what
I
said:
yeah.
B
What
else
so
another
thing
we
can
do
is
use
intrinsics
two,
let's
find
a
any
query,
or
rather
any
Trace
HTTP
gets
so
they're
intrinsics,
like
name
and
I,
can
create
it
for
this.
Okay,
it
will
yeah
suggest
all
of
this.
Okay
I
want
a
which
one
can
be
into
sync
all
right,
we're
profiling,
yeah,
because
this
demo
also
has
flare
on
it
all
right.
B
So
if
we
go
to
http
get
s,
it
will
bring
me
traces
with
only
this
and
again,
the
specific
is
pan
that
match
this,
but
they're
more
intrinsic.
We
can
say,
and
that
out
of
all
of
these
pants
I
only
want
those
that
whose
which
duration
is
greater
than
I,
don't
know
what
100
milliseconds
about
any
of
those.
No
it's
too
fast,
this
demo
10
milliseconds,
okay,
and,
as
you
can
see
it,
it's
actually
filtered.
A
Pipe
it
to
average
and
it's
you
can
do
average
duration
rates,
which
is
kind
of
cool.
It's
also
cool.
You
can
do
average
like
HTTP
status
code
or
something
you
can
average
any
number
on
a
custom
attribute.
So
it's
not
limited
to
just
duration
or
whatever.
A
That
will
give
you
it's
kind
of
a
nonsensical
query
right,
but
it
works.
A
Think
so
you
do
greater
than
something.
Oh.
A
B
It
even
fetches
the
the
column
that
we
were
searching
for,
so
it
will
bring
this
column
as
well.
I.
B
This
is
great
404
cool,
okay.
This
is
a
simple
query.
All
right.
Anyone
else
can
think
of
a
different
query.
We
can
do.
A
Cool
excellent,
oh,
is
the
near
I.
Don't
know
what
do
we
know
what
version
that's
in.
A
C
A
B
Down
so
everything
is
displayed
automatically
in
the
table,
so
you
will
see
like
the
trade
row
and
right
below
all
these
pan
rows.
Even
if
you
don't
want
to
see
those
yeah,
so
functionality
wise
is
the
same,
is
less
clean,
I
guess.
A
All
right,
excellent
work,
any
other
questions,
I
think
we're
kind
of
just
in
whatever
anyone
wants
territory
here.
So
if
anyone
has
questions,
they're
welcome
to
ask
and
chat
or
unmute
and
ask-
and
this
could
cover
anything
you
want
I-
suppose
we
reserve
the
right
to
not
answer
questions.
A
D
I
had
a
question
about
triscula
in
general,
yeah
more
so
we're
also
working
on
the
implementation
of
triscuella
on
our
end
cool
because.
C
D
A
different
we
have
a
separate
backend
also
and
we
want
to
set.
We
want
to
support
it
in
multiple
places,
so
I
guess
we're
I,
guess
my
question
is:
what's
the
do
you
have
a
roadmap
for
the
if,
for
like,
the
evolution
of
Trish
Grill
like
what's
the
what
are
the
planned
fossil
future
features
that
would
be
added,
and
is
there
a
way
to
contribute
to
that
somehow
for.
A
Sure
this
has
been
shared
before
publicly
it's
pretty
rough,
but
it
roughly
outlines
what
we
wanted
to
go
through.
It's
not
the
greatest
design.
A
We
did
have
like
a
working
group
that
designed
this
language,
we're
kind
of
past
that,
but
the
language
will
evolve
forever.
Like
we've
already
decided,
we
want
a
trace
level
scope
in
the
language
which
we
did
not
talk
about
in
the
initial
implementation.
So
we
want
you
to
be
able
to
ask
for,
like
Trace
duration,
like
filter
on
Trace
duration
and
Trace
root,
name
and
Trace
root
service
name.
Where
now
you
can't
do
that
so
that
so
there
it's
it's
an
evolving
process.
A
If
you
do,
of
course,
want
to
get
involved,
we
should
chat
some.
This
would
be
a
great
forum
for
talking
about
ideas
and
choice.
Qo.
If
we,
you
know,
get
serious
about
it
again
and
kind
of
rev
up
a
working
group
to
iterate
on
Trace
ql.
A
We
could
do
a
separate
meeting
with
you
know
those
people
community
members
who
are
interested
in
like
a
regular
discussion
about
the
language
specifically
I'd
like
to
keep
it
here
unless
here
becomes
inappropriate
because
we
realize
we
just
have
a
ton
to
talk
about
you
know
because
it
you
know,
it'd
be
neat
to
have
everyone's
kind
of
like
in
front
of
everyone
and
everyone's
ideas,
kind
of
in
it.
D
Yeah,
no
absolutely
I,
think
we're
I
think
we're
sometimes
right
now
we're
looking
at
I
think
there's
there's
with
our
separate
backend,
there's
things
that
are
really
easy
for
us
to
do
and
are
not
supported
in
the
trace.
Ul
I
think
we're
I
think
we're
kind
of
looking
for
a
way
to
do
extensions,
maybe
to
the
spec
in
a
way
that
would
that
would
be
compatible
with
the
evolution
of
the
of
the
language
as
it
would
come.
Yeah,
that's
not
something!
D
We
have
a
good
idea
for
right
now,
necessarily
and
also
it's
like
there's.
Definitely
things
that,
like
Tempo,
couldn't
easily
support.
That
would
make
sense
for
it
to
be
in
in
like
the
General
spec,
but
we've
discussed
before,
like
with
with
bigquery
as
our
as
our
backend
there's
like
aggregation
things
that
are
really
easy
to
do.
That
are
like
very
powerful
for
analytics
and
we'd
like
to
support
that
in
like
the
in
in
our
implementation,
somehow
and
I'm,
basically
kind
of
like
feeling
for
the
way
we
should
approach
this.
A
The
with
the
spec
sure
I
think
what
would
make
the
most
sense
here
is
for
you
all
to
kind
of
put
together
those
features
you're
interested
in
maybe
some
small
suggestions
like
it
makes
sense
to
for
us
to
add
it
this
way,
and
then
we
can
kind
of
async
chat
in
the
doc.
A
So
you
can
DM
some
of
us
directly
I,
don't
honestly
kind
of
prefer
it
if
you
just
dunk
it
in
the
public
grafana
Tempo
channel
in
the
slack
like
anyone's,
welcome
to
kind
of
comment
and
see
the
progress
that
you
all
are
making
in
the
direction
you
want
to
take.
Some
of
this
so
yeah
drop
that
in
there
and
let's
chat,
and
then
we
could
make
that
a
topic
in
a
future
Community
call
you
know
like
if
you
all
are
serious
about
kind
of
adding
some
of
this
then
yeah.
Absolutely,
let's.
A
B
A
Back
together
and
that'll
be
a
great
place
to
chat
some
and
coordinate
and
and
we'll
make
sure
you
have
all
the
information
you
need.
Okay
sounds
good,
yeah.
C
I
would
say
one
thing:
that's
missing
from
this
stock
is
time
series
queries
which
we
know
we
want
to
do
right
to
extract
like
a
graph
out
of
your
traces,
I
would
say
the
syntax
and
roadmap.
There
isn't
really
defined
I
thought.
Maybe
we
had
a
little
mention
of
this
in
the
design
proposal.
That's
in
the
public
repo,
but
I'm
not
seeing
it
there
either.
A
C
A
Back
with
it's
going
to
look
like
Prometheus,
but
we've
not
really
written
it
down,
I
think,
as
we
kind
of
flesh
out
some
of
these
core
things
that
we
know
are
kind
of
low-hanging
fruit.
You
know
like
Min
or
Max,
which
aren't
going
to
be
a
2.0
but
which
would
be
fairly.
You
know
trivial
to
add
in
the
future,
as
we
kind
of
you
know
cut
out
some
of
that
I
think
coming
back
to
the
community
and
seeing
like
what
next
hard
thing
or
is
everyone
interested
in
structural
queries
or
metrics
those
kind
of
things.
A
You
know
what
I
mean
like
I,
think
that's
probably
the
best
path
for
us.
So,
let's
iterate,
you
know,
let's
hit
2.1
or
whatever
next
and,
let's
just
add
what
makes
sense
to
us
and
keep
moving
forward
and
keep
chatting
with
with
the
community
about.
You
know
their
interests,
I'd
say
and
as
we
approach
that
metrics
thing,
yeah
we'll
need
to
write
up
something
to
share
and
make
sure
we're
all
on
board
with.
A
Cool
Gabriel,
I'm
kind
of
excited
to
see
what
you
all
come
up
with
I
know
you
all
done
great
work
with
Tempo
and
so
yeah.
Let's
see
what
where
your
thoughts
are,
and
let's
make
sure
that
whatever
we
do
will
work
together
going
forward.
Yeah.
A
D
Think
right
now
we're
just
like
we're
it's
like
we're
we're.
We
have
like
a
base
implementation
of
the
spec
and
like
immediately
P.
We
we
see
this
like
there's,
there's
like
things
that
we
are
able
to
do
with
bigquery
really
easily.
That
would
be
nice
to
have,
but
maybe
it
doesn't
fit
and
it's
like
if
it
doesn't
fit,
how
we
want
to
like
be
able
to
still
have
those
in
a
way
that
doesn't
conflict
with,
like
the
evolution
of
the
language
and
like
in
some
way,
cool.
A
All
right
anyone
else,
any
other
thoughts
concerns
what
you
ate
for
lunch
or
breakfast
today,
Etc
I
have
not
eaten
breakfast.
That's
bad
right!
Aren't
you
supposed
to
eat
breakfast
yeah
Kim's,
giving
me
the
eyeballs
there.
You
know
sorry
Kim
I
apologize,
I,
just
I'm
on
coffee.
That's
all
I
got
going
right.
Now,
it's
not
good!
For
you
all
right
appreciate
you!
All
I
will
see
you
next
month,
keep
an
eye
out
for
the
tempo
2.0
RCS
keep
an
eye
on
the
channel.
I
assure
you.
A
There
will
be
a
lot
of
noise
in
the
channel
when
we
cut
some
2.0
RCS
and
the
final
release
and
yeah
all
this
is
happening
now.
Trace
Gill's,
coming
in
Tempo
and
grafana.