►
From YouTube: 2020-08-27 Java Auto-Instrumentation SIG
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).
C
B
Sorry
I
couldn't
make
the
the
demo
or
present
the
the
code
walkthrough
last
week,
I'm
still
trying
to
get
that
up
onto
youtube.
I
don't
are
it's
supposed
to
automatically
feed
to
youtube,
but
it
doesn't
always
work.
D
D
D
I'm
I'm
totally
fine
not
being
on
youtube.
I
guess,
but.
C
B
B
I
will
share,
but
I
have.
E
B
Awesome
all
right.
Well,
I
will
start
with
the
the
ga
tracking
we
didn't
do
so
good
last
week
that
happens,
p1
issues
we're
up
to
and
that's
all
right.
That
is,
we
will
get
to
those
and,
as
you
can
see,
I
did
not
do
very
good
on
agenda
notes
either.
B
I
will
say
that
we
have
had
a
lot
of
a
lot
of
new
people
showing
that
in
the
repo,
a
bunch
of
new
folks
submitting
issues
and
maybe
like
three
new
folks
in
the
last
week,
submitting
prs
so
that's
cool.
Definitely
I
don't
know
where
people
are
learning
about.
Well,
I
yeah
open
telemetry,
I
guess
it's
or
at
least
the
java
agent
side,
but
that's
cool.
A
Yeah,
I
actually
there's
an
issue
that
was
logged
in
the
java
repo,
that's
about
instrumentation,
about
grpc
instrumentation,
and
I
would
love
it
if
somebody
who
knows
that
the
instrumentation
side
of
things
better
than
I
do
I'm
trying
to
find
that.
Well,
I
talk,
which
is
always
a
bad
idea,
could
help.
B
Yeah
this
one
right.
A
It's
number
13.98,
yeah,
okay,
yeah,
so
he's
got
a
repro
case
published,
which
is
good,
and
I
have
I
I
looked
at
my.
I
look
at
it
really
quickly
and
just
saw
that
he
was
kind
of
doing
that
same
thing,
where
you
try
to
store
the
scope
and
then
close
it
later
and
said.
I
I'm
pretty
sure
that
was
the
problem,
why
he
was
getting
exceptions,
but
he
says
he's
still
not
getting
his
his
traces
linked
up
from
client
to
server.
A
My
guess
is
is
just
not
setting
like
setting
up
the
parent
span
context
properly,
but
I
haven't
had
time
so
if
somebody
had
time
to
jump
on
that,
it
would
be
really
awesome.
Otherwise
I'll
try
to
get
to
it
later.
This
week
later
this
week,
it's
already
thursday
holy
moly.
B
B
A
B
A
A
A
B
The
first
monday
would
be
the
week
after
that.
Do
you
think
you'll
make
it
next
week,
though,.
A
I
don't
think
the
monday
was
ever
the
I
thought
it
was
just
like
trying
to
do
it
as
close
to
the
first
as
possible.
I.
F
B
Well,
I'm
not
I'm
not
suggesting
holding
I'm
just
wanted
to,
so
that
we
can
we'll
we'll
plan.
Also,
I
think,
there's
a
couple
things
that
we
want
that
are
already
in
there.
A
A
Okay,
I'm
fine
with
that,
I'm
totally!
Okay,
with
that
we've
got
enough.
There's
going
to
be
enough
disruption
with
the
change
of
the
exporter.
Apis
right,
like
the
exporter.
Apis
are
now
like
at
least
I'm
going
to
have
to
go
and
our
new
relic
is
going
to
have
to
go
and
fix
our
exporter
for
the
new
apis,
and
it's
going
to
be
a
bunch
of
rash
in
there.
I
think
anyone
has
an
external
life
order.
B
A
A
Week
I
mean-
maybe
nine
is
where
it
would
be
great
if,
if
90.9
was
the
version
where
we
could
really
nail
down
that
tracing
api
and
say
we're
going
to
stick
with
whatever
we
got
so
I
mean.
What
do
we
do
with
attribute
like
attribute
value
is
still
kind
of
the
last
outstanding
issue.
A
So,
aside
from
the
context,
api
can't
I'm
not
promising
that
for
nine,
because
we
still
don't
have
any
possible
solution,
but
the
attribute
value
like
figuring
out
what
we're
going
to
have
is
our
attribute
value
api
finalize
that
in
nine,
would
be
really
good.
A
Well,
especially
since
the
tracing
spec
is
supposed
to
be
complete
at
the
end
of
the
first
week
of
september,
right,
carlos.
F
B
I
can
give
update
on
the
tuesday,
so
we've
been
having
tuesday
night
special
topic
meetings,
because
that's
when
that's
when
nikita
and
honorag
and
pacific
time
zone,
it's
even
possible
to
get
everybody
awake.
At
the
same
time
and
this
week
we
chatted
about
the
bridging
the
sort
of
our
instrumentation,
the
our
interoperability
with
people
who
bring
manual
open,
telemetry
instrumentation,
which
is
you
know,
a
huge
part
of
the
agent
story.
B
You
can
still
now
use
the
whole
open,
telemetry
api
to
do
your
custom
instrumentation
anything
extra
and
it
all
flows
to
the
same
place
and
it
all
gets
correlated
and
everything
works
nice
and
so
we're
just
continuing
it's
a
little
there's
two
things
that
are
not
ideal
about
our
the
way
that
that
interop
works,
one
is
the
code
complexity,
sort
of
because
so
we've
got
our
internal
shaded
api,
open,
telemetry
api
inside
the
agent
and
we've
got
the
unshaded
api
that
the
user
brings
and
we
basically,
we
replace
the
sdk,
whether
it's
the
no
op
sdk
or
any
other
sdk
that
they
bring
with
our
s
with
a
bridge
with
our
bridged
sdk,
which
then
funnels
everything
internally
to
the
agent.
B
So
it's
not
too
bad.
It's
just
weird
because
you
end
up
in
that
bridge.
You
end
up
on
the
code
is
really
confusing,
because
you've
got
you're
dealing
with
both
the
unshaded.
All
these
same
class
names
on
both
sides,
and
you
have
to
look
at
the
package
names
and,
and
it's
translating
back
and
forth.
B
That
part
doesn't
bother
me
too
much.
The
part,
that's
a
little!
That's
more
problematic
that
we're
still
working
on
trying
to
solve
is
the
overhand
of
that
bridge
right
because
each
like
say
the
span,
context
or
trace
id
all
these
objects
from
that
are
coming
over
from
the
api.
B
We
have
to
convert
them
to
new
objects
over
in
the
shaded,
the
shaded
versions,
and
so
on.
Some
things
like
the
span
itself,
which
is
an
interface
we
just
we
have
a
delegate
so
we'll
return,
something
as
the
the
user
creates
a
span.
B
They
create
a
span,
build
or
a
span,
we
back
it
by
the
shaded
version
and
each
of
the
methods
when
they
call
add
attribute,
we
just
pass
it
straight
to
the
shaded
delegated
version
and
that's
pretty
pretty
decent.
The
for
a
big
object,
just
a
small
wrapper
around
the
other
big
object,
where
it's
a
little
less
ideal
is
for
stuff
like
trace
id
span,
id
trace
flags,
those
things
that
are
these
small
objects.
B
We
basically
end
up
needing
to
copy
them.
So
basically
you
end
up
doubling
you
know
those
objects
which
you
know
again.
It's
it's.
I
think
it's
acceptable
because,
for
the
most
part
we're
talking
about
doing
layering
on
additional
custom
instrumentation,
not
everything
plus
it's-
you
know
it.
It's
not
like
we're,
adding
an
order
of
magnitude.
It
is
double
the
memory
on
those
little
objects,
though
so
anyway
we're
we're
trying
to
come
up
with
better
solutions.
There
exploring
a
few
different
options.
B
One
of
the
options
we're
looking
at
is
going
back
to
the
way
that
that
datadog
used
to
do
the
open
tracing
interop,
which
was
putting
the
open
tracing
api
in
the
bootstrap
class
loader
and
and
going
that
way,
there's
some
significant
problems
that
that
brings,
though
around
pinning
us
to
a
particular
version
there
in
the
bootstrap
class
loader,
and
I
haven't
really
been
able
to
figure
out
how
to
deal
with
that.
B
Yet
at
least,
and
so
I
think
for
for
ga,
there
was
some
agreement
to
continue
with
the
bridge
approach
that
we're
doing
and
work
with
the
sdk
team
to
to
make
api
changes
where
we
can
that
make
the
bridge
more.
Allow
us
to
bridge
more
efficiently
whether
it's
turning
some
objects
into
interfaces
so
that
we
can
implement.
B
So,
for
example,
like
trace
id
we're
gonna,
we're
actually
john,
is
working
on
getting
is
getting
rid
of
trace
id
in
favor
of
just
strings
for
the
storing
them
as
strings
but
say
we
did
have
or
say
trace
flags
which
we're
not
getting
rid
of.
B
If
that
was
an
interface
and
we
had
a
on,
we
could
potentially
back
it
in
our
sdk
by
an
implementation
that
implements
both
sides
of
those
interfaces.
There's
also
some
options.
As
far
as
since
we're
byte
code
instrumenting,
we
could
have
some
interface
in
the
bootstrap
class
loader
that
we
force
that
trace
flags
to
implement
our
interface.
That's
in
the
bootstrap
class
loader,
which
would
allow
us
to
funnel
things
across.
B
Anyway,
we
had
a
long
discussion
and
with
no
I
mean
with
at
least
some
resolution
as
far
as
what
our
immediate
path
forward
is,
which
is
good
and
then
there's
some
ideas,
interesting
ideas
for
the
for
the
future
post.
Ga,
oh,
I
know
I
wanted
yeah
go
ahead.
John.
A
I
hadn't
looked
at
that
trace
flags
class
in
forever
kind
of
had
forgotten
it
existed
that
we
have
this.
You
know
it's
how
many
lines
here:
254
lines
of
code
to
wrap
a
bite,
a
single.
A
B
Yeah
jason
or
any
of
the
several
folks
on
the
new
relic
site.
Here
I
was
wondering:
how
do
you
all
do
were?
How
do
you
do
that?
Interop
with
I'm
sure
you
have
some
kind
of
custom
api
java
based
api
that
customers
can
use
to
send
telemetry?
B
D
Yep
we
do,
we
do
that
and
we
have
a
bridge
yep.
A
Okay,
at
the
core
of
it,
I
think
what
we
do
is
we
just
instrument
our
own
api,
the
same
way,
we
instrument
anything
else,
and
so,
if,
if
we
get
mismatches
in
the
method
signatures,
we
just
don't,
it
doesn't
work
anymore.
B
Oh,
I
see
so
you
have,
the
user
has
the
they
pull
in
the
api.
It
has
some
no
up
backing
and
when
the
agent
comes
in,
you
instrument
those
methods
to
and
then
just
funnel
that
data.
B
Do
your
api
methods
all
just
take
like
java,
you
java
lane
classes
things
that
are
already
in
the
bootstrap
class
loader
or
you
have
to
bridge.
B
A
F
B
How
how
new
relic,
in
the
say
the
youth
customer
uses
the
new
relic
java
api
to
send
telemetry
the
agent
instruments
that
it
sounds
like
there's
some
not
just
raw
java
types,
but
some
new
relic
types
that
they
pass.
How
do
I'm
wondering?
How
do
they
bridge
that
over
to
the
agent
those
objects
over
to
the
agent
since
they
live
in
the
user's
class
loader?
At
that
point,.
H
Yeah,
I'm
not
sure
how
it
bridges
the
the
types.
I
think
that
all
of
the
types
in
the
in
the
agent
probably
implement
the
interfaces
and
such
in
the
api
jar
directly.
I
believe
that
that's
what
it
is
and
then
do
you
still
think
they
do.
They
stick
the
api.
H
B
H
Yeah,
I
mean
the
the
key
thing
being
that,
rather
than
just
overriding
the
classes
with
a
separate
implementation,
they
they
instrument
their
api.
I
think
that's
the
the
key
difference
there.
B
A
B
Yeah,
it
is
helpful,
though,
to
know
like
prior
art
sort
of.
I
know
that
that
was
kind
of
one
of
the
reasons
why
I
was
pushing
to
stick
with
what
we
have
for
ga,
at
least
because
I
feel
like
that
is
a
a
more
known.
Quantity
works
pretty
well.
B
We
can,
since
we're
binding
since
we're
binding
late
to
that,
we
have
a
lot
more
options
like
we
can
see
what
version,
what
shape
the
the
open
telemetry
api,
what
version
of
open
telemetry
api
the
user
is
using
and
bind
late
to
that
and
it's
it
is
like
you
said
it
is
the
same
as
how
we
instrument
other
libraries.
It's
just
instrumenting
the
open
telemetry
api,
using
the
same
mechanisms
that
we're
using
for
all
other.
Basically,
all
other
libraries.
B
B
Yeah
other,
let's
see
so
that,
did
we
talk
about
anything
else
of
well
john
joined
us
on
tuesday
night.
That
was
pretty
cool.
B
Yeah,
which
will
help
the
bridge
so
yeah.
That's
great
thanks
for
thanks
for
continuing
to
push
forward
on
that
john.
So
I
know
that's
been
like
on
and.
A
On
and
on
it's
been
months
months
and
months,
I
think
I've
probably
been
working
on
this
for
like
six
months,
if
you
tallied
it
all
up,
although
longer
on
attribute
value,
I've
actually
been
working
on
that
longer
for
sure.
A
By
the
way
on
this
will
be,
if
you
all
like
that,
I
mean
so
there's
been,
there's
been
a
little
bit
of
approval
for
the
idea
of
changing
the
attribute,
getting
rid
of
attribute
value
and
replacing
it
with
the
typed
keys
in
the
attributes,
but
and
there's
a
I
created
an
issue
for
it
and
I'm
the
only
one
who's
thumbs
up
it.
So
if
I
don't
get
some
traction
on
that,
I'm
going
to
close
it
soon
and
say
we're
stuck
with
attribute
value.
A
Yeah,
I
could
get
rid
of
that,
but
it
would
so
it
would
replace
it
with
the
typed
key
interface,
at
least
that's
the
way
I
built
it
when
I
did
a
prototype
six
months
ago.
Is
that
why
don't
we?
Why
don't
we
just
pull
that
up
that
issue
up
real,
quick,
real,
quick?
A
Sorry,
most
recent
issues,
yeah
that
one
there.
B
A
I
I
guess
I
mean
it's
a
hold
over
from
open
census,
so
I
don't
really
know
exactly
all
the
motivations,
but
my
guess
is
so
you
you
don't
have
to
store
the
type
I
mean
the
type
comes
along
with
the
wrapper,
as
opposed
to
storing
the
type
like,
for
example.
In
my
another
way
we
can
approach
it
is
to
store
that
type
inside
the
attributes.
A
A
So
in
this
way,
you
can
declare
all
of
your
semantic
attributes
as
these
keys,
and
then
you
just
use
them
directly.
You
don't
have
to
do
anything
fancy
you
don't
have
to
have
the
extra
attribute,
whatever
that
other
attribute
semantic
attribute
value
thing
we
have
lying
around
and
the
big
advantage
to
this
is
that
you
have
it.
You
do
end
up
wrapping
every
string
in
one
of
these
little
implementations,
but
that's
that
is
all
allocated
statically
in
your
instrumentation
right.
You
don't
have
you
don't
create,
though
in
general
you
don't
create
those
dynamically.
A
A
But
I
think
well,
most
of
our
semantic
attributes
are
strings,
our
string
value,
and
so
I
and
I
think,
that's
the
most
common
sort
of
attribute
and
those
you
actually
get
a
gain.
An
allocation
gain
as
well.
As
I
think
this
is.
It
actually
makes
a
nicer
api
to
use
than
having
to
create
attribute
values
on
every
single
call.
B
H
This
is
actually
starting
to
look
a
little
bit
more
like
the
open
tracing
api
of
having
a
typed
key.
B
Yeah
I
like
that,
I
mean
you
know
unifying
this
with
the
semantic
attributes
I
feel
like
we
had
an
issue.
A
few
months
ago
we
were
discussing.
A
A
A
And
I
don't
know,
I
don't
think
I
don't
know
if
it
would
help
the
bridging
the
agent
bridging
in
the
agent
at
all
or
not.
I'm
actually
like
it
more
just
as
an
improvement
to
the
api
from
a
usability
perspective.
B
So
it
really,
it
would
go
ahead.
Tyler.
H
I
was
going
to
say
one
other
thing
that
you
could
consider
with
potentially
having
typed
keys
is
having
a
serialization
mechanism
predefined
on
the
key.
So
that
way
you
could
define,
for
example,
a
key
for
an
error
and
not
actually
like
serialize
that
error
to
a
string
until
the
processing
happens.
H
If
that
makes
sense
so
like
you
could
potentially
set
an
attribute
of
a
complex
type
where
the
serialization
is
defined
in
the
key.
H
A
H
A
I
mean
it
wouldn't
have
to
be
immutable,
but
then
who?
Whoever
invented
that
crazy
thing
would
pay
the
price
right,
because
it
would
be
annoying
yeah,
and
I
think
the
way
I
think
if
it's
were
implemented,
we
wouldn't
need
to
create
any
of
those
right
away,
because
I
think
that
you
just
keep
those
like
the
key
classes.
Just
come
along.
You
kind
of
need
to
create
some
sort
of
generalized
key
interface.
I'm
not
sure
exactly
how
to
think
through
that.
C
C
C
And
so
do
you
do
that
on
the
critical
path
of
the
critical
path
that
maybe
that
may
be
important.
H
A
H
I
think
the
same
thing
still
applies
for
other
things,
so,
like
you
could
perhaps
pass
in
like
a
a
url,
for
example,
that
is
a
combination
of
the
existing
headers
that
doesn't
have
to
be
converted
into
tostring
to
a
url,
because
creating
a
url
object
requires
parsing
of
the
strings,
which
is
relatively
expensive.
H
H
I
had
a
a
servlet
request
and
I
wanted
to
set
the
url
attribute
instead
of.
A
H
B
A
B
About
50
lines
of
code,
that
or
more
that
is
doing
this
url
parsing
all
the
time
or
various
sort
of
url
shenanigans
for
different,
because
we
get
urls
in
different
ways
from
different
libraries.
A
H
A
Oh
yeah
yeah
yeah
yeah.
No,
I
understand
how
what
it
would
do
and
just
trying
to
understand
what
the
api
would
look
like.
I
need
to
think
that
through
so
I
think
there's
some
tricky
like
do
you
use
generics?
A
Do
you
have
a
base
interface
that
you
can
then
extend
from
and
then
so
you're?
I
don't
know
anyway
lots
of
interesting
questions
about
how
to
design
that
in
java,
where
you
don't
get
union
types
I
mean
all
of
this
would
be
so
much
easier.
If
we
had
union
types
right
because
then
we
could
essentially
do
that.
H
The
key
point
is
that
it's
better
to
maybe
spend
more
cpu
processing
on
the
back
end
in
effort
to
save
the
critical
path.
Cpu
overhead.
H
A
That
would
that
would
be
the
best
time
to
do
it
or,
if
you
needed
to
in
a
span
processor,
although
that
happens
on
the
often
happens
on
the
regular
thread
on
the
main
thread
interesting.
I
will
I'm
going
to
write
a
note
for
myself
to
ponder
that
idea
as
a
part
of
it.
Could
you
tyler?
Would
you
be
willing
to
just
make
a
comment
on
that
issue
with
that
idea,
so
I
don't
it
doesn't
get
lost.
Thank
you,
sir
15.80.
E
B
John,
what
is
there,
what
would
be
the
best
way
for
us
to
sort
of
help
and
sort
of
organize
this
work
or
stay
in
touch
about
this
work?
What
are
the
like?
The
critical
pieces
that
yeah.
A
A
great
place
for
that
on
the
one
that
we
were
just
talking
about,
whatever
number
that
was
and
slack,
except
that
we're
not
using
slack
officially
yet,
but
slack
is
always
great.
A
Or
getter
I
mean
getter
is
always
horrible,
but
I
guess
it's
better
than
nothing,
but
I
think
on
the
github
issues
like
I'm
watching
them
all.
So
if
people
have
comments
and
also
aggressive
reviewing
and
approvals
or
disapprovals
of
the
prs
that
are
put
in
like
the
one
about
spain
context,
onorag's
done
a
really
great
job.
If
other
people
could
jump
in
there
and
also
give
that
pr
a
hard
look.
A
Because
if
we
get,
if
we
get
like
four
four
of
us
approving
that,
then
I
think
carlos
well.
Carlos
could
look
too.
If
he's
on
the
call,
still
yeah,
I
think,
would
be
easier
for
bogdan
and
carlos
to
approve.
B
Cool,
and
so
primarily
the
span
context
and
attribute
value
are
the
two
that
we
should
focus
on.
A
Yeah,
I
mean
those,
I
think,
are
the
only
two
big
pieces
of
the
api
that,
aside
from
grpc
context,
setting
that
aside,
those
are
the
two
big
pieces
of
the
api
that
feel
like
they
need
to
get.
A
We
need
to
make
a
decision
we're
going
to
leave
it
as
is,
or
we're
going
to
make
a
change,
and
this
is
the
change
we're
going
to
make
and
we
can
make
it
happen
so
getting
to
ground
on
those
would
be
very
like
really
soon
40.9.0.
A
I
think
it
needs
to
be
done
or
I
don't
think
we
should
try.
Those
are
the
big
ones.
I
think,
there's
correlation
context
baggage
changes
that
need
to
be
made
like
there's,
actually
an
issue
open
to
actually
implement
a
baggage
propagation.
It
got
unblocked
yesterday
with
a
merging
of
a
spec
of
the
bag.
It
changed
to
baggage.
B
Yeah
we
need
to,
we
don't
have
support
on
the
instrumentation
side,
yet
the
bridge
doesn't
bridge
the
correlation
context
yet
so
we
need
to
do
that.
Also.
B
All
right,
anybody
have
any
other
topics
there
that
they
thought
about.
While
we
were
chatting.
D
You
know
I
will
call
out
that
shashi
and
I
both
put
links
into
the
chat
going
back
to
the
discussion
about
the
bootstrap.
B
B
So
code
is
responsible
loading,
the
api,
so
the
api
is
loaded
on
to
the
bootstrap.
B
B
Makes
sense,
that's
that
that
is
what
datadog
was
doing
with
the
open
tracing
api
also
and
the
problem
that
they
ran
into
with
open
tracing.
Is
that
the
open
tracing
api
kept?
You
know
had
some
major
breakages,
whereas
for
you
all
it's
your
own
api,
so
you
could
control
that
better
and
not
break
yourself.
B
C
B
Did
you
see
tyler,
I
see
seed
you
on
the
muzzle
the
scala
muzzle
problem.
H
I
did
not
see
that
I'll
I'll
look
for
it.
B
Yeah
yeah
looks
like
yeah
anyway
fun
with
muzzle
yeah
yeah,
all
right,
y'all,
well,
14
minutes
back.
A
Great
to
see
everybody,
oh,
I
have
one.
I
have
one
question
so
I
got.
I
don't
know
if
you
ask
you're
on
the
email
or
not,
but
morgan
sent
email
about
the
new
google
engineer
and
scheduling
a
time
so
she's
in
australia
zoe.
I
think.
B
Absolutely
so
definitely
I
think
this,
the
thursday
6
p.m.
Pacific
is
great,
and
I
think
we
should
just
turn
that
into
a
all
java,
all
the
time
meeting,
because
it's
a
great
way
to
touch
base
with
you
and
honorag
and
everybo
well
mainly
to
pull
an
honorary
into
these
discussions,
since
he's
so
active
in
both
of
the
repos
and
he's
excluded
by
these
morning
meetings
and
then
the
tuesday
one
tends
to
be
fairly
instrumentation
heavy,
but
we
would
love
to
have
you
know.
B
The
I
love
to
have
people
join
and
we
can
chat
and
answer
any
questions
that
she
may
have
at
that
point.
So
definitely.
A
There
was
a
there
was
another
person
on
that
call
tuesday
night
who
never
turned
their
camera
on
or
said
anything.
I
don't
know
who
it
was
didn't.
The
name
was
just
like.
I
looked
like
a
coded
name,
so
I
don't
know
what
was
up
with
that,
but.
A
Somebody's
spying
on
open
telemetry
java,
instrumentation
discussions.
B
Yes,
the
hour
and
45
minutes,
I
like,
I
can't
imagine
anybody
getting
through
that
yeah.
I
was
like
falling
over
dead
at
the
end,
it
was
like
11
45
p.m.
I'm
like
I,
don't
think
I
could
talk
anymore.
C
B
I
am
going
to
put
that
make
that
a
recurring
on
the
public
calendar,
though
so.