Monday Mar 07, 2011
Monday Sep 20, 2010
Monday Jul 26, 2010
By Jiri Sedlacek on Jul 26, 2010
The new version of the VisualVM tool is now available at https://visualvm.dev.java.net. VisualVM 1.3 introduces several new features and improvements, extends the API for plugins and fixes many bugs. Details of the changes can be found in the Release Notes. Let's look at the most interesting new features in more detail:
Sampler In The Core Tool
The sampling profiler that was originally provided as a plugin has now been integrated into the core tool. Sampler provides a lightweight and safe way to determine performance bottlenecks and memory problems and adds minimal overhead to the target application. It can be used for local and remote applications running on JVMs from different vendors and is designed to be used in production environments. Once a problem is identified, it can be further analyzed in detail using the instrumenting Profiler with appropriate settings (profiling roots, instrumentation filter). Profiler is available for local applications running on an Oracle/Sun-compatible JDK and is mostly intended as a profiling tool for Java developers.
Sampler And Profiler Presets
All the Sampler and Profiler settings can now be saved into presets and reused for further application/VisualVM sessions. This makes it much easier for developers to analyze and improve applications using the iterative profile-fix-restart approach. Moreover, a preset can be selected automatically for an application based on its main class or display name.
Remote Heap Dumps
In previous releases, the VisualVM was only able to take heap dumps of applications that were running locally. The only way to dump the heap of a remote application was by using the MBeans plugin and invoking the appropriate MBean operation (com.sun.management.HotSpotDiagnostic | Operations | dumpHeap). Starting with VisualVM 1.3, you can now use the Heap Dump actions and buttons in the tool to take a heap dump of applications that are running remotely. When invoked, a dialog is displayed that enables you to specify the full path on the remote system where you want to dump the heap. After the heap dump is created, you need to manually copy the file to your local machine and use the Load action to open and analyze the file using VisualVM.
Monitoring Remote Hosts
In every release of VisualVM it is possible to open the Local system node in the Applications view and see the machine setup (OS, architecture, number of processors etc.), actual CPU load (not available for Windows OS) and physical & swap memory usage. VisualVM 1.3 enables you to obtain this information for remote hosts as well if the host has at least one JMX-enabled application defined in VisualVM. The data is obtained using the application's JMX connection. If the "proxy" application finishes, the live data will freeze and will be updated again when another JMX-enabled application becomes available on that host.
Sorting Hosts, Applications, Coredumps And Snapshots
By default, all nodes are sorted by the insertion time. This means that the last discovered application is added to the end of the list of running applications. In VisualVM 1.3 you can newly sort applications also according to their display name or process ID, which simplifies monitoring systems that are running many Java applications. The other nodes can now be sorted either by the insertion time or by display name.
Tracer Framework And Probes
Tracer is a new framework and GUI for monitoring and analyzing Java applications. Using various types of probes, Tracer gathers metrics from an application and displays the data in a timeline. This gives a quick overview of what is happening in various parts of the application and allows you to easily determine the relations between the metrics. The values are displayed both graphically and in a table and can be exported to common formats for further processing with external tools. VisualVM 1.3 comes with several sets of Tracer probes that are distributed as plugins: Monitor Probes, JVM Probes, Jvmstat Probes, Swing Probes, JavaFX probes and DTrace Probes.
Threads Inspector Plugin
The Threads Inspector integrates with the Threads tab and allows you to analyze the stack trace(s) of one or more selected threads directly without requiring you to take and open full thread dumps. This is extremely useful when you need to quickly analyze various threading problems.
Recognizing Alternative JVM Languages
Some developers use VisualVM as a monitoring and profiling tool for alternative JVM languages that do not have dedicated tooling. VisualVM now recognizes the Clojure, Groovy, JRuby, Jython and Scala runtimes, enabling these developers to easily find the appropriate processes.
Built On NetBeans Platform 6.9
VisualVM 1.3 uses the most recent NetBeans Platform and profiler release to ensure the best performance and greatest stability. The HeapWalker now displays local variables in the Threads section of the Summary | Overview view, providing a better context for the state of the heap at the time the heap dump is created.
VisualVM 1.3 is available for download at https://visualvm.dev.java.net. You can send your comments to the VisualVM developers by using the feedback mailing list. The API documentation can be found here.
Friday Jul 09, 2010
By Jiri Sedlacek on Jul 09, 2010
The most visible change in the new Java VisualVM is Oracle rebranding which includes new splash screen and About dialog graphics, and a slightly redesigned Start Page.
Wednesday Jun 23, 2010
By Tomas Hurka on Jun 23, 2010
NetBeans IDE 6.9 has been released last week. You can download it from NetBeans site. News in this release are listed in NetBeans IDE 6.9 Release Information and you can also watch some of the new features in NetBeans 6.9 Overview video.
NetBeans Profiler has enhanced HeapWalker. Thread dump in the overview part of HeapWalker was extended to display information about local variables, which are temporary GC roots. it is possible to navigate from a local variable to its corresponding instance in the instance view and from Java Frame GC root in references view to a corresponding local variable in the thread dump. This enhancement should help users to match Java Frame GC roots to a corresponding local variable.
The list of bug fixes in NetBeans Profiler 6.9 is available here.
Wednesday Jan 27, 2010
By Jiri Sedlacek on Jan 27, 2010
This is how Oracle sees the NetBeans future in context of the other supported IDEs, as presented in Oracle + Sun Strategy Update Webcast held on January 27th, 2010:
- NetBeans continues as Lightweight IDE for Java Developers
- Focus on Java EE6, Java ME, and Scripting
- Increased focus on Mobile Development and Scripting with Dynamic Languages
- Hudson continues as Open Source Continuous Build solution
- Oracle JDeveloper continues as Oracle's Strategic Development Tool
- Integrated Development Environment for Oracle Fusion Middleware
- Strategic Development Tool for Oracle's Applications including Fusion Applications
- Oracle continues Eclipse contributions
- Oracle is a Strategic Member of Eclipse
- Continued delivery of new features in Oracle Enterprise Pack for Eclipse 11g
Update: More details on the NetBeans future are available in the Oracle Developer Tools Software Strategy Webcast.
Wednesday Jan 13, 2010
Wednesday Jan 06, 2010
By Jiri Sedlacek on Jan 06, 2010
Monday Nov 09, 2009
By Jiri Sedlacek on Nov 09, 2009
VisualVM 1.2.1 has been released to fix compatibility issues with JDK 6 Update 17 (and newer) and several other problems:
- Issue 333: HeapWalker in VisualVM doesn't work with JDK 6 Update 17+
- Issue 327: Maximum value in Monitor charts is Integer.MAX_VALUE
- Issue 332: NPE in VisualVM-Sampler
Wednesday Oct 21, 2009
By Jiri Sedlacek on Oct 21, 2009
New version of the VisualVM tool has been released. VisualVM 1.2 introduces many new features and improvements, extends the API for plugins and fixes many bugs.
These are some of the new features as mentioned in the Release Notes:
- Sampling CPU and Memory profiler plugin
- Support for multiple
jstatdconnections on a single local/remote host
- New charts with dynamic tooltips, public Charts API for plugins
- Monitor and Threads tab are saved into Application Snapshot
- Properties UI for Applications, Hosts and Snapshots, public Properties API for plugins
- Customizable proxy settings in Options dialog
- UI for customizing SSL certificates in Options dialog
- Built on NetBeans Platform & profiler 6.7.1:
- Exporting profiler snapshots to HTML, XML and CSV
- Computing retained size in HeapWalker
- OQL scripting support in HeapWalker
- Thread stack traces at the heap dump in HeapWalker
- Improved appearance on Mac OS X
Monday Oct 05, 2009
By Jiri Sedlacek on Oct 05, 2009
VisualVM 1.2 Test Build has been released at https://visualvm.dev.java.net. The developers are asking the community to help with stabilizing the release by downloading the Test Build, trying out the new features and providing feedback at email@example.com or filing bug reports into the Issue Tracker.
The major new features in VisualVM 1.2 will include a sampling CPU and memory profiler, enhanced support for
jstatd connections, redesigned charts and much more. Details about the release with a more detailed list of improvements are available in the Release Notes document.
Thursday Aug 13, 2009
Monday Jun 29, 2009
By Jiri Sedlacek on Jun 29, 2009
The profiler enhances heap analysis capabilities by supporting the OQL scripting in the HeapWalker (hit F1 in the OQL Console to get a detailed help), computing retained sizes for each instance on the heap and listing first N largest objects by retained size. The Overview tab introduces information about number of objects pending for finalization and thread call stacks at the heap dump if available.
The other major profiler improvements include support for exporting profiler results (live results, profiler snapshots, telemetry data) to CSV, HTML and XML and the self-profiling service called "Profile Me Now!" which helps to debug IDE performance problems.
To get a summary information about new profiler features and bugfixes see the NetBeans profiler 6.7 Release Notes.
Tuesday Jun 16, 2009
By Tomas Hurka on Jun 16, 2009
Apple released Java VisualVM as part of Java for Mac OS X 10.5 Update 4. To launch Java VisualVM, run
jvisualvm from the command line. This Java update is available via Software Update and manual download from http://support.apple.com/downloads/Java_for_Mac_OS_X_10_5_Update_4.
There is Getting Started with VisualVM for those those who want to get more information about the tool.
Thursday May 28, 2009
By Jiri Sedlacek on May 28, 2009
- CPU usage and GC activity graph in the Monitor tab
- Table view in the Threads tab
- Command line options:
- Compare Memory Snapshots action in the context menu
- Copy To Clipboard / Save To File buttons in the About dialog
- Monitoring IBM JVM via JMX connection
- Based on NetBeans Platform 6.5 and NetBeans Profiler 6.5
- Faster computation of references, and improved readability of path to GC root in HeapWalker
- Improved integration of the Visual GC tool
- List of bugfixes
Note that there's a Java VisualVM Blogging Contest in progress, you can win USD $500 if you try the tool and blog about your experience with it.
A blog by NetBeans Profiler & VisualVM developers.
- VisualVM 1.3.2 Released
- VisualVM 1.3.1 Released
- VisualVM 1.3 Released
- JDK 6 Update 21 Includes VisualVM 1.2.2
- NetBeans IDE 6.9 Released
- Problems Adding Remote Hosts in VisualVM on Linux/Solaris
- Oracle Plans for NetBeans IDE
- JDK 6 Update 18 Includes VisualVM 1.2.1
- VisualVM 1.2.2 Released
- VisualVM 1.2.1 Released