2. Agenda
1. Application Diagnostic Challenges
2. Application Diagnostics for Java - Value Proposition
3. Architecture
4. Platform Support
5. Qualifying the Opportunity
6. Competitive Advantage
7. Pricing & Packaging
8. Sales Opportunities
9. Features Overview
10.Resources
3. Application Diagnostic Challenges
• Limited Production visibility
• Not enough depth to diagnose production issues
• Diagnostic tools not suited for production
• Inability to reproduce problems on other environments
• Hard to isolate culprit tier and component
• Impacts Time to Resolution
Java is a black box
4. Java is a Black Box
Contracts &
Customers DB
Inventory &
Orders DB
JVM 1
JVM 3
JVM 2
Store JVM
Support JVM
Fulfillment JVM
Inventory &
Orders DB
Contracts &
Customers DB
5. Enterprise Manager – Application
Diagnostics for Java (AD4J)
Strengthening APM solution
AD4J
•Diagnose problems
in production
•View all java activity:
instrumentation not
needed
•Trace transactions
across tiers, into the
Oracle DB
Operating Systems
Database
Middleware
Applications
• Configuration Management
• Service Level Management
• Application Performance Mgmt
• Lifecycle Management
• Dashboards
6. Oracle AD4J – Value Proposition
• Diagnose Issues in Production, not in Test Reduce Time to Resolution
• Improved monitoring with more informative alerts Earlier warning to
minimize outages
7. 10gR4
AD4J Architecture
Monitored JVM
AD4J Agent
Java Class
AD4J Agent Native library
Console JVM
AD4J Console
Java Classes
AD4J Console
JSPs
Agent Console
AD4J
Repository
Monitored JVM
AD4J Agent
Java Class
AD4J Agent Native library JVM Activity
Monitoring
DB Activity
Monitoring
Memory Leak
Analysis
Root Cause
Analysis
JVM Information to browsers
AD4J Console Native library
SNMP Traps
Monitored DB
AD4J DB Agent
9. Target Audience & Pain Points
Profile Pain Points
CIOs, IT Managers &
LOB owners
• Mean time to resolve production application
downtime issues is very high
• Critical business applications crash or become
slow when business is at its peak, causing
severe damage to the business.
Application
Administrators
• Unable to identify the root cause of production
application issues quickly.
• Application is slow or requests are hanging or
sometimes application crashes
• How do I know if the performance problem is
caused by application that I own or is it caused
by an external process or network or database?
• Unable reproduce performance problems in test
environment. How do I diagnose in production?
10. Target Audience & Pain Points
Profile Pain Points
Application
Administrators
• Current Java diagnostic tool is very complex to
install and configure and I am still unable to find
the bottleneck.
• It is not enough to know when there is a problem
in production, I want to have enough details to
diagnose the root cause.
DBAs • What is causing the application performance
problem? Is it database or the middleware
application component?
• Which application request causing database
issues?
• Which application pages are impacted by slow
running SQL?
11. Qualifying the opportunity
• Do you have any Java applications running in
production?
• How do you monitor production applications 24x7 and
diagnose complex production issues?
• How long does it take you to resolve a production
problem?
• Can you identify end user issues even before they
experience them?
• How do you know if the problems are caused by
middletier or database?
• How much time do you spend in reproducing
production problems to diagnose them in non-
production environments? Can you always reproduce
them?
12. Objection Handling
Objection Answer
I already have Java monitoring tools
for my production environment. Why
do I need Oracle AD4J?
In addition to monitoring your production
application, Oracle AD4J helps you diagnose the
root cause of performance problems in
production environment with very low overhead.
No need to reproduce problems in non-
production environments.
Application knowledge is not required to diagnose
Java problems.
What is the overhead? Will it impact
my production applications?
Overhead is very low, < 1%.
Highly suitable for production applications
“Always-on” production monitoring & diagnostics
Does it require complex configuration?
Or Do I need to instrument the
application?
No application instrumentation is required.
No server restarts required.
Easy to use & gives immediate value
13. Competitive Advantage
in-depth Application view
AD4J Console
AD4J Console
Java Classes
AD4J Console
JSPs
AD4J
Repository
DB Activity
Monitoring
JVM Activity
Monitoring
Diagnose &
Root Cause
Memory Leak
Analysis
Monitor The Platform 24X7
Diagnose & Root Cause
Memory Analysis
NOC App Support & QA DEV
14. Competitive Advantage
Low overhead & easy to use
1. Complicated to install, deploy,
use
• Code instrumentation and server
restarts
• Experts needed to instrument
and diagnose
2. High overhead (>20%) – Can’t
run in production
3. Silo oriented – No visibility from
App Server through to DB
1. Very easy to install, deploy, and
use
• No modification of code or server
restarts
• Immediate visibility with no
Application expertise required
2. Minimal Overhead (<1%) – Runs
in production Servers
3. Transaction Visibility – Follow
transactions from AS to Oracle
database
15. Competitive Advantage
Meets key production application diagnostic attributes
Enterprise Manager
• Wily’s Introscope
• Mercury’s Diagnostics
• Symantec i3 for J2EE
• Other BCI products
• 6-10 K / CPU
JMX based
monitoring
500-2500/CPU
Symantec i3 for Oracle
0
5
Cross Tier Correlation
Database Granularity
Low OverheadEase of Use and Setup
Java Granularity
Developer Debuggers
• JProbe, OptimizeIt
• NetBeans IDE Profiler
• JDeveloper Profiler
• Free-1K/user
16. Packaging
• Packaging
– Oracle Application Server Diagnostics Pack
• Oracle Application Diagnostics for Java (AD4J)
• Request Performance
• Interactive Transaction Trace
• System monitoring – events, notifications, reports & historical
trends
– Non-Oracle Middleware Diagnostics Pack
• Oracle Application Diagnostics for Java (AD4J)
• System monitoring – events, notifications, reports & historical
trends
• BEA Web Logic, Web Sphere, JBoss & Standalone
17. Pricing
1. Application Diagnostics for Java
included in AS Diagnostics Pack
• Priced at 6K/cpu (up from 3K/cpu)
2. New pack: Diagnostics pack for non-
Oracle Middleware
• Also priced at 6K/cpu
Target Customer
• IT Operations
VP/Dir/Manager
• Application
Manager/Admin
18. Pricing
Existing customer upgrades
• Upgrade to 10gR4 AS Diag Pack
- Use AD4J - Pay the difference - $3K
• AS Diagnostics Plus Pack
- Without AD4J – free upgrade to EM 10gR4 AS Diag Pack
• Upgrade to Diagnostics Pack for Non-Oracle Middleware
- System Monitoring Plug-in for BEA WebLogic, Web Sphere &
JBoss - Pay the difference - $4.5K
- Without AD4J – free upgrade to EM 10gR4
19. Sales Opportunity
1. Diagnostics Drive
– Upsell existing AS Diagnostics customers to the new Enterprise
Manager 10.2.04 – AD4J release
– Include AS Diagnostics in every Oracle AS opportunity
– Introduce AD4J and DB diagnostics as one package (cross-tier as
a differentiator)
2. Application performance diagnostics - EBS
– Diagnose java performance issues for EBS application
(Collabsuite, Oracle Identity Manager)
– JVM visibility is critical to understanding resource (network, java
lock, DB, CPU) bottlenecks
3. Solution for Composite Application Management
– Complete solution for managing java applications
– Position AS Diag, AS Config, AS Prov, SLM, and SOA pack
20. Feature-Benefit Summary
Key Features Benefit
1. Hot deployment, without server
restarts or configuration
changes
• Quick time to value
• Simple to deploy
• Easy to use
2. Monitoring, Notifications &
Dashboard
• Low overhead – “always-on” production diagnosis
• Events and notification on all performance, load,
usage metrics & resource bottlenecks (Java
Diagnostics)
• Reports and historical trends
3. Real-time visibility into JVM &
Application state without
instrumentation overhead
• Complete Java stack including thread state and
Java method/line visibility
• View of resource bottlenecks (DB, I/O, CPU, Locks,
thread hangs etc)
• No need to reproduce problems in test environment.
• No application knowledge required
4. Trace in-flight transactions • View request performance problems in real time
• Analyze time spent in each resource bottleneck
(extend to each java method)
21. Feature-Benefit Summary - Continued
Key Features Benefit
5. Cross-tier trace with
Oracle DB
• Cross tier analysis of transactions
between DB and middle-tier
6. Differential heap analysis • Simplify memory growth and leak analysis
7. Request Performance • Historical views to show the response
times of end-user requests
• Response time breakdown by
Servlet/JSP, EJB, JDBC and SQL
8. Interactive Transaction
Trace
• Synthetic transaction response time profile
22. 10gR4
1. HOT Deployment
Dynamic deployment on running applications
1. No parameter changes needed
2. Deploys dynamically as a web application
3. Does not need app configuration changes
4. Does not need JVMPI/JVMTI
5. Does not mess with the class loader
23. 10gR4
2. JVM Monitoring
• Leading
indicators of
Performance
– CPU, Heap
Usage, GC
Activity
– Time spent in
waiting for
Object Locks,
DB calls, IO,
and Network
24. 10gR4
2. Time consuming Methods &
Requests
• Top methods including the
complete call stack and cost for
each method in the stack
• Top requests with associated cost
26. 10gR4
4. Cross-tier trace with Oracle DB
DB State Causing
the Bottleneck
Identify DB
Wait
SQL Causing the
problem
• Trace Java thread to
DB session
– Identify in-flight Java
threads waiting for
DB resource
– Drill to SQL
• Trace DB session to
Java thread
– View DB sessions
waiting for or
holding locks
– Identify Java thread
holding DB session
27. 10gR4
5. Differential Heap Analysis
• Take Heap
snapshots with
minimal overhead
• Memory leak
analysis by
comparing two
different heap
snapshots taken
over a period of
time
28. 6. Request Performance JVM
Diagnostics
• For web applications
(URL), capture time spent
in each tier
• View performance
historically. Identify if J2EE
time is the cause
• Drill-down to JVM (AD4J)
to diagnose the root cause
of increased J2EE time
• Identify problems to
method, to resources, or
due to memory leaks
10gR4
29. 10gR4
7. Interactive Transaction Trace
• Web Application
Transactions (URL) -
Playback interactively
• View the time spent in
server and network
• View response time
breakdowns by
Servlet/JSP, EJB, JDBC,
and SQL
• Drilldown to JVM (AD4J)
to diagnose problems in
JVM
30. 10gR4
8. System Monitoring
• 24x7 monitoring of
availability, performance,
load, and usage metrics
of Application Server
and the host
• Blackouts, events,
notifications, and metrics
comparison
• Historical trends of
metrics and events
• Reports
31. In Summary: Typical problems
addressed
1. Application running slow because of serialized DB connections
causing long wait times for Java locks
2. Mid-tier CPU utilization is high identify top classes/methods
3. When a user request is hung, AD4J allows you to identify the
affected current state and line of code in the application
4. When GC is running often, consuming resources & slowing
application, AD4J can identify the source of the memory leak
5. Identify java thread associated with long running SQL
6. Request performance scenario