►
From YouTube: 2021-04-22 meeting
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
B
C
B
B
C
Same
thing,
let's
become
approvers,
I
think
shelby
and
I
went
through
that,
but
I
haven't,
I
haven't,
purposely
gone
back
there
and
seen.
Is
there
anything
I
think
I
started
the
repo
possible
did.
B
B
To
get
into
the
org
you,
you
should
have
got
like
a
a
get,
an
invite
or
something
from
github.
Okay,
I'll
take
a
look
check,
check
your
email,
shelby!
You
went
there
right,
you
did
you
get
like
an
email.
D
Yeah,
I
think
I
had
to
click
the
thing
and
then
it
was
like
you're
now
part
of
the
had
a
little.
B
B
One
thing
so
541
shelby-
I
think
you
can
probably
approve
this,
but
it's
an
update
to
the
code
owners
so
that
it
will
tag
everyone
in
that
docs
approver
group.
As.
D
Yeah,
I
I
think
initially
I
hesitated
because,
like
I
was
like,
I
shouldn't,
approve
my
own
thing,
but
I
proved
my
own
thing
for
the
contributors
so.
B
D
B
D
B
C
C
I
think
sergey
responded
in
another
thread
and
said
approved
and
invited.
B
B
B
Yeah
issue
472,
which
is
moving
the
getting
started
docs
out
to
each
of
the
sig
repos.
There
are
one
two
three
where
that's
hasn't
been
merged
yet
and
one
where
it
was
closed.
So
if
one
of
you
would
like
to
take
as
a
test
like
getting
the
stuff,
that's
open
to
closed,
that
would
be.
F
D
B
I
know
python,
I
believe,
python's
getting
the
automation
because
alex
poked
me
the
other
day
on
slack.
Looking
for
the
information
on
that
java
has
been
a
the
java
repo's
been
able
to
get
their
stuff
sorted
out.
So
presumably
we'll
get
everyone
else,
sort
of
set
up
with
that
pretty
soon
and
there's
a
couple
other
open
things.
B
B
Yeah
5
45
releases
pages
are
under
markdown.
There
was
like
an
open
discussion
a
few
weeks
ago,
a
few
meetings
ago
about
kind
of
overhauling
that
whole
page
anyway.
D
B
I
feel
like
we
can
do
that
as
part
I
feel
like
we
can
do
that
as
part
of
that
542,
the
authoritative
sources
links
so
right
now,
when
you
try
to
edit,
if
you
click
the
little
sidebar
buttons
for
like
edit.
This
page
create
issue
it
links
to
the
github
repo
rather
than
links
to
the
website
repo,
rather
than
the
source
of
those
docs.
B
C
Sorry,
if
I'm
asking
a
dumb
question
awesome,
but
is
there
a
particular
label
or
some
kind
of
filter
on
open
issues
that
would
make
it
easy
for
me
to
just
see
what
you're
seeing.
D
B
C
Oh
okay,
I'm
sorry
we're
talking
about
just
the
open
telemetry.
I
o
yeah
repo,
not
the
community
repo
right.
B
C
Person
so
I'm
like
you,
I'm
incredibly
busy
trying
to
finish
up
ollyfest
on
starting
towards
the
end
of
may.
I
will
dedicate
a
couple
of
hours
a
week
just
to
checking
in
making
sure
that
I'm
making
consistent
effort
on
this
stuff
and
then
kind
of
popcorning
things.
C
That's
why
I
hesitated
when
you
said:
is
there
anybody
who
wants
to
take
the
c-sharp,
the
dot-net
stuff
right,
I
don't
mind
whatever
it
is
taking
it.
It's
it's
a
matter
of.
If
I
take
it,
do
I
know
what
I'm
doing.
B
Yeah,
it's
cool
man,
don't
worry
about
it.
This
is
not
like
there's
nothing
that
we're
talking
about
that
won't
keep
for
another
couple
weeks,
slash
months,
I'm
hoping
that
I
there's
a
couple
things
that
I
there's
a
couple
of
like
larger
things
that
I
know
need
to
be
done.
B
Like
finishing
up
this
making
sure
all
the
dock
automation
is
ready,
reworking
the
release
page
stuff
like
that,
and
I'm
going
to
may
as
my
buttoning
stuff
up
month,
because
from
like
mid-june
through,
I
don't
know
september
I'll,
be
on
fraternity
leave
and
I
don't
know
how
long
it's
gonna
take
me
to
before.
I
I
don't.
I
don't
know
if
I'm
just
gonna
like
disappear
from
hotel
for
a
while
or
if,
after
a
month
or
so
I'll
start
getting
back
into
some
of
this
we'll
see.
B
That's
true,
yeah,
no
baby
babies
are
just
like
you
pick
them
up.
You
put
them
down,
they,
don't
they
wiggle
a
lot
of
my
understanding,
but
they
don't
move
a
lot
under
their
own
volition,
at
least
for
the
first
year
or
so,
and
then
at
some
point
they
learn
how
to
walk,
and
that's
when
you
got
to
watch
out.
C
It's
the
every
time.
That
really
really
is
that
you
just
get
a
hunker
down
deal
with
for
the
first
couple
weeks
and
then
figure
out
a
schedule.
D
C
Everybody
needs
a
schedule.
The
back
in
this
thing,
though,
is
there
if
I,
if
I
could
carve
out
to
at
least
two
hours
in
the
next
week,
or
so,
is
there
anything
of
significant
material
about
those
two
items
either
one
the
automation,
probably
not
or
two
just
formalizing,
finalizing
this,
how
we're
going
to
actually
implement
the
that
main
page
with
the
various
different
ways
to
see
the
thing,
I
think
the.
B
Short
term,
we
need
to
make
sure
that
everyone
that
everyone
has
their
docs
on
their
repo
and
then
we
need
to
make
sure
that
they
have
the
automation,
so
those
are
kind
of
like
the
two
most
important
things,
because
that
takes
that
off
of
our
plate
and
puts
it
under
their
plate.
Okay,
so
that's
what
I
would
focus
on
checking.
C
B
B
C
Okay,
that
I
can
definitely
take
that
I
can
help
to
at
least
drive
that
part
of
it
once
they
do,
merge
it
right
and
it
becomes
live
on
in
their
master,
repo
or
main
repo.
Then
we
go
back
to
our
site
and
what
we
just
do.
B
C
B
B
C
B
C
If
you're
saying
that
hey
there's
a
pr
out
there,
that
basically
has
the
changes
to
move
the
the
high
level
as
well
as
to
getting
started
there.
Probably
something
on
the
high
level
like
the
getting
started
disappears
necessarily
on
this
on
them
on
the
site
and
instead
the
main
page
has
a
link
to
the
further
reading.
Like.
D
Yeah,
what
the
way
it
works
is
the
the
open,
telemetry.io
repo
pulls
in
any
changes
on
the
the.net
getting
started.md
file
that
lives
in
the
dotnet
repo.
C
D
B
B
Yes,
I
think
going
forward.
We
would
probably
prefer
to
get
people
in
the
habit
of
doing
those
updates
whenever
they
make
a
release,
so
that,
whatever
is
on
the
website,
reflects
the
most
current
release
of
each
sig's
stuff
again,
this
is
not
100
percent
set
in
stone
in
the
wedding
forever
be
we're
still
trying
to
get
people
into
a
habit
of
all
this.
So
we.
C
Have
a
similar
thing
on
one
of
the
projects
I
work
on
for,
like
the
release,
notes
and
auto
generating
the
changelog
in
that
situation.
After
you
release
you
do
a
pull
request
against
the
changelog
in
the
main
repo
yeah
doesn't
go
with
the
pr
that
is
the
the
release
or
the
tag.
So,
if
I
heard
correctly
too,
they
make
a
change,
they
approve
it,
they
merge
it
on
their
side
and
then
they
have
to
go
and
press
another
workflow
button
right.
B
C
Best
answer
I
got
for
you
exactly,
but
if
we
can
provide
a
standard
like
we
are,
it
sounds
like
we
are
a
standard
thing
that
you
would
do
to
just
say:
hey
look.
You
know
like
while
I,
while
I'm
working
with
somebody
from
the.net
team
and
just
saying
hey,
you
know
this.
We
just
need
to
get
this
updated
once
you're
done,
you
have
to
press
this
extra
button
hey
by
the
way.
If
you
didn't
want
to
press
this
extra
button,
why?
Why
would
we
want
to
have
to
do
that
all
the
time?
C
B
Already
have
the
script,
it's
it's!
Okay!
I
linked
it
in
the
in
the
notes.
But
there's
a
it's
already
implemented
in
the
java
repo
and
it
literally
to
make
it
happen
on
releases
is
adding
something
in
the
the
trigger
section
of
the
ammo
right
now
it's
on.
If
you
look
at
the
java
one,
it's
workflow
dispatch,
which
is
you,
click
a
button,
but
you
can
change
that
to
release
there's
like
a
filter
that
you
have
to
put
on
there.
I've
got
it
locally
somewhere,
okay,
cool
but
yep,
it's
pretty
straightforward.
B
B
All
right
yeah,
I
think,
if
we
can
just
make
sure
that
we
get
everyone's
all
the
docs,
I
think
maybe
someone
shall.
We
should
also
probably
see
about
getting
the
java
automatic
instrumentation
docs
moved
into
the
java
automatic
instrumentation
repo,
because
I
think
those
are
kind
of
orphaned
right
now
or
deleted.
So.
C
Yep,
hey
just
a
just
a
question
then
so
if
somebody
is
actually
doing
a
release-
and
let's
say
of
course
that
has
to
use
their
personal
access
token,
you
can.
Can
you
oh
they'd,
have
to
create
yeah
they'd
have
to
create
their
own
and
then
have
that
as
a
standard,
yeah
yeah
yeah,
the.
C
B
B
Oh
great,
let
me
go
ahead
and
get
you
situated.
D
So
one
thing
I
noticed
austin
is
that
I
had
trouble
finding
the
github
actions
workflows.update.aml
until
you
linked
it
in
the
the
java
from
the
java
repo,
and
so
I
wasn't
sure
where,
like
other
people
would
be
able
to
find
that,
like
I
didn't
see
it
in
the
regular
website,
repo.
B
You
should
just
you
could
make
a
pr
with
that.
Yeah
put
it
in
a
put
it
in
scripts
or
something
I
guess.
B
C
You
know
the
whole
that
whole
sort
of
token
thing
and
and
service
counts
seems
like
it's
something
that
would
require,
like
a
trusted
few
to
be
the
people
who
layer
in
the
token
for
you,
you
know,
I
mean,
like
they
yeah
yeah,
that
I
can
see
the
organization
that
we
have,
which
is
awesome
at
some
things,
federating
and
centralizing.
Some
things
like
that,
just
just
yeah.
If
something
breaks
like
you've
got
somebody
who
can
fix
it,
that
can
be
tricky.
B
Yeah,
there's
there's
some
organizational
challenges.
The
way
things
are
right
now,
all
right.
I've
added
you
to
docs
approvers,
so
you
should
be
able
to
approve
prs.
Congratulations!
Welcome
to
the
club.
G
C
What
is
amelia's?
The
congratulations
is
that
how
it
goes,
yeah
sounds
about
right,
so
I
heard
you
say
I
can
encourage
that
pattern,
but
ultimately
it's
going
to
require
them
to
contact.
You
grab
that
personal
access
token.
B
Yeah
they
can
just
hit
me
up
on
the
cncf
slack.
C
B
B
D
B
B
C
This
is
my
first
time
attending
another
sig,
so
I'm
just
going
to
be
in
the
background,
but
but
also
I'm
over
on
the
comms
side.
So
I'm
roll
over
from
the
comms
meeting
so.
F
H
Hi
yeah
welcome.
So,
while
we're
waiting
for
more
folks
to
join,
you
should
be
able
to
access
the
the
agenda
document
and
I
would
appreciate
if
you
can
put
your
name
and
company
there.
Meanwhile
I'll
share
my
screen,
so
that
document
should
should
be
accessible
by
everyone.
H
H
H
Okay,
I
I
think
we
can
start
so
regarding
this
pr.
I
I
think.
Currently
we
have
received
lots
of
comments
and
I
believe
there's
only
one
blocking
comment.
That's
the
the
name
for
the
last
instrument
we
have,
which
is
the
synchronous
one
that
reports
value,
but
it
doesn't
have
any
attribute
that
allows
some
by
default,
so
we
were
struggling
and
and
the
initial
name
that
was
in
the
very
first
api
was
called
value
recorder
and
I
I
personally
don't
have
strong
feeling.
H
So
I
kind
of
pick
the
name
distribution,
because
I
think
it's
a
it's
a
little
bit
neutral.
It
basically
tells
people
this
is
about
statistics,
but
they
don't
imply,
it
has
to
be
a
histogram
or
it
can
be
a
summary
so,
depending
on
the
configuration
people
can
still
have
that
flexibility
and-
and
I
think
the
major
feedback
I
I
got
from
multiple
folks.
This
distribution
looks
like
a
very
different
way,
comparing
to
the
other
instruments
we
have.
So
if
you
look
at
counter
counter
is
a
noun
and
the
corresponding
verb
is
count.
H
H
H
For
example,
people
are
saying
they
don't
like
the
funk
name.
There
are
multiple
proposals.
We
can
figure
out.
What's
what's
the
better
approach
for
this,
but
this
should
not
block
the
pr,
because
we
can
always
follow
up
in
a
separate
vr.
Well,
this
one
is
actually
a
blocker.
If
we
can
solve
that,
that
means
we
were
ready
to
merge
the
pr.
H
Thanks
josh,
so
so
I
I
think
the
only
thing
that
that
blocks
this
pr
is,
we
haven't,
figured
out
a
better
name
like
whether
we
call
that
histogram
josh,
you
mentioned
you
prefer
histogram
and
I
think
histogram
is
also
used
in
premises,
so
that
might
feel
familiar
to
user.
The
only
slight
worry
about
this
is:
if
people
use
that
for
other
powers
instead
of
a
histogram,
it
might
be
a
little
bit
misleading.
But
I
I
think
if
we
explain
that
clearly
in
the
document
they
will
be
able
to
understand
and
and
histogram.
H
I
I
think
in
this
way
it's
probably
better
than
distribution,
because
distribution
is
very
vague.
So
I
want
to
get
the
feeling
from
the
other
folks,
like
which
name
would
you
prefer
and
given?
This
is
very
subjective,
I
don't
think
there's
an
ultimate
way
to
prove
which,
which
name
is
the
best
or
which
name
is
wrong.
So
it's
more
like
based
on
the
common
feedback,
see
which
one
is
the
winner
or
I.
G
Okay,
so
do
we
have
a
the
entity
that
represents
this
type
of
instrument
on
the
on
the
exporter
and
what
is
its
name?
If
we
do
it's
histogram,
if
you
look
at
the
data
model,.
H
I
So
there's
a
definitely
I
I
get
it
there's
a
desire
to
say
this
is
an
abstraction.
It's
not
always
going
to
produce
a
histogram.
It
could
produce
anything
and
and
at
first
when
I
joined
this
group
a
long
time
ago,
I
said
to
myself
histogram
and
it's
not
an
even
instrument.
Let's
find
something
else.
That
sounds
like
an
actual
instrument
and
we
created
value
recorder
and
now,
with
two
years
behind
me
or
whatever
it's
like.
I
I
think
histogram
is
so
familiar
to
people
that
it
works,
and
then
I
was
inventing
rationale
in
the
in
the
description
the
pr
last
night,
like
I
call
I'm
going
to
call
a
histogram
instrument
from
now
on.
It's
a
statistical
instrument
and
we
are
definitely
creating
a
new
use
of
this
word
and
I
think
it's
okay.
F
I
F
Chime
in,
if
I
may,
as
somebody
who
has
lectured
about
this
topic
for
five
and
five
years-
and
I
always
use
the
term
histogram
here-
so
I
also
second
on
that.
But
what
you
just
said
in
in
that-
I
think
the
community
has
the
understanding
here
and,
conversely,
I
think
the
name
sketch
has
been
misused
to
a
certain
degree,
sometimes
where
it
actually
was
a
histogram.
So
the
dd
sketch
is
actually
a
histogram.
So
it's
also
in
the
reverse
way
that
that
it's
more
often
really
a
histogram
than
not.
I
G
J
The
only
thing
I
was
going
to
say
was
just
that
if
there
was
still
some
sort
of
opposition
like
this
came
off
of
partially,
what
riley
was
saying
was,
like
you
know,
trying
to
have
an
idea
of
like
what
is
the
thing
it.
You
could
call
it
something
like
a
bucket
encounter
or
a
bucket
counter,
because
that's
essentially
what
you're
doing,
but
I
don't
even
necessarily
like
that.
But
it's
it's.
You
know
not
to
add
more
options
to
the
to
the
thing,
but
in
general
I
would
say:
histogram
would
be
fine.
H
I
By
the
way,
I'd
like
to
take
this
moment
just
introduce
heinrich,
who
spoke
a
moment
earlier,
I'm
not
sure
that
everyone
here
knows
who
he
is
because,
but
he
has
been.
I
think
in
one
of
these
meetings
heinrich
is
a
co-author
of
the
sarcona's
histogram
and
makes
him
a
very
important
person
when
it
comes
to
speaking
about
histogram.
I
just
want
to
give
that
background
for
everybody
awesome,
hi,
henrik,.
K
H
H
Okay,
so
while
I'm
typing,
it
seems
a
little
bit
slow
on
my
side,
I
I
don't
know
what
happened.
We
have
several
comments
that
I
I
believe
are
non-blocking.
The
first
one
is
people,
don't
like
the
funk
name
like
like
previously,
we
were
struggling
in
my
original
pr.
I
put
the
thing
if
the
counter
is
asynchronous,
it
is
called
like
in
the
callback
function.
H
We
call
that
observable
counter
and
then
I
received
some
feedback
saying
like
they
want
to
sort
names,
alphabetically,
that's
probably
better
for
the
ide,
so
we
decided
okay,
no,
I
got
to
call
it
counter
something
and
we
figure
out
counter
func,
because
the
name
was
already
established
in
premises
and
most
of
the
folks
think
it's
okay,
but
later
we
got
more
folks
joining
the
community.
They
start
to
see
problem
with
funk,
because
funk
is
a
confusing
name
for
for
many
languages.
That
makes
people
think.
Oh,
it's
actually
the
callback
function.
H
So
there
are
two
options
available.
One
is
to
roll
back
to
the
observable
counter,
which
I
I
don't
like
because
like
it
makes
me
feel
like
the
other
counter
is
not
observable.
Probably
it's
just
I'm
becoming
aware,
but
I
like
the
idea
proposed
by
jung
last
time,
which
is
also
like
acknowledged
by
many
folks.
So
the
idea
is
we
basically
call
that
asynchronous
space.
That
means
we
don't
enforce
the
actual
type
name.
It's
just
a
description
and
the
hope
is
most
of
the
languages.
H
Probably
don't
even
need
to
struggle,
because
when
they,
when
they
use
meter
dot,
create
counter,
if
they
don't
have
a
callback,
this
will
be
a
synchronous
counter
that
they
can
use
to
report
value.
If
they
just
provide
a
callback
function,
most
languages
probably
don't
even
have
to
return
a
value.
That
means
they
probably
don't
even
need
to
have
a
type
so
that
that
probably
will
make
people
feel
better
here.
H
This
is
so
the
number
one
thing
is.
I
want
to
confirm.
This
is
not
a
blocking
issue
for
the
pr
number
two
is.
I
want
to
make
sure
people
feel
okay
about
the
asynchronous
counter
and
what
I
want
to
call
it.
This
is
a
I'll
I'll
try
to
push
people
to
say
this
is
the
last
time
we
want
to
change
the
name,
because
the
name
is
very
subjective.
If
you
keep
changing
changing
the
name,
we
can
do
that
forever.
H
I
A
Yeah,
I
prefer
option
two,
but
because
it
gives
you
more
flexibility
regarding
the
naming
in
the
language
third
way,
so
in
javascript
you
could
go
for
like
create
sync,
create
async
in
that
in
this
case,
and
in
already
naturally
used
activity
and
activity
sources,
and
things
like
that
for
tracing.
So
there's
already
some
disparity
between
the
spec
naming
and
how
languages
are
using
it.
So.
H
Okay,
so
how
about
this?
If
I,
if
I
change
the
like,
if
I
send
a
separate
pr
saying
we
change
the
counter
func,
we
don't
restrict
that
name.
We
just
call
it
asynchronous
space,
func,
no
asynchronous
space
counter
and
we
allow
languages
to
decide
how
they're
going
to
handle
that
and
we
believe
most
of
the
languages
don't
even
need
to
invent
a
name
for
that.
H
J
I
mean
to
what
to
what
extent
we
would
you
want
to
have
variability
across
the
apis,
because
I
mean
kind
of
the
thing
is
that
you
want
to
have
some
level
of
consistency
so
like
if
people
are,
if
people
are
naming
it
differently,
whether
I
guess
whether
whether
it's
asynchronous
or
observable,
I
would
assume
you'd
want
to
keep
that
consistent
across
languages
and
yeah.
That
would
yeah,
as
I
said,
plus
one
on
the
async,
but
yeah.
H
J
H
Makes
sense
yeah,
so
this
one
is
more
like
a
compromise.
We
try
to
encourage
people
to
use
that,
but
if
they
only
I'll
make
a
strong
wording
here,
for
example,
if
a
language
decided
observable
has
a
special
meaning
and
then
they
absolutely
cannot
use
observable
counter.
They
have
the
flexibility
to
call
that
something
else,
but
this
is
highly
discouraged.
G
Just
two
quick
questions:
what
is
what
could
be
the
problem
like
calling
it
a
synchronous
counter
like
from
the
language
perspective,.
H
I
think
the
terminology
synchronous
has
and
versus
asynchronous
has
special
meaning
in
many
languages,
because
async,
a
lot
of
people
actually
confused,
are
confused
with
the
sync
versus
async
instrument.
They
ask
hey.
I
have
some
function
that
does
not
have
any
io
operation.
It's
a
synchronous
operation.
Then
I
have
to
explain,
and
finally
I
agreed
I
actually
created
the
issue
of
tracking
there
saying
I
I
need
to
follow
up
and
explain
what
does
synchronous
versus
asynchronous
mean
because
a
lot
of
people
when
they
come
from
the
programming
background?
H
I
A
good
point,
victor
those
terms
were
adopted
early
on
to
help
us
establish
a
framework
for
thinking
about
this,
and
I
think
it
worked
in
that
sense,
but
it
does
raise
the
the
problem
that
riley
has
raised
has
pointed
out
now.
So
I
think
we
could
revise
our
terminology,
but
I
I
mean
there's
actually
more
of
a
with
context.
Without
then
there's
more
than
just
with
context
and
without
context
involved
in
being
synchronous
or
asynchronous.
I
There's
a
question
of
whether
the
rate
of
the
observations
were
controlled
by
you,
the
caller
doing
something
that
means
meaningful
or
whether
the
rate
of
those
observations
was
controlled
by
the
sdk.
That
has
flexibility
to
change
the
rate
to
control
costs.
So
you
never
want
to
rate
an
asynchronous
event,
meaning
if
you
have
a
histogram,
it's
got
to
be
a
spatial
histogram.
It's
like
a
gauge
histogram,
because
you
don't
want
to
that
count
is
not
a
meaningful
temporal
thing.
It's
only
a
meaningful
spatial
thing.
Does
that
help.
L
I
L
I
Worth
mentioning,
we
do
lose
that
that
piece
of
information
in
the
data
model
right
now
there's
no
piece
of
information
that
says
this
observation
was
triggered
because
the
sdk
came
in
and
asked
for
an
observation,
it's
kind
of
implied
by
all
of
our
defaults
at
this
moment
in
time.
But
if
you
once
you
have
a
synchronous
gauge
and
an
asynchronous
gauge
well,
then
then
there's
a
way
to
observe
a
difference
and-
and
I'm
not
sure
it
matters.
I
H
Yeah,
so
so
one
thing
you
can
say
is
like
sync:
async
is
more
like
the
words
that
we
use
just
to
help
us
to
distinguish
different
things.
We
need
to
call
it
something
and
I'm
trying
to
avoid
using
that
name
in
the
actual
types
or
the
apis
just
because
it
might
be
confusing,
and
when
we
actually
like,
when
I
actually
send
the
pr
to
explain
asynchronous
versus
synchronous
instrument,
we
probably
can
revisit
it
and
see
if
we
can
find
a
more
accurate
name.
H
But
I
I
think
that's
not
a
blogging
issue,
and
most
of
the
folks
in
in
the
community
are
pretty
clear
what
that
means,
and
I
I
even
see
like
many
folks
who
just
joined
this
community
from
zero
background
on
matrix.
They
will
be
able
to
understand
that
concept,
because
synchronous
is
impressed
by
english.
It
has
that
semantic.
It's
not
something
like
where
that
folks
introduced.
G
Just
a
quick
comment:
can
we
also
call
it
out,
maybe
in
the
api
documentation
as
well,
and
also
encourage,
like
implementors,
that,
like
just
documented
that
this
has
nothing
to
do
with
the
observer
design
better
because
they're,
usually
the
thing
that
you
observe
it
is
called
the
observable,
and
it
is
usually
an
interface.
G
H
G
No,
no!
No!
No!
So
I
am.
I
am
fine
with
it
basically
observable
I,
like
maybe
asynchronous
counter
a
little
bit
more,
but
I
can
totally
accept
that
can
be
like
more
confusing
to
more
people
than
like
observable
counter.
I'm
just
saying
that
observable
is
still
like
kind
of
like
a
reserved
word
because
of
the
observer
pattern
and
the
observer
pattern
can
have
a
component
called
observable.
Just
call
it
out
that
this
has
nothing
to
do
with
the
observer
design
pattern.
H
J
H
Okay
and
this
topic
is
brought
up
by
victor,
so
my
suggestion
is,
it
doesn't
seem
to
be
a
blocking
issue
if
victory
thinks.
This
is
something
you
want
to
push
for
after
this
pr,
you
can
send
a
separate
one,
just
explain
the
concept
and
and
see
if
you
get
many
supports.
L
H
Okay,
so
there's
another
idea
brought
up
by
aaron
from
google.
He
mentioned
hey
instead
of
having
the
up
down
counter
that
takes
the
delta
value,
which
can
be
positive
or
negative.
Can
we
just
eliminate
that
concept
entirely
and
encourage
people
to
use
two
counters?
For
example,
if
you
have
a
queue,
you
add
some
item
and
you
remove
the
item.
Can
you
just
have
two
counters?
One
is
the
total
items
I
did
since
the
beginning
and
another
one?
H
Is
the
total
item
removed
and
I'm
I'm
worried
about
this,
because
if
you
have
two
instruments,
what
do
people
do
different
configuration?
They
have
different
dimension
or
like
they,
they
even
miss
misconfigure
that
they
only
take
one.
They
forgot
about
the
other
thing
and
what,
if
the
like
the
timing,
so
it
has
opened
a
door
of
many
unknown
stuff.
So
I.
I
Have
a
word
for
this,
like
I
call
it
resilience
when
I
think
about
there
are
things
that
we
expect
metrics
libraries
to
do
that,
make
it
easy
for
the
observer
to
or
the
consumer
of
the
data
to
work
with
that
data,
and
this
is
one
of
these
examples.
Where
sure
you
could
have
two
metrics
and
now
you
have
to
join
them
and
wait.
I
have
a
I
have
to
join
two
metrics,
so
you
look
at
my
number.
That's
really
too
much
work
for
me.
I
That's
the
kind
of
thing
I'm
calling
resilience-
and
there
are
more
examples
like
like
utilization-
is
another
example.
The
prometheus
up
metric
is
kind
of
example,
of
that,
where
we're
doing
a
bunch
of
work
on
the
right
path
to
make
it
easy
to
monitor
this
question
of
double
counters,
though,
is
is
a.
I
think.
I
It's
a
data
model
issue
and
we
can
say
there
is
a
always
a
valid
way
to
output
two
monotonic
counters
from
an
up
down
counter
instrument,
but
we
will
still
want
to
keep
this
instrument
because
it
has
semantic
differences.
And
if
you
try
to
tell
the
user
to
create
two
counters,
all
kinds
of
things
can
go
wrong.
As
riley
just
said.
H
Yeah
so
so
josh
actually
replied
here
I
put
a
link
here,
so
you
can
see
he
replied
saying
if
people
use
up
down
counter,
we
might
have
an
option
for
them,
so
this
instrumentation
will,
like
this
instrument,
will
end
up
having
two
counters
exposed
based
on
the
user
configuration
and
I
think
that's
doable,
but
my
my
conclusion
here
is
avoiding
opt-on
counter
and
having
two
counters
forcing
people
to
use.
That
is
not
a
good
way
for
the
api.
H
So
what
I
wouldn't
close
this
comment
entirely
I'll
leave
a
room,
but
my
message
here
is
it's
not
a
blocking
issue
and
we
should
go
with
up
down
counter
if
there's
enough
justification-
and
we
can-
we
can
defend
like
the
issue
that
we
mentioned
like
like
josh
and
I
mentioned
here,
then
we
can
follow
up
in
a
second
pr
to
see
if
we
can
change
that.
But
I
think
we
shouldn't
block
on
this.
I
Commented
again
on
this
as
well
saying
a
lot
of
the
reasons
why
people
find
this
instrument
particularly
difficult.
Is
that
it's?
If
you
output
deltas,
then
you
all
you
get
is
a
rate,
but
usually
what
people
want
is
an
actual
absolute
value,
and
so
you
can
either
ask
the
reader
to
go
back
all
the
way
to
the
beginning
of
time
and
count
up
all
the
deltas
or
you
can
ask
the
process
that
outputs
that
value
to
do
that,
work,
which
is
standard
procedure.
I
Model
option
is
that,
later
on,
we
could
reconfigure-
maybe
with
this
hint
api
or
view
api,
that
the
up
down
counter
instrument
will
output
either
a
rate
which
is
maybe
useful
to
you,
probably
not
or
you
could
configure
to
output
two
monotonics,
which
is
as
long
as
your
system
knows
how
to
do
that.
Like
great,
it's
a
little
bit
more
information
for
twice
the
cost.
G
So
I
I
believe
this
is
something
I
would.
I
would
define
on
the
on
the
like
api
side
like
what
basically,
should
you
expect?
If
you
are
doing
this,
should
you
expect
a
rate
which,
to
me
like
using
like
two
counters,
would
make
more
sense,
or
should
you
expect
a
value,
but
in
that
case
the
like
using
two
counters
doesn't
really
make.
I
Sense,
the
uses
that
I
know
of
are
to
keep
tracks
of
like
a
queue
size,
and
the
question,
then,
is
why:
why
force?
Why
are
we
talking
about
a
synchronous
interface?
You
could
have
an
asynchronous
observer,
just
come
in
and
look
at
all
your
two
sizes,
except
this.
The
idea
of
a
virtual
cue
comes
up,
like
you
can
add
another
dimension
and
now
you're,
counting
more
queues
and
they're
all
virtual,
because
the
metric
system
is
keeping
count
for
your.
E
I
think
that
what
you're
saying,
let
me
interpret
this
follow-on
right,
so
I'm
trying
to
digest.
So
if,
if
we
have
this
saying
like,
if
we're
just
observing
an
absolute
value
most
of
the
time,
that's
the
same
as
a
gauge
so
another
language
right.
But
what
we're
saying
is
that
this,
this
gauge
from
my
perspective
as
an
application
writer,
it's
effectively
a
gauge,
I'm
monitoring
the
size
of
a
collection
all
the
time
or
whatever
it
is.
E
I
E
Right
right,
that's
what
I'm
trying
to
say
I'm
like
is
the
value
of
this,
that
you
then
know
that
it's
a
value
that
can
be
like
that
you
can
do
something
with
besides
just
treat
it
as
like.
The
latest
number,
I'm
trying
to
figure
out
what
the
value
is,
because
to
me
it
sounds
identical
to
a
gauge
you're,
just
observing
the
value
or
what
we
were
having
as
a
counter
function
or
something
where
that
has
a
contract
that
it's
always
increasing,
but
so
that
that's
what
I
couldn't
like.
E
F
I
Me
try:
okay,
the
the
open,
telemetry
data
model.
This
is
really
about
the
data
model.
Has
this
two
different
types
of
point
and
I've
colloquial
calling
calling
them
true
gauge
and
cumulative
gauge
and
true
gauges
are
measurements
and
and
these
these
cumulative
gauges
are
sums
that
go
up
and
down
after
incremental
changes
that
were
additive
are
applied.
Those
typically
when
you
have
a
prometheus
gauge,
you
have
two
different
interfaces
and
what
open
telemetry
is
doing
is
splitting
those
interfaces
into
making
separate
instruments
out
of
them.
I
So
you
have
a
synchronous
gauge
where
you
set
your
measurement.
You
should
use
that
with
like
voltage
and
temperature
and
stuff
like
that,
and
then
you
have
a
cumulative
gauge
that
you
can
up
and
down,
and
what
we're
saying
is
that
there's
lots
of
nuance
here,
because
if
you
have
a
stateless
sdk,
where
you
can't
keep
any
memory,
then
the
best
you
can
do
is
either
output
a
rate
or
two
counters.
I
H
So
here
goes
my
understanding
in
premises.
If
you
look
at
gauge
it,
it
has
the
delta
value
functionality.
It
allows
you
to
add
something
like
increment
or
decrement,
and
it
also
allows
you
to
set
the
absolute
value
which
it
seems
like
one
single
instrument
storing
multiple
purposes
and
the
the
challenge
from
that
is
people
use
that
gauge.
If
you
want
to
indicate
the
to
the
back
end
saying
this
is
something
that
you
can
aggregate,
you
won't
need
to
do
additional
configuration.
H
You
cannot
simply
express
that
in
the
in
the
api,
for
example,
you
can
use
that
gauge
to
set
the
temperature,
and-
and
you
know,
if
you
have
multiple
temperature
value
from
different
processors,
adding
the
temperature
all
together
wouldn't
make
sense,
but
if
it
is
the
queue
size
you
can
say.
Oh,
this
is
the
like.
This
is
the
total
kill
size
across
all
my
like
concurrent
workers,
or
if
it
is
a
heap
size
of
a
process
you
can
see.
This
is
the
total
heap
size
of
all
my
work
processes.
G
Should
not
this
be
about
the
user
like
you
mentioned,
that,
like
you,
are
not
able
to,
for
example,
like
a
add
together,
or
you
don't
want
to,
because
it
doesn't
really
make
sense
that
together,
like
temperature
measurements.
G
Sense,
but
I
can
max
it,
I
can
like
calculate
the
minimum
or
the
average
of
it
like
why
some
is
so
special
that
I
cannot
do
it
on
the
back
end.
If
I
just
have
a
gauge-
and
I
will
say
that
hey,
I
want
to
sum
this,
like
like
number
of
gauges
or
like,
I
guess,
you
see
different
labels,
but
the
same
name.
That
will
give
you
the
functionality
of
of
of
the
up
down
counter
right
plus
more
because
I
can
do
like
max
min
and
any
any
aggregation
function.
I
I
And
if
I
remove
a
host
name
from
a
collection
of
temperature
measurements,
the
right
thing
to
do
automatically
is
to
average
them.
But
if
I
remove
a
host
variable
from
a
cue
size,
the
right
thing
are
to
do
automatically
is
to
add
them
and
that's
what
we're
trying
to
do
with
these
two
different
data
points
and
that's
what
we're
trying
to
do
with
these
two
different
instruments.
G
And
I
I
get
this-
you
mentioned
that
the
user
needs
to
understand
the
metric.
Isn't
this
the
same
thing
with
the
when,
when
they
need
to
choose
the
instrument,
they
need
to
understand
the
metric
right,
so
they
they
cannot
really
or
will
not,
really
use
like
the.
So
it
is
basically
the
same
problem
just
like
front
loaded
and
you.
H
Are
basically
losing
example,
techniques
plan,
because
in
open
telemetry
the
idea
is
like
the
api
will
be
heavily
used
by
the
instrumentation
authors
and
the
hope
is
if
the
instrumentation
officers,
who
might
have
more
idea
about
the
metrics
they
provided,
can
do
the
job
up
front.
Then
it
will
be
easier
for
the
end
user
because
there's
a
separation
of
the
people
who
run
or
operate
that
application
versus
people
who
instrument
a
library.
H
So
in
this
case,
if,
for
example,
you
own
the
redis
cash
client-
and
we
can
put
this
additional
work
for
the
redis
client
instrumentation
author-
they
got
to
think
about
this
problem
and
pick
the
right
one.
But
after
that,
people
using
that
redis
client
instrumentation
will
automatically
get
this
benefit
instead
of
everyone
in
the
library
has
to
read
some
document
and
figure
out
how
to
configure
that
in
their
back
end.
L
So
I'll
bring
this
topic
up
and
maybe
it's
you
know,
maybe
it's
too
controversial,
but
this
sounds
like
the
hint
api
to
me
and
this
sounds
like
yeah.
We've
been
punting
on
the
hint
api
or
whatever,
but
what
you
just
said
is
basically
the
instrumentation
library
wants
to
provide
some
knowledge
about
what
this
number
means
and
what
the
boundaries
are
and
what
the
limits
are
right.
So
the
question.
H
So
so
here's
my
feedback.
I
think
the
the
difference
I
I
have
spent
a
lot
of
time,
thinking
about.
What's
the
difference
between
the
hint
versus
the
explicit
api,
literally,
you
can
see.
We
only
have
one
api
that
is
report.
Anything
and
everything
else
is
hint.
I
would
say
that
the
clear
difference
here
is
if
the
actual
information
will
require
you
to
change
the
api
signature.
Like
you
change
that
from
report
and
absolute
value
to
add
a
delta
value,
then
it
has
to
be
an
instrument.
H
H
E
I
don't
understand
that
at
all
and
that's
because
I'm
I
have
a
really
weird
perspective
right.
If
I'm
using
an
api,
I'm
going
to
call
add,
because
I'm
going
to
call
ad
as
someone
that
uses
a
library
that
already
abstracts
across
multiple
back
ends,
some
of
which
take
cumulative
values
and
some
of
which
takes
delta
values.
I
don't
care,
I
call
add
what
the
hell
happens
later.
It
doesn't
matter
to
me
at
all.
H
Special,
I
think,
aaron
we're
talking
about
the
same
thing.
So
what
I'm
saying
is
if
we
report
an
absolute
value,
we
shouldn't
call
that
ads
and
when
we
have
the
ad
that
gives
the
clear
indication.
It
is
a
delta
change
and
we
don't
want
to
give
people
one
instrument,
and
that
takes
the
report
and
in
some
situation
we
say
this
has
to
be
an
absolute
value
and
in
other
cases
we
say
this
can
be
a
delta
value.
So
we
just
want
to
avoid
that.
We
give
people
eyes
and
that
item
will
always
take
delta
value.
E
H
L
Does
it
matter
if
I
hit,
if
I
call
add-
or
I
report
a
specific
value
at
the
api
side,
because
if
I
maintain
some
kind
of
a
state
and
that's
a
questionable,
you
know
item
at
the
end,
and
I
think
josh
mentioned
that
at
the
otlp
layer,
no
matter
what
you
give
me.
If
you
give
me
a
delta
or
you
give
me
a
state,
I'm
going
to
convert
to
whatever
I
need
anyway.
I
It's
not
it's,
not
it's
no
longer
possible
because
you
have
to
order
your
data
and
you
have
to
compare
time
stamps
to
do
that,
and
so
there's
not
it's
not
what's.
Decomposable
aggregate
function
is
what
the
term
is
in
database
theory.
There's
you
can't
just
combine
your
data
and
do
the
aggregations
on
the
right
path.
You
have
to
order
them
and
that's
the
problem.
I
E
Sure
so,
distribution,
okay,
I'm
behind!
So
you
guys
can
all
yell
at
me
and
tell
me
to
sit
in
the
corner
because
I
haven't
caught
up
like
distributions
where
you're
doing
a
record
and
the
way
I
think
about
distribution
is,
of
course,
inherently
biased,
because
the
library
I
work
with
the
most
that
gives
you
a
count,
a
sum
and
a
max
out
of
a
gate.
If
you
don't
do
any
other
aggregation
with
it.
You've
got
those
three
things
and
with
that
distribution,
you're
always
doing
record.
E
E
For
maintaining
like
for
looking
at
cue
size
and
that
kind
of
thing
there's
some
places
where
we
use
several
gauges
together,
but
it's
all
it's
all
like
absolute
collection
kind
of
stuff.
It's
all
like.
Let's
look
at
this
collection
size,
and
in
that
case,
when
we're
observing
a
collection
size,
for
example
your
increment
and
your
decrement,
is
against
whatever
thing
you're
using
to
accumulate.
We
don't
even
care.
We
just
go
grab
the
value
later
right.
I
E
Right
I
mean
the
thing
for
me
is
like:
if
I
have
a
collection
of
things,
a
collection
of
items
on
the
queue
the
size
is
stored,
so
me
asking
what
the
size
is
right
now,
I'm
not
creating
a
new
instrument.
I'm
observing
that
thing.
We
have
an
observed
case,
which
is
fine,
but
that
means
I'm
not
getting
all
of
those
record.
You
know
all
of
the
intermediate
state
change
things,
I'm
using
an
inherent
attribute
of
the
queue.
I
I
You're
going
to
count
people
in
a
building
and
right
now,
I'm
just
counting
by
zero
dimensions.
How
many
people
have
walked
in
the
door
today
and
how
many
people
walked
out
the
door
today,
but
then
I
decided,
I
want
to
add
a
count
by
shirt,
color
and
now
I've
got
a
bunch
of
cues
which
are
the
number
of
people
in
the
building
by
each
color,
and
now
I'm
counting
with
one
dimension,
which
is
shirt
color
and
now
I
I
didn't
change
my
code
at
all.
G
I'm
not
sure,
though
you
you,
you
cannot
do
it.
So
when
you
create
a
a
gauge
you
you
should
be
able
to
like
attach
the
labels.
I
G
Do
to
me
it's
kind
of
the
same
like
when
they
like,
created
the
the
up
down
counter.
They
need
to
define
the
the
labels
right
and
the
same
thing
happens
when
they,
then
they
basically
say
that
hey.
I
want
to
measure
the
same
thing,
but
with
the
gauge.
I
I
don't
see
those
as
being
the
same
because
well
I
also
don't
want
to
force
the
user
to
declare
their
dimensions.
I
think
you
should
use
all
the
dimensions
you
know
about
and
then,
through
some
hints
or
some
other
viewed
selection
procedure,
we
should
choose
the
dimensions
that
we're
actually
counting
by
dropping
the
ones
that
we
don't
and
it's
nice
when
you've
got
deltas,
dropping
a
label
is,
is
for
free.
So
that's
easy.
I
I
I
think
you're.
I
think
this
is
a
real
use
case,
though,
of
wanting
to
be
able
to
control
which
dimensions,
you're,
you're,
keeping
sorry
that
you're
monitoring
in
your
cues
and
you're
right
that
you
can
do
this
without
it
the
help
from
the
sdk
but
you're
you're,
actually
passing
through
all
of
your
data
items
and
outputting
a
bunch
of
data
points,
I
think,
aren't
you
you're
you're,
calculating
cue
sizes
that
don't
actually
exist
somehow,
in
other
words,.
A
Can
I
give
an
example
of
of
of
a
metric,
I
I
would
like
in
my
current
project,
so
we
have
some
date
requests
we
need
to
issue,
and
I
just
want
to
be
able
to
see
how
many
requests
are
happening.
Every
five
minutes,
you
see
how
many
requests
have
happened
and
how
long
it
takes,
but
it's
something
different
and
for
which
tenant.
A
So
I
have
at
the
moment
I'm
using
up
down
counter
with,
rather
than
bind
labels
for
the
tenant
ide,
and
then
I
will
increase
the
the
up
down
counter
by
one
when
specific
request
starts
and
then
decrease
it
at
the
end,
when
it's
finished-
and
my
expectation
is
then
that
I
just
get
a
nice
graph
or
bar
chart
that
I
can
look
at
to
see.
Okay,
this
tenant
had
so
many
requests.
A
Between
2
and
4
p.m
on
on
this
on
this
day,
and
so
that
they
can
basically
use
it
for
like
things
like
billing
or
something
similar,
and
if
I
then
read
if
I
then
look
at
the
name
of
a
plan
counter,
I
think
that
is
just
reading
a
plan
count.
I
think
that's,
then
the
kind
of
instrument
I
should
use
for.
If
I
want
something
like
this,
I
don't
know
if
that's.
A
Yeah,
so
that
I
meant
concur
for
concurrent
request,
I
will
use
a
bank
account
and
for
just
active
request
of
total
request
and
things
like
that.
I
use
a
counter
yeah.
I
A
I
I
guess
to
make
your
example:
to
spell
it
out,
for
you,
you
may
you
may
not
actually
have
a
queue
anywhere
in
your
system,
that
is
per
user.
But
when
you
start
your
work,
you
you
note
the
user
id
and
when
you
finish,
you
undo
that
by
decrementing
and
then
the
metrics
out
is
outputting,
a
bunch
of
data
points
for
you
that
exists
nowhere
in
your
actual
data
structure
and
that's
what
I'm
saying
as
a
virtual
cue.
E
The
same
easy
job,
what
you're
saying
the
difference
would
be
me
relying
on
the
library
and
ad
room,
like
you
know,
add
operations
with
positive
negative
values
against
a
metrics
library
api
versus
having
a
a
gauge
that
observes
the
value
of
a
long
adder
or
some
set
of
long
adders.
That
have
a
tag
combination.
E
I
E
That's
what
I'm
saying
like
I
could,
even
if
I
don't
have
like
a
collection
of
a
cue,
I
could
use
a
long
adder
and
like
look
at
that
yeah.
So,
yes,
I'm
saying
in
the
absence
of
maintaining
a
collection
that
I'm
looking
at,
because
I
have
something
I
could
use
some
long,
adder
magic
thing,
and
so
I
think
what
you're
saying
is,
instead
of
me,
allocating
a
long
adder
that
I
would
then
observe
what
you're
saying
is,
if
I'm
digesting
all
of
this
properly.
I
H
Yeah,
and-
and
with
that
imagine
like
if
you,
if
you
do
the
configuration
on
the
isdk
status,
I
don't
want
this
instrument
like
I.
I
don't
need
this
instrument
at
all,
then
the
sdk
will
not
allocate
anything
and
you
don't
have
to
do
the
special
configuration
on
the
other
side.
If
you
don't
have
this,
you
got
to
create
your
own
in-memory
like
buffer,
and
then
you
got
to
do
all
the
dimension
handling
and
essentially
that
makes
you
feel
you're.
H
Writing
your
own
sdk
aggregation
logic
and
also,
if
you
want,
if
the
user
wants
to
turn
that
off,
you
got
to
give
them
additional
way
like
you
got
to
give
them
some
configuration.
That
is
not
open,
telemetry
and
tell
them.
You
can
turn
off
this
metric
by
not
paying
any
tags.
So
this
is
something
we
feel
premises
does
not
handle
well,
and
we
want
to
solve
that
problem
in
open,
telemetry.
E
Yeah,
I
think
for
me
I
think,
for
me
the
key
is
just
allowing
the
metric
system
to
be
able
to
respond
to
tag
configuration
so
that
your
what
you're
observing
can
be
constrained
or
expanded,
depending
on
what
you
want
to
do,
because
that's
hard
in
my
application
code.
If
I'm
trying
to
say
I
want
to
make
a
measurement,
I'm
either
pre-allocating
all
those
adders
or
I'm
working
with
the
collection
I
defined
or
I'm
deferring
down
to
the
metrics
library.
E
So
some
other
filter
thing
can
influence
how
many,
how
many
counters
up
down
counters,
whatever
how
many
instruments
there
are
under
the
covers
that
I
don't
have
to
understand,
I
think,
is
the
key
for
me.
That
makes
it
make
sense
because
otherwise
I'd
just
do
it
myself
in
the
hell
with
y'all.
But
if
we
get
to
the
point
where,
where
it's
like?
No,
if
the
metrics
library
can
be
saying
we're
going
to
ignore
this
tag,
but
we're
going
to
add
you
know,
but
we're
paying
attention
to
this
tag.
E
H
Yeah,
so
I
I
feel
this
like
I
I
also
remember
like
jonathan
and
I
spent
a
lot
of
time
on
friday
afternoon.
I
exclaimed
all
this
news
because,
like
initially
when
you
look
at
this,
you
don't
understand
all
the
rationality
behind
this,
but
I
I
think
josh
is
the
guy
who
really
understands
all
the
aspects
of
this
there's
a
lot
of
history.
So
what
what?
What
I
think
like
like
for
me
it's
clearly
we
have
the
demand
for
uptown
country.
H
I
explained
in
that
comment
and
I,
I
think,
there's
a
lack
of
enough
education,
because
when
people
coming
from
permissions
work
they
don't
see
that
and
if
you
get
used
to
a
system,
you
don't
see
a
problem,
then
probably
you
don't
even
try
to
think
about
how
to
solve
that.
So
I
I
think,
number
one.
This
is
not
a
blogging
issue
for
the
pr
number
two
is
I
I
think
we
do
need
to
explain
this
ever
like
in
somewhere.
Probably
I
can.
H
I
can
combine
this
with
how
to
choose
instruments
just
to
describe
why
I've
done
counter
matters,
because
this
is
something
new.
You
don't
see
that
in
premises
or
micrometer,
and
I
think
we
can
explain
that
give
people
some
scenario
like
similar
like
people
like
aaron,
you
have
experience
with
existing
metric
system
and
you
start
to
see.
Oh,
this
is
the
value
that
probably
can
solve
the
problem.
I
I
don't
think
the
intention
here
is
because
it
might
be
new
to
people.
E
H
E
Is
the
timer
the
timer
can
be
so?
I
still
have
questions
about
who
you
actually
expect
to
be
using
this
api,
because
I
don't
know
I
mean,
even
as
we
talk
about
who
actually
understands
what
this
means
who's
using
this
api,
because
there's
multiple
levels
of
people
who
who
might
use
the
this
metrics
api
directly
or
they
might
use
some
other
library
because
they
think
it
presents
a
friendlier
view.
So,
if
timers
always
end
up
being
in
this
frosting
layer
that
makes
easier
to
consume
because
they
deal
with
the
semantics
of
duration.
That's
fine!
E
H
I
I
I
feel
like
a
little
bit
of
an
argument
can
can
be
made
though-
and
I
I
do
want
to
assert,
though
I
think
we're
all
hoping
that
this
api
gets
used
by
developers
and
it's
not
like
can
seen
as
a
too
low
level
thing
like
that.
That's
what
the
data
model
is
for
and-
and
I
I
know
that
that
traditionally
there
have
been
three
instruments:
counter
gauge
and
histogram,
and
now
we're
saying,
there's
four
counter
gauge
histogram
and
up
down
counter.
I
That's
one
new
thing
here,
but
timer,
I
don't
think
that's
just
frosting.
I
really
think
that
it's
more
that
more
than
like
this
semantic
sugar
right,
because
you're
dealing
with
the
the
fundamental
thing
of
a
metric
system
is
about
time
and
like
here.
You
are
making
a
timing,
measurement
and
you're
going
to
use
the
clock
and
you're
going
to
make
a
timing
in
a
time
series
and
there's
the
ways
of
getting
that
wrong
are
just
tremendous.
I
Clock
to
use,
how
do
you
know
there's
so
many
ways
of
getting
that
wrong,
and
this
is
to
riley's
point.
It
changes
the
signature.
You
want
to
use
the
built-in
duration
time
type.
You
don't
want
to
add
an
int,
you
want
to
add
a
duration.
I
Sorry,
you
don't
want
to
sorry,
you
want
to
record
a
duration,
not
a
an
inch
or
a
float,
because.
B
E
Right,
I
mean
I'm
speaking
from
an
incredibly
biased
perspective,
because
micrometer
already
deals
with
durations
already
has
a
pretty
signature,
and
if
the
open
telemetry
api
was
underneath,
everything
would
be
happy
because
we
already
that's
what
a
timer
does
right.
So
a
timer
takes
care
of
all
of
that
semantic
stuff.
So
I
can
call
it
syntactic
sugar,
because
that's
what
we're
making
sure
happens
correctly.
So
you
were
right
that
all
that
stuff
can
be
wrong.
I
I
I
think
I
have
a
better
answer
now
and
it
has
to
do
with
the
calling
convention
spans
are
going
to
give
you
a
context
and
and
go
at
least
you
need
a
minimum
of
two
lines
of
code
to
make
a
span
because
you
have
to
have
a
defer
or,
like
you,
have
to
get
your
contacts
back
and
you
don't
need
it
so,
like
now,
you've
got
multiple
return
arguments
that
you
didn't
need.
So,
with
a
with
a
timer
done
right
and
go,
I
can
do
a
one-liner.
I
do
defer
something
start
stop
and
it's.
I
It
gives
me
everything.
I
need
in
a
single
line
of
code,
it's
much
nicer
than
the
spam
interface
and
it's
correct
because
it
uses
the
built-in
timing
function
and
I
never
mentioned.
E
H
Okay,
so
we're
running
out
of
time
just
yeah
like
time
control,
so
we
have.
We
have
15
seconds
left.
So
all
the
other
things
are
more
like
the
the
update
here,
so
we
we
want
to
clarify
in
the
document
how
people
do
that,
so
it's
not
directly
related
to
this
pr,
but
try
to
explain
this
high-level
concept.
I
also
see
jonathan
added
this,
and
here
I
I
just
try
to
put
a
rough
spec
timeline
to
give
you
ideas.
I
will
be
working
on
this
and
I
I
probably
will
need
more
help.
H
H
I
I
have
questions
if
anyone
has
another
minute,
but
but
there's
this
batch
observer
concept
that
I
think
is
going
to
be
important
before
before
the
end,
whatever.
That
is
where
you're
making
an
asynchronous
observation,
and
you
happen
to
produce
a
whole
bunch
of
metrics
all
at
once,
or
the
batch
record,
which
was
census
had
a
simple
similar
thing
was
just
make
a
synchronous
batch
of
observations,
all
sharing
a
label
set
because
it's
expensive
to
construct
a
label
set
or
attribute
set,
and
that's
the
reason
why
these
these
exist.
I
So
I
think
we
have
to
keep
talking
about
api
mechanics
and
it
becomes
a
very
language,
specific
thing,
but
there's
still
something
that
needs
to
be
said,
and
I
yeah.
E
The
batch
observer
was
a
sticking
point
when
I
tried
to
the
first,
you
know:
throw
spaghetti
against
the
wall,
implementation
that
I
kind
of
attempted
for
micrometer
with
to
go
to
the
hotel
sdk.
It
was
because
we
had
the
function
counter,
which
did
two
measurements
at
the
same
time,
a
counter
and
a
timer
together,
where
you're
measuring
some
statistics
object.
That
already
has
that
information.
We're
not
create
we're.
Just
you
know
we're
grabbing
those
two
values,
and
there
was
no
way
for
me
to
do
that
at
the
time
it
didn't
even
exist.
So,
yes,.
E
H
H
E
That
that
so
that
not
really
right
so
from
the
counter
having
the
state
object
and
saying
the
value
of
this
counter
is
invoke
that
function
on
that
object.
Great,
that's
one
instrument
in
this
case
with
the
way
function,
timers
are
modeled.
It's
I
have
one
state
object
and
two
functions
and
those
two
functions
go
together.
E
I
Ran
into
a
lot
of
trouble,
I
guess
bowdoin
had
objections
to
the
to
what
I
had
proposed
six
months
ago,
and
it
had
to
do
with
there's
this
strong
desire.
After
we
finish
whatever
1.0
is
to
get
to
the
place
where
the
sdk
can
configure
separate
intervals
for
different
instruments
so
that
you
can
have
a
thing
doing
tender
second
interval
and
a
thing
doing
a
10-minute
interval
at
the
same
time.
I
And
then
the
question
is:
how
does
the
sdk
know
which
instruments
are
output
by
which
batch
observers
and
it
became
the
second
level
of
like
knowledge
that
was
missing
and
a
lot
of
extra
trouble
to
get
so
that
you
knew
so
that
the
sck
would
know
which
metrics
are
going
to
be
output
by
a
particular
batch?
And
I
never
got
that
far,
and
I
don't
think
I
care
that
much.
I
H
Yeah
so
my
suggestion
can
we
can
we
take
the
same
old
tab,
146
approach,
just
to
describe
a
scenario
where
we
need
this
stateful
thing
for
multiple
callbacks
to
behave
like
a
transaction
or
something
so
once
we
have
a
concrete
scenario,
we
can
use
that
to
see
if
there's
a
gap
in
the
current
api
and
see
if
there's
enough
requirement
from
everyone
in
the
community
so
yeah.
I
think
I
I
I
continue
offline
to
send
you.
H
E
E
Right,
but
I
I
mean
the
assumption,
when
you're
using
that
kind
of
instrument
is
that
the
library
is
already
do
like
whatever
that
is,
is
already
doing
it.
It's
doing
whatever
updates
and
you're
in
an
observer
situation
where
you're
just
grabbing
whatever
the
current
one
is,
then
that's
it
because
you're
not
going
to
re-instrument
or
make
a
new
counter
or
do
whatever,
because
it's
already
doing
it.