inspectIT 1.3 Release Notes

Monitoring and diagnosis for webbased applications

The http sensor allows to keep track of http related information within your application. Each http based request that your application gets will be displayed and measured. You get the request URI, all headers, parameters and attributes that were provided with the request. As the http sensor also captures the time each request took you get a very good overview about which http operation took the most time in your system. As the http sensor also fully supports navigation you can easily navigate to the invocation sequences that were executed for each http request and thus diagnose a problematic runtime with ease. Read on...

Instrumentation of Java core classes

inspectIT widens the instrumentation possibilities and allows to instrument "core" classes of the JDK (that is java., javax., ...). This feature provides you the means to inspect your application is more details. In addition this feature also applies to other sensors like the exception sensor which you can now set to trace java core exceptions (like Nullpointers - You would not believe how many exceptions are thrown in a normal application server start up ;)). Read on

Instrumentation of OSGi based applications

The new improved instrumentation process is now capable of instrumenting applications that are OSGi enabled. Application servers, which rely internally on the OSGi platform (equinox, ...) should now be fully accessible for the instrumentation process.

Improved navigation features

Apart from being able to drill down from the timer data view to all invocation sequences that provide this timer (and being able to navigate all occurences within the same invocation sequence's call graph), inspectIT now allows to also find exceptions and SQLs. In addition you can easily navigate to the occurrances of methods, exception and SQLs from the concrete timer/exception/sql tab within the detail view of an invocation sequence ("locate in call hierarchy") Read on

Limit size of exceptions and SQLs

inspectIT allows you to limit the size of exception stacktraces and SQL queries to reduce the necessary memory amount on the CMR and to reduce the data volume that is sent from the agent to the CMR. Read on

Improvement

  • [INSPECTIT-323] - Several warnings in build file concerning includeantruntime
  • [INSPECTIT-360] - Add object to the locate-able objects in invocation view
  • [INSPECTIT-398] - OptimizedTimerStorage generating out of memory error on connection problems
  • [INSPECTIT-423] - Revisit the indexing tree
  • [INSPECTIT-425] - Time-based filtering for aggregation views: Timer, Exception and SQL
  • [INSPECTIT-426] - Revisit the multithread approach with comapre and set
  • [INSPECTIT-431] - Better handling of TimerData
  • [INSPECTIT-433] - Revisit CMR refresh
  • [INSPECTIT-437] - Provide an inspectIT build for the Mac
  • [INSPECTIT-438] - Provide a release of inspectIT for Linux 64bit
  • [INSPECTIT-441] - Missing column Exc. Duration in Aggregated timer data
  • [INSPECTIT-442] - Equals and hashCode are missing for all domain model classes
  • [INSPECTIT-444] - F5 should refresh the view
  • [INSPECTIT-445] - BufferElement using Status Element and sequential processing
  • [INSPECTIT-448] - Allow more classes to be searched by IndexQuery
  • [INSPECTIT-449] - Provide a CMR setting to disable timer storage in the DB
  • [INSPECTIT-452] - Create GC output for the CMR
  • [INSPECTIT-453] - Tree clean and size update trigger has to be relative to buffer size
  • [INSPECTIT-454] - Separate preparing and sending of Agent data to two threads
  • [INSPECTIT-455] - Cleaning of findable objects
  • [INSPECTIT-458] - Quartz Scheduler has too many inactive threads
  • [INSPECTIT-463] - Selecting the decimal places in aggregated views
  • [INSPECTIT-466] - General UI preference component
  • [INSPECTIT-467] - Log when the CMR drops data
  • [INSPECTIT-470] - Update Quarz
  • [INSPECTIT-472] - Change default RMI ports from 1099/1100 to something less likely used
  • [INSPECTIT-481] - Improve GC settings and adapt buffer memory sizing
  • [INSPECTIT-485] - No update button in invocation sequence drill down view
  • [INSPECTIT-495] - HTTP Sensor: Show which Use Case filtered in invocation sequence drill down
  • [INSPECTIT-506] - Recognize and prevent instrumentation loops to allow to instrument classes that inspectIT uses during instrumentation
  • [INSPECTIT-507] - Remove exception superclass constructor calling
  • [INSPECTIT-513] - Remove the Enhanced invocation storage
  • [INSPECTIT-518] - Picture for preference dropdown in preference bar
  • [INSPECTIT-521] - TimerData should provide better means to check if there is exclusive times or cpu times
  • [INSPECTIT-525] - Provide automatic testing facility for checking the correct usage of the memory calculation in buffer classes
  • [INSPECTIT-526] - Annotation matcher should also check for interfaces and superclasses
  • [INSPECTIT-528] - Support IBM JVM for CMR
  • [INSPECTIT-536] - Change splashscreen for 1.3
  • [INSPECTIT-540] - If redefinition of classes fail, just a message should be printed
  • [INSPECTIT-541] - Adapt about picture for 1.3
  • [INSPECTIT-543] - Memory calculations for Java collection on default capacity and add ObjectSizes for IBM
  • [INSPECTIT-544] - Enhanced and simple exception sensor

Bug

  • [INSPECTIT-149] - Provide log output when version file is missing
  • [INSPECTIT-364] - Filters and stepping functionality are not synchronized
  • [INSPECTIT-373] - History graph table allows to navigate to history graph
  • [INSPECTIT-390] - Classpath separator on windows
  • [INSPECTIT-399] - NullPointerException when opening invocation sequence from storage area
  • [INSPECTIT-416] - CMR refresh takes very long
  • [INSPECTIT-435] - TimeLineControl throws null pointer exception
  • [INSPECTIT-436] - Exception starting DVD demo application on JBoss
  • [INSPECTIT-450] - Exc. Duration in method view does not match the duration in tree view
  • [INSPECTIT-468] - Problem with locate in call hierarchy of two identical SQLs
  • [INSPECTIT-469] - Update Quartz library
  • [INSPECTIT-474] - Package name trim() should be used
  • [INSPECTIT-478] - Clear buffer on the UI clears data in all views
  • [INSPECTIT-479] - Package name default generates different method idents
  • [INSPECTIT-482] - Navigate to Invocations not always possible
  • [INSPECTIT-486] - Clearing Buffer while indexing could break process
  • [INSPECTIT-487] - Annotation matcher instruments wrong classes
  • [INSPECTIT-489] - Deleting localhost from list of CMRs not possible
  • [INSPECTIT-500] - NPE on opening a grouped exception
  • [INSPECTIT-508] - NPE on exception view in invocation detail
  • [INSPECTIT-509] - Using -Xbootclasspath in combination with Java6 and core class instrumentation results in NullPointerException
  • [INSPECTIT-515] - Exception when navigating from Grouped exception View to Invocations
  • [INSPECTIT-519] - Support of WebSphere jdbc
  • [INSPECTIT-520] - IBM JDK 1.5 does not provide a native Instrumentation Implementation
  • [INSPECTIT-522] - Core instrumentation + Annotation matcher 
  • [INSPECTIT-523] - ClassPool problems with core instrumentation
  • [INSPECTIT-533] - Annotation matcher: change from getClassFile to getClassFile2
  • [INSPECTIT-539] - Exclusive times representation missing
  • [INSPECTIT-549] - CMR won't start because of the '-server' JVM agrument

New Feature

  • [INSPECTIT-231] - Quick link between "All invocations" and "only invocations with this start method"
  • [INSPECTIT-338] - Apply navigation to call hierarchy for SQL, Exception and Methods within the invocation sequence view
  • [INSPECTIT-439] - URL based View
  • [INSPECTIT-492] - Option to limit size of captured SQL and Exception strings
  • [INSPECTIT-501] - Instrumentation of Core Classes

Task