2. Agenda
• What
Just
Happened?
– Agile
Development,
QA,
Stress
&
Performance
tesCng
– Logging?
– Debugger?
• STS
&
Integrated
in
Tomcat
(tc
Server)
• Spring
Insight
Demo
Time
• JMeter
&
Google
Chrome
Speed
Tracer
• How
it
works
• Plugins
&
AnnotaCons
• Wrap
up
6. ApplicaCon
Development
&
TesCng
• So
your
building
your
fancy
new
web
applicaCon
– Is
it
working
the
way
you
expected?
– What
caused
that
failure?
– How
is
the
performance?
– Why
is
it
slow?
– What
the
heck
is
Hibernate
(or
whatever)
doing?
8. What
do
you
do
when
it
fails?
• Check
the
logs?
– Timestamps
– Session
IDs,
User
IDs
– Log
all
the
parameters
–
UGH?
• Run
the
debugger?
– Typically
doesn’t
help
with
performance
• And
what
do
you
do
in
QA
and
Performance
TesCng?
When
it
fails?
When
it
is
slow?
27. Web
ApplicaCon
Spring
Insight
Client
(Browser,
JMeter,
etc.)
Web
Layer
Service
Layer
Data
Layer
DB
Spring
Insight
Messaging
Caching
28. How
does
it
work?
• Spring
Insight
uses
automaCc
code
instrumentaCon
to
monitor
your
applicaCon
• It
does
this
by
introspecCng
exisCng
annotaCons
and
interfaces
for
key
aspects
of
your
applicaCon
• It
then
uses
AspectJ
AOP
point
cuts
to
monitor
the
code
• Runs
in
tc
Server
(Tomcat)
beside
your
web
applicaCon
31. Plugins
• Many
plugins
are
supported
out
of
the
box
• You
can
get
more
from
GitHub
or
develop
your
own
using
the
Developer
Kit
• GitHub:
hXps://github.com/SpringSource/spring-‐
insight-‐plugins
35. Dynamic
Concrete
Aspects
• Instrument
classes
and
methods
that
are
not
covered
by
plugins
or
Insight
annotaCons
• Defined
in
AspectJ
XML
configuraCon
• No
changes
to
source
code
required!
36. Spring
Insight
• AutomaCc
• No
Coding
&
No
ConfiguraCon
• Shows
Errors
• Shows
Performance
• Pluggable
• Answers:
“What
Just
Happened?”
37. Wrap
Up
• Helps
developers,
QA
Testers,
and
in
Stress
and
Performance
tesCng
to
answer:
“What
Just
Happened?”