Distributed Tracing via CORBA PortableInterceptors
The
CORBA PortableInterceptor extension enables tracing across multiple CORBA (IBM, BEA,
Borland, IONA) compliant products. By creating
a JXInsight cluster containing both client and
server processes the console will be able to associate
client traces sent over the wire with server traces
this can be further extended by the trace console
reconciliation engine to link a particular client
trace with a SQL operation on a database object
such as a table or column. Statistics for clock,
CPU, blocking and waiting, GC and object allocations
can be captured and aggregated at various levels
via the flexible trace identifiers configuration.
In the event that JDBC work is initiated during
the scope of a trace transaction, transaction
paths and interceptions will be associated. The
association can then be navigated within the console
for a loaded profile model.
Inter JVM EJB Component Level Tracing
The
EJB Component extension enables profiling
and tracing of inter JVM invocations on EJBHome,
EJBLocalHome, EJBObject and EJBLocalObject instances
across component boundaries (interfaces). Statistics
for clock, CPU, blocking and waiting, GC and object
allocations can be captured and aggregated at
various levels via the flexible trace identifiers
configuration. In the event that JDBC work is
initiated during the scope of a trace transaction
paths and interceptions will be associated. The
association can then be navigated within the console
for a loaded profile model.
JNDI
Tracing
JXInsight now traces
JNDI lookup calls made on InitialContext objects.
New Application Server Management
Integration
JXInsight now includes performance management
agent support for HP OpenView Service Desk 4.5
properitary application server technology. JXInsight is able to intercept all database
work and provide both a management and monitoring
solution for this key component of the HP OpenView
Service Desk runtime.
64-bit
OS Platform Agents
JXInsight ships with JVMPI
agents for 64 bit platforms: Solaris SPARC, AIX,
HP-UX PA-RISC, HP-UX Itanium.
Automatic
Snapshot Export
Added system properties
to configure the server to automatically export
snapshots to the local filesystem on the throwing
of particular SQLException exceptions by JDBC
intercepted methods. The system properties
and defaults are:
# global on/off flag
jdbinsight.server.profiler.sqlexception.exportsnapshots.enabled=false
# determines whether the profile
model is exported
jdbinsight.server.profiler.sqlexception.exportsnapshots.profile.include=true
# determines whether the metric
model is exported
jdbinsight.server.profiler.sqlexception.exportsnapshots.metric.include=true
# determines whether the trace
timeline model is exported
jdbinsight.server.profiler.sqlexception.exportsnapshots.trace.include=true
# specifies the directory location
for the exported snapshots
jdbinsight.server.profiler.sqlexception.exportsnapshots.dir=${user.dir}
# the file prefix for the snapshot
files
jdbinsight.server.profiler.sqlexception.exportsnapshots.fileprefix=sqlexception.${sqlexception.count}
# determines whether the next
sql exception in the chained is analysed
jdbinsight.server.profiler.sqlexception.exportsnapshots.nextexception.enabled=true
# the wait time between multiple
exception events
jdbinsight.server.profiler.sqlexception.exportsnapshots.waittime=10000
# a comma separated list of
sql states to export on
jdbinsight.server.profiler.sqlexception.exportsnapshots.sqlstates=
# a comma separated list of
numeric error codes to export on
jdbinsight.server.profiler.sqlexception.exportsnapshots.errorcodes=
Statistical
Distributions
Added new new system properties to reduce the
memory requirement of statistical distributions
spanning a large range of values (microseconds).
The defaults for prod and test mode are:
-Djdbinsight.server.profiler.distributions.times.rounding=1000
// round to nearest millisecond
-Djdbinsight.server.profiler.distributions.bytes.rounding=1024
// round to nearest kilobyte
JDBC Drivers
Added new Cloudscape XA and Connection Pool DataSource
Proxy classes
PropertiesConnectionPoolDataSource
and PropertiesXADataSource classes have a new
property, password (setPassword, getPassword),
which ensures appserver encrypted passwords can
be used as is.
Table
Access Pattern Graphic
Added new cell graphic to transaction paths, visits,
interceptions, and SQL statement tables to help
match table rows with similiar database table
access. Each table identified via parsing
of all SQL statements in the model is represented
as a single column of 3 pixels. Each column has
4 partitions for the type of access (INSERT, SELECT,
UPDATE and DELETE). A tooltip displays the table
associated with each graphic column.
Classes
Perspective
The
classes perspective focuses
on the runtime dependencies of Java classes based
on class meta information derived via the reflection
API during call stack recording of intercepted
JDBC calls and JXInsight traces. A major advantage
of JXInsight's approach over Java IDE’s offering
similar navigation views is that in large part
the visualizations presented derive their information
from the runtime behaviour (call stacks and transaction
paths) – runtime behaviour within a particular
window of profiled execution. Every time the profile
is reset the classes, interfaces, packages, and
methods are cleared. Thus when a new snapshot
is taken and analysed the user is provided with
required runtime classes for that period in terms
of transactions and traces.
The
Incoming Call Stack Tree and
Outgoing
Call Stack Tree views display the incoming
and outgoing call stacks, respectively, for a
set of methods derived from the current selection
in the classes navigation tree
.
The
Inheritance Tree view displays the
class and interface hierarchy for a set of classes
and interfaces derived
from the current selection in the classes navigation
tree
.
System
Properties Perspective
New
Properties perspective added to profile
mode. System properties are now added to the all
models exported to support change management.
Call
Stack Classifications
Added
Quartz call stack classification.
Dump
The dump command
instructs the server to export a model to the
servers local file system. When no arguments are
specified the command will attempt to export all
snapshot types.
Examples:
dump
dump
-host 172.29.20.20
dump
-type tl
dump
-type profile
dump
-type profile -host 172.29.20.20
Command Line Driven
Commands in the Server and Script command groups
can also be passed to the terminal startup script
from the command line allowing for integration
with other scripting environments and tools.
Example:
Windows:
jdbiterminal script -e -f sample.script
Unix: ./jdbiterminal script
-e -f sample.script
Snapshot
The snapshot command now
supports the loading of the three possible model
(snapshots) types. The -type argument can take
values profile or pr, metrics or mx, timeline
or tl.
Examples:
snapshot -read -type pr -file test.snp -directory
/opt/jdbinsight/snapshots
snapshot -create -type pr -f test.snp
-d c:\opt\jdbinsight\snapshots
snapshot -write -type pr -file test.snp
-d c:\opt\jdbinsight\snapshots
snapshot -sch -type mx -prefix specjrun-
-start 5 -i 20 -host 172.29.20.5
snapshot -sch -type mx -stop -host
172.29.20.20
Integration Guides
JXInsight
now ships with integration guides for IBM
WAS 6.0, BEA WLS 8.x as well as HP OpenView ServiceDesk
4.5