►
From YouTube: Untangling your production events with the asyncAPI discovery tool, Greg Meldrum, Solace
Description
AsyncAPI Conference 2021 - Day 3
18th November 2021
A
Today,
I'm
going
to
talk
to
you
about
the
event
discovery
agent.
First,
my
name
is
greg
meldrum,
I'm
a
software
architect
at
solace.
You
can
reach
me
at
greg
meldrum
at
most
places.
I'm
also
part
of
the
ac
kpi
slack.
If
you
want
to
dm
me
there
so
the
event
discovery
agent
recently
open
sourced
by
solace,
placed
second
place
in
the
async
api
hackathon.
A
The
tool
itself
is
built
to
help.
You
understand
your
event-driven
architecture
by
generating
an
async
api
representation
of
the
events
that
are
flowing
through
your
system,
so
the
tool
itself
will
connect
to
your
broker
and
will
start
listening
for
events
that
are
flowing
through
collect
them.
Reverse
engineer
a
schema
if,
if
you're,
sending
in
a
json
payload
and
then
create
an
async
api
representation
of
those
events,
the
architecture
of
the
agent
is
layered.
So
at
the
top,
we've
got
an
embedded
react.
A
A
Out
of
events
that
were
discovered
and
at
the
bottom
layer
is
the
the
plug-in
layer,
and
this
is
sort
of
where
the
magic
happens
so
the
in
the
plug-in
layer,
you
write
a
particular
plug-in
for
a
specific
broker
and
this
plug-in
will
connect
to
the
broker
it's
responsible
for
collecting
messages
and
then
passing
them
back
up
to
the
application
layer.
So
we've
got
plugins
for
apache
kafka
for
confluent.
A
Now,
where
can
you
find
it?
So
it's
at
solace,
labs
in
event,
discovery
agent,
so
the
readme
has
a
lot
of
documentation
in
it.
Talks
about
all
the
broker
plugins
how
to
download
to
build
it
to
run
it
as
well
as
some
information
on
the
ui
and
the
rest
interface
there's
also
some
plug-in
developer
guides.
So
let's
say
you
wanted
to
write
your
own
plug-in,
so
you
could
go
into
the
plug-in
developer
guide
and
it
sort
of
walks
you
through
how
you
would
create
a
plugin
for
your
your
own
broker.
A
A
And
now
on
to
the
demo,
so
today
I'm
joined
by
very
famous
eda
consultant.
His
name
is
martin.
His
middle
name
is
fowle
because
he's
a
duck
and
his
last
name
is
our
because
he's
a
pirate,
so
his
name
is
martin
fowler
and
martin.
Fowler
is
a
very
esteemed
eda
consultant,
a
big
proponent
of
eda's,
very
sought.
After
so
martin
has
been
hired
by
this
company
called
acme,
rideshare
and
acme
rideshare.
A
Has
this
legacy
system
on
kafka
and
they've
sort
of
lost
track
with
the
events
that
are
flowing
through
the
system,
so
they've
hired
martin
to
help
them
evolve
their
system,
and
the
first
thing
martin
wants
to
do-
is
actually
run
a
discovery
scan
on
the
kafka
broker
to
get
an
idea
of
the
messages
that
are
running
running
through
it.
So
we're
going
to
start
some
traffic
here,
so,
okay,
martin,
can
you
hit
enter
for
me?
A
Seconds,
okay,
so
it's
running
so
now
I've
gone
to
the
ui
here
and
I've.
I've
pre-filled
a
bunch
of
things.
So
this
is
the
kafka
plug-in
ui
that
we're
using
the
discovery
is
martin's
super
exciting
acme
share
discovery
I
put
in
the
host
of
the
broker,
I'm
connecting
to
the
port
that
I'm
connecting
to.
A
It
also
supports
many
authentication
mechanisms.
In
this
case,
I've
set
up
the
broker
with
no
authentication
just
to
keep
it
simple
as
well.
There's
different
tls
options,
so
you
can
run
tls
transport
where
you
provide
your
trust,
store
and
password,
or
you
can
actually
do
tls
mutual
authentication
too.
If
you
have
a
key
store
again
in
this
case,
I
kept
it
simple,
so
I
didn't
put
any
tls
there,
so
you
can
optionally
add
in
connectors
as
well
again.
I
left
that
out
to
keep
it
simple
and
I'm
going
to
scan
for
all
topics.
A
So
I'm
going
to
start
the
scan
here
and
the
discovery
agent
is
now
connecting
to
the
broker.
It's
going
to
go
through
all
the
topics
and
it's
going
to
pick
the
last
message
off
of
each
topic
and
then
try
to
reverse
engineer
a
schema
from
it.
So
we
can
see
we
can
see
here
that
the
agent
is
is
reading
a
bunch
of
data,
and
here
it's
reverse
engineering,
schemas
and
okay.
So
it's
done
so.
We
got
12
processed
events.
A
A
A
A
A
So
let's
say
I
wanted
to
do
some
analytics
and
I
just
wanted
to
grab
all
the
messages
in
in
a
consumer.