1 2 3 4 Previous Next 45 Replies Latest reply on Oct 27, 2008 8:45 AM by Jesper Pedersen

    JBoss Profiler 2

    Jesper Pedersen Master

      JBoss Profiler 2 will be a 100% Java based profiler capable of profiling Java Enterprise 5 applications.

      The profiler will use the java.lang.instrument API to hook into method invocations of the classes selected in the configuration.

      Overview:


      * 100% Pure Java

      x Memory storage for snapshots
      x File storage for snapshots


      * Integration with JBoss Enterprise Middleware Suite (JEMS)

      x Ability to change configuration at run-time


      * Access through multiple protocols using JBoss Remoting

      x Socket
      x RMI
      x HTTP


      * Reports

      x Overview
      x Classes
      x Hotspots
      x PerThread
      x PerClass


      * Able to specify method visibility

      x Global
      x Package
      x Class


      * Component identification

      x Plain Old Java Object (POJO)
      x java.lang.Throwable
      x Enterprise JavaBean: Entity
      x Enterprise JavaBean: Session
      x Enterprise JavaBean: Message
      x Servlet
      x Servlet filter
      x JavaServer Pages
      x JMX MBean
      x JavaServer Faces Converter
      x JavaServer Faces Managed Bean
      x RMI: Remote
      x RMI: Server
      x CORBA: Object
      x CORBA: Servant
      x Other: Using component identification plugins


      * Client

      x Command line
      x Seam web client
      x Administration console



      The profiler is split into the following components:

      * Agent : Collects the profiling information
      * Shared: Shared classes between the agent and clients
      * Connectors: Classes needed for communication
      * AS: Classes needed for AS integration
      * Client: Client implementations


      The API between client and agent:

      * startProfiler: Start the profiler
      * stopProfiler: Stop the profiler
      * snapshot: Take a snapshot
      * getSnapshot: Get a snapshot
      * listSnapshots: List snapshots
      * clearSnapshots: Clear snapshots
      * gc: Trigger garbage collection
      * enable: Enable the profiler
      * disable: Disable the profiler
      * load: Load a snapshot
      * save: Save a snapshot


      Additional client functionality:

      * Snapshot difference
      * Call-stack analyzer


      The profiler targets JBoss Application Server 4.2 and 5.0, since it requires a Java 5 run-time environment. The profiler must also be able to profile standalone applications or frameworks.

      A Proof-of-Concept has been implemented along these lines.

        1 2 3 4 Previous Next