Using and Extending the Test and Performance Tools Platform (TPTP)



Similar documents
Instrumentation Software Profiling

Profiling and Testing with Test and Performance Tools Platform (TPTP)

How To Write A Test Program For Eclipse (Eclipse)

ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

Leveraging the Eclipse TPTP* Agent Infrastructure

Community Systems Management Open Source COSMOS Creation Review

How To Install An Aneka Cloud On A Windows 7 Computer (For Free)

IBM Tivoli Composite Application Manager for WebSphere

EMC Documentum Composer

IBM WebSphere Server Administration

WebSphere Server Administration Course

Tutorial: Load Testing with CLIF

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

Exam Name: IBM InfoSphere MDM Server v9.0

Oracle WebLogic Server 11g Administration

How To Use Java On An Ipa (Jspa) With A Microsoft Powerbook (Jempa) With An Ipad And A Microos 2.5 (Microos)

How To Improve Performance On An Asa 9.4 Web Application Server (For Advanced Users)

IBM InfoSphere MDM Server v9.0. Version: Demo. Page <<1/11>>

SOFTWARE TESTING TRAINING COURSES CONTENTS

IBM Rational Web Developer for WebSphere Software Version 6.0

Application. 1.1 About This Tutorial Tutorial Requirements Provided Files

Monitoring HP OO 10. Overview. Available Tools. HP OO Community Guides

Listeners. Formats. Free Form. Formatted

DiskPulse DISK CHANGE MONITOR

InfoSphere Master Data Management operational server v11.x OSGi best practices and troubleshooting guide

REQUIREMENTS AND INSTALLATION OF THE NEFSIS DEDICATED SERVER

MD Link Integration MDI Solutions Limited

Tool - 1: Health Center

NS DISCOVER 4.0 ADMINISTRATOR S GUIDE. July, Version 4.0

Application Servers - BEA WebLogic. Installing the Application Server

Orchestrating Document and Media Management using CMIS

Oracle Service Bus Examples and Tutorials

A standards-based approach to application integration

Developing Web Services with Eclipse

Consuming and Producing Web Services with WST and JST. Christopher M. Judd. President/Consultant Judd Solutions, LLC

User's Guide - Beta 1 Draft

Also on the Performance tab, you will find a button labeled Resource Monitor. You can invoke Resource Monitor for additional analysis of the system.

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Rational Application Developer Performance Tips Introduction

Tutorial: BlackBerry Object API Application Development. Sybase Unwired Platform 2.2 SP04

Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus

User's Guide - Beta 1 Draft

Portal Factory CMIS Connector Module documentation

Enterprise Manager Performance Tips

FioranoMQ 9. High Availability Guide

NetBeans Profiler is an

JBoss AS Administration Console User Guide. by Shelly McGowan and Ian Springer

PASS4TEST 専 門 IT 認 証 試 験 問 題 集 提 供 者

WebSphere Business Monitor

Web Dashboard User Guide

Extend WTP Server Tools for your application server. Tim deboer Gorkem Ercan

WebLogic Server: Installation and Configuration

Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus

ActiveVOS Server Architecture. March 2009

Simba XMLA Provider for Oracle OLAP 2.0. Linux Administration Guide. Simba Technologies Inc. April 23, 2013

HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS

BPM Scheduling with Job Scheduler

Apache Jakarta Tomcat

SOA management challenges. After completing this topic, you should be able to: Explain the challenges of managing an SOA environment

Java VM monitoring and the Health Center API. William Smith

Testing and Deploying IBM Rational HATS 8.5 Applications on Apache Geronimo Server 3.1

Java Management Extensions (JMX) and IBM FileNet System Monitor

GlassFish v3. Building an ex tensible modular Java EE application server. Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc.

VX Search File Search Solution. VX Search FILE SEARCH SOLUTION. User Manual. Version 8.2. Jan Flexense Ltd.

New Features in Neuron ESB 2.6

Database Studio is the new tool to administrate SAP MaxDB database instances as of version 7.5.

Workshop for WebLogic introduces new tools in support of Java EE 5.0 standards. The support for Java EE5 includes the following technologies:

Take full advantage of IBM s IDEs for end- to- end mobile development

IBM Tivoli Composite Application Manager for WebSphere

A QUICK OVERVIEW OF THE OMNeT++ IDE

Tutorial: BlackBerry Application Development. Sybase Unwired Platform 2.0

RTI Quick Start Guide for JBoss Operations Network Users

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner

WebSphere Business Monitor V7.0: Clustering Single cluster deployment environment pattern

Oracle WebLogic Server 11g: Administration Essentials

IBM WebSphere Message Broker Message Monitoring, Auditing, Record and Replay. Tim Kimber WebSphere Message Broker Development IBM Hursley Park, UK

Web services with WebSphere Studio: Deploy and publish

Collaborative Open Market to Place Objects at your Service

Netwrix Auditor for Windows Server

DBA xpress Product Overview

D83167 Oracle Data Integrator 12c: Integration and Administration

Chapter 1 - Web Server Management and Cluster Topology

Oracle Data Integrator 11g New Features & OBIEE Integration. Presented by: Arun K. Chaturvedi Business Intelligence Consultant/Architect

L01: Using the WebSphere Application Server Liberty Profile for lightweight, rapid development. Lab Exercise

Terms and Definitions for CMS Administrators, Architects, and Developers

FileNet System Manager Dashboard Help

Software Development Kit

Siebel Application Deployment Manager Guide. Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013

CLC Server Command Line Tools USER MANUAL

Site Configuration SETUP GUIDE. Windows Hosts Single Workstation Installation. May08. May 08

Setting Up a Unisphere Management Station for the VNX Series P/N Revision A01 January 5, 2010

D5.3.2b Automatic Rigorous Testing Components

SCA-based Enterprise Service Bus WebSphere ESB

Netwrix Auditor for SQL Server

IBM Rational Asset Manager

Transcription:

Tutorial #2 Using and Extending the Test and Performance Tools Platform (TPTP) Eugene Chan IBM Rational Software Paul Slauenwhite IBM Rational Software 2005 IBM Corp; made available under the EPL v1.0 August 29, 2005

Agenda Introductions Speakers Participants What is Problem Determination? Problem Statements Taxonomy Tooling Benefits Eclipse TPTP Project Mandate Participants Composition Architecture Eclipse Modeling Framework 2 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agenda (continued) TPTP EMF Data Models Trace Log Statistical Agent Controller Architecture Trace Agent Logging Agents Statistical Agents Common Base Event Design Generic Log Adapter Architecture Adapters 3 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agenda (continued) Logging Scenarios Architecture Logging Facility Support Log and Trace Analyzer Architecture Importing and Monitoring Profiling and Logging Perspective Symptom Databases Analysis Correlation 4 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agenda (continued) Demonstrations Profiling and Logging Perspective Launch Configuration Attaching to a Java Application Profiling Options Profiling Views Preferences Statistical Monitoring and Analysis Statistical Analysis Views Generic Log Adapter Logging Scenarios Log File Parsers Log View Log Analysis Log Correlation 5 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agenda (continued) Conclusion Project Extensibility Future work Resources Questions, Answers and Discussion IBM Sessions at EclipseWorld Appendix 1- Java Logging XML Log File Appendix 2- logger.dtd 6 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Introductions - Speakers Eugene Chan Software Developer IBM Rational Software ewchan@ca.ibm.com Paul Slauenwhite Software Developer IBM Rational Software paules@ca.ibm.com 7 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Introductions Participants Name and city. Company or academic institution. Eclipse and TPTP experience. Tutorial objectives. Any other interesting information? 8 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

What is Problem Determination? - Problem Statements Modern computing systems are becoming more complex with the rapid development of raw computing power (e.g. processing speed and storage capabilities) and distributed technologies. Computing systems are more fragmented with the proliferation of distributed technologies, such as the Internet. Numerous heterogeneous products and applications are now required to build modern computing systems. Pervasive and ubiquitous computing devices pose new management complexities. Shortage of highly skilled workers to manage and maintain complex heterogeneous computing systems. Problems are growing exponentially due to an equally increasing use of complex computing technology. 9 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

What is Problem Determination? - Taxonomy Monitor, evaluate, detect, analyze, correlate, resolve and diagnose the root cause of run-time problems in complex end-to-end heterogeneous computing systems. Most computing systems generate log and/or trace data which is a rich source of system activity and control flow information. Useful for detecting and resolving run-time problems such as configuration errors, performance degradation, exception states, resource starvation, security failures, communication delays and deadlocking. However: Typically persisted in large (MB GB) files. Standards and terminology formats vary between vendor, product and version. Varying levels of detail (e.g. terse and obscure). Distributed systems scatter files across the network. Textual viewing and manual searching or proprietary tooling. No detailed explanation or solutions for records. No relationship between records and files. 10 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

What is Problem Determination? - Tooling Centralized tooling to collect and consolidate log and trace data from disparate systems into a single management tool. Based on open standards to be useful and to promote widespread adoption in a heterogeneous environment. Promotes a common event format for vendor, product and version-specific log and trace formats. Consumes a common event format for viewing, navigating, sorting, filtering and searching large amounts of log and trace data. Correlates log and trace records to determine sets of related events thereby visualizing control flow across distributed systems. Analyzes log and trace records to provide explanation and possible solutions to known problems. 11 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

What is Problem Determination? - Benefits Extensible open-source tools and technology with consistent and public interfaces and points of control for industry-wide acceptance, agreement and adoption. Assist end-users, administrators, field service engineers and developers in decreasing the time required for debugging, maintaining and securing complex computing systems. Increase return on administration investment by reducing maintenance costs and improve asset utilization. More efficient systems to better focus resources on business processes. Rapid problem determination translates into increased system stability, security, availability, resiliency and overall QoS. Problem Determination = Costs + Stability 12 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Eclipse An open-source project dedicated to provide an universal, robust, fullfeatured and commercial-quality platform written in Java for developing Integrated Development Environments (IDEs). Founded by IBM and other industry leaders in November 2001. Composed of projects, each of which is overseen by a Project Management Committee (PMC) and governed by its Project Charter. Each project is composed of its own subprojects and is licensed under the Eclipse Public License (EPL) starting in 2005. 13 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP Project - Mandate Started in 2002 as an Eclipse tools subproject named Hyades. Promoted in 2005 to an Eclipse project and renamed as the Test and Performance Tools Platform (TPTP) project. Open-source platform for Automated Software Quality (ASQ) tools including reference implementations for testing, tracing and monitoring software systems. Extensible framework and infrastructure that embraces automated testing, trace, profiling, monitoring, and asset management. Includes an unified data model, normative user experience and workflow and an united set of APIs and reference tools that work consistently across a range of targets. Principles: Extension of the Eclipse Value Proposition Vendor Ecosystem Vendor Neutrality Standards-Based Innovation Agile Development Inclusiveness & Diversity 14 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP Project - Participants Alphabetical order: Computer Associates Compuware FOKUS IBM Intel OC Systems SAP Scapa Technologies 15 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP Project - Composition TPTP is composed of 4 projects: Platform Test Trace and Profiling Monitoring Each project is divided into technology domains: UI Analysis EMF Model Collection Control Communications Execution Agents/Events Doc Each technology domain divided into components, each with an assigned committer. 16 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP Project - Architecture Presentation System XMI Runtime Monitor / log Real Time Export Eclipse TPTP UI EMF Data Models Test Trace Analysis And Profiling Trace Test Creation and Execution Log Artifact Management Standard Widgets and Core Plug-ins Reference Perspectives And Workflow Statistical Eclipse Platform Agent Control Interface Data Loader Distributed Control Framework Distributed Data Collection Framework Agent Control Interface Data Collection Interface Target System Injection Correlation Data Collection Test Engine Testability Interface Application Trace Collection Log Collection Execution Environment JVMPI Monitor JVMTI Monitor System Performance Monitor TBD 17 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Eclipse Modeling Framework (EMF) Framework and code generation facility for designing and implementing applications based on a structured data model. Data models are used to describe data objects, attributes and relationships. Data models may be designed using annotated Java, XML, or UML class diagrams and converted to an EMF model specification defined in XML Metadata Interchange (XMI). The XMI model specification is used to generate the Java implementation classes for the data model, a set of adapter Java classes that enable viewing and command-based editing of the data model, and a basic editor UI. The generated Java implementation classes are used to instantiate, load and persist inmemory data models. A resource persistence layer is provided to permit file system abstractions, such as a relational database. Provides a framework for the mechanical creation of data models that are the foundation for interoperability with other EMF-based applications. 18 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP EMF Data Models EMF data models are used in TPTP as an integration point. TPTP UI is build on the TPTP EMF data models. TPTP contains five EMF data models: Trace Log Statistical Test Behavioural Execution History Data models are populated by model loaders consuming structured XML fragments originating from a variety of sources. 19 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP EMF Data Models Trace Used to persist stand-alone application and distributed system trace data. Trace data consists of structured local or distributed execution and heap information (e.g. Java process, thread, class and method entry/exit with object instance and time). Hierarchal data model capturing interaction at various levels of the execution stacks and heap (e.g. method X in class Y on thread Z). Provides framework for capturing statistical snapshot information (e.g. method invocation counts). Populated by local and remote profiling (e.g. JVMPI) instrumentation and distributed tracing facilities. 20 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP EMF Data Models Log Used to persist problem determination data such as logging events and messages. Defined by the Common Base Event v1.0.1 specification: A common and standardized taxonomy for events occurring in hardware and software. Unified format and terminology for the consistent interpretation of problem determination data to circumvent varying vendor, product and version representations. Hierarchal data model capturing textual message(s) and metadata, such as: Time stamp Source component Situation Severity Populated by local and remote logging facilities, Logging Agents and batch importing of log files. 21 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

TPTP EMF Data Models Statistical Used to persist arbitrary numerical data over time. Hierarchal data model capturing structured statistical data defined by descriptors. Descriptors may contain child counter descriptors. Descriptors contain snapshot observations that contain actual typed statistical data: Discrete (integer/time) Contiguous (float/time) String (String/time) 22 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Terminology: Host process: The process that contains the application under test. Agent: A reusable binary file that provides services to the host process, and more importantly, provides a portal by which application data can be forwarded to attached clients. Client: A local or remote application (eg Eclipse Workbench) that is the terminal destination of host process data that is externalized by an agent. 23 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Standalone component independent of the TPTP workbench. Flexible daemon that resides on each local or remote deployment host. Used to launch new processes and attach to agents that coexist within processes. Interacts with processes only on the same deployment host. Provides extensible agent architecture for control capabilities and native data collection. Agent hosted within the Agent Controller may communicate data back to monitoring clients (e.g. TPTP client). TPTP client provides launch, attach, communication and data modelling loading functionality. 24 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Architecture Remote TPTP Client Local TPTP Client Socket RAC Config Sh.Mem Socket Bindings DAT CMD Agent(s) 25 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Architecture TPTP Client Results Views Control views Channel Reader Command Messages Data Messages Socket RAC Config Tools Loaders Sh.Mem Socket Bindings EMF model DAT CMD Storage Agent(s) 26 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Architecture Supported platforms include: AIX-RPC HPUX-RISC LINUX-IA32 LINUX-PPC64 LINUX-ZSERIES OS/400-ISERIES SOLARIS-SPARC WINDOWS-IA32 Z/OS-ZSERIES 27 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Trace Agent Java Virtual Machine Profiling Interface (JVMPI) agent implementation for profiling local or remote Java applications from a local TPTP workbench to capture and record an application's behavior. Used for performance details such as classes or methods responsible for the poor execution performance as well as to analyze application heap and locate memory leaks. Emits trace XML fragments based on a structured Event Specification for Java Profiling (trace.xsd). May be launched from the TPTP workbench or invoked using the -Xrun JVM command line option. A trace XML loader at the client side receives and parses the trace XML fragments returned from any agent. 28 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Logging Agents XML message-based agent for real-time monitoring of message generating facilities (e.g. loggers). Extensible architecture for crafting proprietary Logging Agents: Defined APIs and programming model. C implementation with a Java wrapper for supporting C/++ and Java run-times. TPTP provides Logging Agent support for several popular Javabased logging and tracing facilities. 29 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Agent Controller Statistical Agents XML message-based agent for real-time monitoring of operating systems, web servers, database servers and application servers: Windows System Performance Data (Perfmon) Linux System Perfmon Data JBoss Application Server JMX Data JOnAS Application Server JMX Data Apache/IHS server-status Data MySQL Database Table and Variable Data Emits statistical XML fragments based on a structured schema (statistical.xsd). Examples of operating system metrics include: CPU usage. Network activity. Disk activity. Memory usage. Views to effectively visualize the large amount and varying types of statistical data in real-time. Extensible architecture for crafting proprietary Statistical Agents: Defined APIs and programming model. 30 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Common Base Event Open-source specification (OASIS) to provide a common and standardized taxonomy for events occurring in hardware and software. Unified format and terminology for the standardized exchange and consistent interpretation of problem determination data to circumvent varying vendor, product and version representations. Provides a mutual format for event data enabling the interoperability of problem determination technologies and tooling thereby decreasing the costs of managing complex computing systems. Designed to abstractly describe all events within a multi-component system but sufficiently granular to describe any occurrence or incident. Common Base Event XML schema defines the overall structure of the event, format of each property and all mandatory properties for completeness. TPTP provides EMF consumer (e.g. model artifacts) Java, EMF producer (e.g. native logging) Java, non-emf Java and C/C++ implementations. 31 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Common Base Event - Design Events consist of message(s) and metadata resulting from an occurrence or situation including autonomic, logging, tracing, management and business situations. Events are derived from situations that are based on a structured 3-tuple format: Situation data, the properties describing the situation including correlation information. Component impacted by a situation, or the source Component observing a situation All other required and optional event properties provide context for the situation. 32 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Common Base Event - Design 33 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Generic Log Adapter Tooling that transforms log and trace data in proprietary formats into the Common Base Event format for use as a problem determination resource. Assists developers in adapting log and trace data to the Common Base Event format without rewriting existing applications. Originated from IBM Research as a mechanism to cheaply enable Common Base Event compliance in legacy computing systems. 34 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Generic Log Adapter - Architecture Based on a pluggable pipe and filter architecture. Filters or components are organized by contexts which are associated with one specific data set. Scalable to support large amounts (MB GB) of log and trace data. Four modes of operation: Batch or continuous. Static or rules. 35 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Generic Log Adapter Adapters Transforms are defined in adapter files: Contains one or more contexts and the components for each context. Stored as XML based on a defined schema. Parsing component incorporates mapping proprietary log and trace record properties to Common Base Event properties using mapping rules. Rules are defined using static strings or regular expressions (e.g. Perl). Static Java parsers may be used to parse data. Adapter Configuration Editor provides a tool to write, debug and test adapter files using a template log file. Adapter files may be mechanically converted into Log File parsers for use in the Log and Trace Analyzer. 36 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Logging Scenarios New or redesigned systems may be instrumented to natively generate Common Base Events using the producer Java implementation. However: Java-based logging and tracing facilities often enforce proprietary record formats. No existing integration with tooling for real-time monitoring of loggers and logged records. Hyades provides the following support for several popular Java-based logging and tracing facilities: Common Base Event logging. Logging Agent sinks. Filtering. Configuration. Formatting. 37 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Logging Scenarios - Architecture Server Client 38 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Logging Scenarios - Logging Facility Support TPTP provides Common Base Event and Logging Agent standalone and plug-in support for the following popular logging facilities: Jakarta Apache Commons Java Logging (JSR-047) Jakarta Apache Log4J Extensible architecture for crafting proprietary Logging Agents: Defined APIs and programming model. 39 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer Eclipse-based tooling for collecting, persisting, viewing, navigating, sorting, filtering and searching EMF model data. Permits users to monitor, evaluate, detect, analyze, correlate, resolve and diagnose the root cause of run-time problems in complex end-to-end heterogeneous computing systems. Extensible architecture to allow vendor and product specific EMF model views and problem determination tasks. 40 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer - Architecture Server Client 41 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer - Importing and Monitoring Tooling for batch importing of log and trace files into the Common Base Event EMF models using Generic Log Adaptor static and rules parsers. Log and trace files may be imported from the local and/or remote machine. Real-time monitoring of Logging Agents to populate Common Base Event EMF models. Jakarta Apache Commons Java Logging (JSR-047) Jakarta Apache Log4J Proprietary Logging Agents Extensible architecture to allow vendor and product specific log and trace file parser and Logging Agents. 42 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer - Profiling and Logging Perspective Set of views to display log, trace, statistical and profiling EMF model data in a well organized format. Hierarchically organized by folder, monitor, host, process and varying agents. Log view provides a nested tree-like display for viewing, navigating, sorting, filtering and searching for large amounts of log and trace data. UML Sequence Diagram view provides a graphical representation of interactions. Statistical console provides a visual display with graphing capabilities for the statistical EMF model. Extensible architecture to allow users to define vendor and product specific views. 43 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer Symptom Databases A database consisting of matching patterns indicating known problems, explanations and resolution steps. Persisted as an XML file with a defined schema. Crafted using the Symptom Database Editor in the Log and Trace Analyzer. Vendors and organizations may provide multiple hierarchal symptom databases based on logical or business divisions. Local and remote (FTP/HTTP) importing functionality to ensure content freshness. 44 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer - Analysis Allows users to easily detect and solve problems that have already been previously encountered. Analysis consists of lexicographically comparing varying Common Base Event properties with match patterns in one or more symptom databases. Extensible architecture to allow users to define vendor and product specific analysis engines. 45 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log and Trace Analyzer - Correlation Computing system maintainers require a detailed understanding of an entire computing system in order to detect and resolve cascading problems. Correlation determines one or more sets of related events to visualize control flow within and between computing systems. A correlation engine or schema associates varying Common Base Event properties based on a predetermined criteria (e.g. time). Extensible architecture to allow users to define vendor and product specific correlation engines or schemas. 46 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Demonstrations Attendees are not required to have a computer. Configuration for attendees with computers: Eclipse v3.1.0 TPTP v4.0.0 EMF v2.1.0 XSD v2.1.0 JRE v1.4.2 or above Agent Controller v4.0.0 http://www.eclipse.org/tptp/ >> Latest Downloads >> 4.0.0 See the Requirements section for the Hyades dependencies. See the Related Documents section for the release notes and installation guide. 47 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Demonstrations Application used for the demonstrations consists of a simple multi-threaded HTTP proxy server. Architecture of the simple multi-threaded HTTP proxy server follows a dispatcher and worker pattern. Dispatcher threads listen to one or more ports on a given host (e.g. local host). Worker threads handle the individual HTTP requests for a given dispatcher. Configured by the server.properties configuration file. 48 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling and Logging Perspective The profiling tools available in the Profiling and Logging perspective provide comprehensive information about the performance of an application The profiling tool (in this scenario i.e. Java Profiling) provides information pertaining to JVM performance Object allocations and references Garbage collection Object methods performance Object->Object interactions Thread interactions to name a few 49 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling and Logging Perspective Monitor contains processes from hosts that are bring monitored Java processes associated with a host Hosts being monitored in a profiling session Profiling agents 50 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling and Logging Perspective Profiling and Logging perspective provides resources to administering and managing profiling Profiling resources are organized to provide granularity of usage Profiling resources Project: Make a project of your profiling effort Monitor: Aggregate different processes and agents Host: The host you are profiling Process: Very simply the executing program Agent : Provides services to a process, a mechanism by which process data can be sent to (attached) clients Profiling Type: Group profile data collection 51 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling and Logging Perspective - Profiling Monitor View A Profiling session creates numerous resources Administer and Analyze Profiling activity Object Control: Choice of action depending on the type of the object Start and Stop the monitoring on an agent Attach and Detach the agent from process Terminate a process Collect object reference and Run GC on a process Context menu is resource-sensitive 52 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling and Logging Perspective - Profiling Monitor View Project: Container of the profiling resources Monitor: A logical container for the profiling information that is collected from a group of agents. The views at the monitor level show data from these agents. Monitors are useful for aggregating processes and agents from a distributed application Host: Owns the processes that are profiled. A host runs processes. You can specify a host either by its name or by its IP address Process & Agent: In the Agent Controller architecture model, an agent is a binary file that provides services to the host process by which application data can be transferred to attached clients 53 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Launch Configuration Profiling Tool provides the ability to attach to a running application or to launch an application for profiling with launch configurations Attaching an application means that a monitor is created to contain the results observed by an associated agent Launch a process means that the process is started a process with an agent associated to the process 54 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Launch Configuration - Configurations Attach Java Process: local or remote External Java Application: local or remote Java Applet : workbench (local) Java Application : workbench (local) Eclipse Application : local Other launch configurations: for Statistical data Host J2EE App Server for Test URL, JUnit, Manual 55 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Launch Configuration - Configuration tabs Each type of launch configuration defines a group of tabs that collect and display information about the configuration Tabs for profiling: Host tab : defines the location of the process to be launched or attached Agents tab : used for attach launch configurations, list the agents available for attach Profile tab : defines detail of data collection on the profile process 56 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Launch Configuration - Host tab 57 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Launch Configuration - Agents tab 58 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Launch Configuration - Profile tab 59 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Attaching to a Java Application Attaching to a Java Application Local Java Application Remote Java Application Attach to a running application or to launch an application for profiling. Attaching : Gather data observed by an associated agent. Launching : the process is started with an agent associated to the process. 60 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Attaching to a Java Application What is happening? A logical representation of the Java process is created in the Profiling Monitor view The process object i.e. logical representation of the Java process, is identified both by name and an ID number (PID) that appears in the view along with the associated agents 61 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Attaching to a Java Application 62 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Attaching to a Java Application Attach to the java process and start monitoring Start a java program with the profiling agent java -XrunpiAgent:server=enabled <<test>> 63 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Attaching to a Java Application - Local Profiling and Logging perspective to attach to a running process locally 64 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Attaching to a Java Application - Remote Required to Install Eclipse Data collection engine on the remote machine Host 2 Host 1 Launch Attach 65 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Options The profiling options are used to control the type of profiling data collected Profiling Set Profiling Type Profiling Filter Profiling Limits Profile to File 66 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Options - Profiling Set and Profiling Type Specify an existing or build a set of profiling type to control the type of profiling data Pre-defined Sets: Execution history Memory analysis Method Level Coverage 67 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Options - Profiling Filter Limit the classes and method profiled Avoid unnecessary visual clutter and speed up the profiling task 68 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Options - Profiling Limits Profiling Limits page can be used to limit the amount of data collected from the application Specify the amount of data you want collected by specifying a limit on method invocations or on time. 69 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Options - Profiling File Route the profiling events to an xml file instead of the profiling views 70 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Options - Import profiling file Profiling file can be imported into workbench for visual presentation and analysis File -> Import... -> Profile File Select range of file to be imported Filtering support 71 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views Number of views to visualize and organize profiling data Memory Statistic view Execution Statistic view Coverage Statistic view Method Invocation Detail view Object Reference view Execution Flow view and table Method Invocation view and table UML2 Trace Interactions view 72 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Statistical Views Profiling Type oriented Execution Memory Coverage Drill down capability Package Class Method Instance Additional Information available on toolbar Choose columns Show deltas Show as percentage Open Source Export to HTML View shortcut on selection Selection sensitive on context menu Show Object Reference on Class Show Method Invocation on Method 73 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Method Invocation Detail View Display details on a method invocation Show invoked by and invokes information on a target method Double click on any method in views to open view, or via context menu entry Traverse invocation path by updating target method in the view. Double clicking on method interested 74 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Object Reference View Displays references by a set of objects. Examine data structures Help identify memory leaks To find unexpected references How? Collect Object References action Show reference TO or reference BY orientation 75 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Execution Flow View Give a clear global view on the overall application execution Analyze the application execution at the thread level. Threads are represented by vertical lines Execution stack goes from left to right Execution time goes from top to bottom Interactive: Zoom In/Out or Select Zoom Table format display available below the graphical presentation. 76 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Method Invocation View Graphical representation of the application execution that lets you see the method execution at the method invocation level Makes it easier to identify the execution patterns and differences between invocations of the same method Traverse between invocation Show Caller or Callee Open from any Method Selection Table format display available below the graphical presentation. 77 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Interactions Views (UML2 Trace Interactions View) The Interactions Views present execution flow of an application according to the notation defined by UML Host Interactions Process Interactions Thread Interactions Agent Interactions Class Interactions Object Interactions 78 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Enabling Graphical information Enable execution flow detail information be loaded and visualize in graphical views Execution Flow View Method Invocation View Interactions Views 79 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Profiling Views - Filtering Support Statistic table views provide filtering support Available via toolbar drop down action Filter type vs Filter Each view declares its type which is used to associate to filter type(s) Standard tab vs Advances tab Standard tab provides quick start on common attribute filtering Advances tab provides filtering support on profile attributes Default filters are available for quick start Select filter entry from drop down to apply 80 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Preferences Preferences: Customize or modify Profiling and Logging Preferences Enable or disable profiling or logging Specify the port number that the agent uses to connect to the Agent Controller If you are working with more than one machine, use Hosts to identify them To identify logging agents, use Logging Agents Associate views to Context menu of resources in the profiling monitor view 81 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Preferences 82 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Statistical Monitoring and Analysis TPTP Statistical data collection agents collects the following data: Windows System Performance Data (Perfmon) Linux System Perfmon Data JBoss Application Server JMX Data JOnAS Application Server JMX Data Apache/IHS server-status Data MySQL Database Table and Variable Data Various views available to control statistical agents and view statistical data collected: Profiling Monitor view Agent Control views. Statistical Graph Statistical Graph Summaries 83 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Statistical Monitoring and Analysis In Profiling and Logging Perspective, launch a Statistical Agent: Create a new Profiling Launch Configuration Run -> Profile Create a new Statistical configuration Specify the host to monitor Specify the agent to monitor Set additional option under configuration tabs Settings tab Destination tab Common tab Click Profile 84 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Statistical Analysis Views Profile Monitor View Selection in the Profiling Monitor view will be the input for statistical graph views Agent Control View A generic view that is able to visualize and send agent specific commands to the data collection agents Statistical Graph View Graphical representation of statistical data that is returned by the agent Statistical Graph Summaries View Allows you to set properties of the UI representation of the data lines in the Graph View where these properties include setting a line width, or colour. Agent Control, Statistical Graph and Statistical Graph Summaries Views are opened via Open With action on selection in Profiling Monitor view. 85 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Statistical Analysis Views 86 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Generic Log Adapter Creating an Adapter File Create a local Java Logging XML log file based on the content in Appendix 1. Open the Generic Log Adapter Perspective (Window >> Open Perspective >> Other >> Generic Log Adapter). Create a new simple project (File >> New >> Other >> Simple >> Project). Create a new adapter configuration file using the Adapter Configuration Editor (File >> New >> Other >> Generic Log Adapter >> Generic Log Adapter File). Select the local log file as the template log file. Start the Agent Controller (<Agent Controller install directory>/bin/raserver.exe). Run and debug the new adapter configuration file using the Adapter Configuration Editor. 87 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Generic Log Adapter 88 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Generic Log Adapter Executing the Adapter File Continuously Add a SingleFileOutputter to the Context instance to output resulting Common Base Events to a local log file. Move the following resources to the directory containing the adapter file: hgla.jar (org.eclipse.hyades.logging.adapter) hlcbe101.jar (org.eclipse.hyades.logging.core) hlcore.jar (org.eclipse.hyades.logging.core) hexr.jar (org.eclipse.hyades.execution) org.eclipse.emf.ecore_2.1.0.jar org.eclipse.emf.common_2.1.0.jar /schema/* (org.eclipse.hyades.logging.adapter) Start the Agent Controller (<Agent Controller install directory>/bin/raserver.exe). Run the following command from the directory containing the adapter file: java -DGLA_HOME=<current directory> -classpath hgla.jar;hlcbe101.jar;hlcore.jar;hexr.jar; org.eclipse.emf.ecore_2.1.0.jar;org.eclipse.emf.common_2.1.0.jar org.eclipse.hyades.logging.adapter.adapter -ac demo.adapter -cc demo.adapter Modify the local Java Logging XML log file and view the local Common Base Event log file. 89 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Logging Scenarios Instrument the demo application for logging using the Java Logging APIs (File >> New >> Example >> Logging >> JSR-047 Logging Sample). Configure the demo application s logging facility: Output to a local file. Output to the server s console. Severity filtering. XML formatting. Run the demo application and view the generated log records in the log file. 90 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Logging Scenarios Instrument the demo application to natively log Common Base Events (File >> New >> Example >> Logging >> JSR-047 Logging Sample). Configure the demo application s logging facility: Output to a Logging Agent. Common Base Event filtering. XML formatting. Run the demo application and view the generated log records in the log file. Create a customized Common Base Event Factory (File >> New >> Example >> Logging >> EMF Common Base Event v1.0.1 Sample). Write the serialized XML Common Base Events directly to a Logging Agent (org.eclipse.hyades.logging.core.loggingagent). 91 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Logging Scenarios - Monitoring Logging Agents Start the Agent Controller (<Agent Controller install directory>/bin/raserver.exe). Run the demo application. Open the Profiling and Logging Perspective (Window >> Open Perspective >> Other >> Profiling and Logging). Enable logging in the Profiling and Logging Preferences (Window >> Preferences >> Profiling and Logging). Attach to the demo s Logging Agent (Run >> Profile >> Attach Java Process >> New >> Agents). Start monitoring the demo application s Logging Agent (<right click the demo application s logger> >> Start Monitoring). Run, attach and start monitoring the Generic Log Adapter s Logging Agent using the new adapter configuration file. 92 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log File Parsers Log and Trace Analyzer Import the local Common Base Event XML log file (File >> Import... >> Log File >> Add >> Common Base Event XML log). Create a custom parser to import the Java Logging XML log file using the new adapter configuration file (File >> New >> Example >> Logging >> Log Parser Sample). Implement the org.eclipse.hyades.logging.parsers.log Parser extension point. Import the local Java Logging XML log file (File >> Import... >> Log File >> Add >> Simple Parser V1.0). Deploying the custom parser plug-in project to the Agent Controller for remote importing. Import the Common Base Event log file generated by running the new adapter configuration file using the Adapter Configuration Editor. 93 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log View Select the various imported log files and the Logging Agent in the Log Navigator View. Manipulate the log records in the Log Records pane of the Log View: Navigation. Sorting. Filtering. Searching. Export to Common Base Event XML file. Customized log views may be created to view Common Base Event model data by implementing the org.eclipse.hyades.ui.analyzerextensions extension point. 94 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log View 95 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log Analysis Create a new symptom database file using the Symptom Database Editor (File >> New >> Other >> Profiling and Logging >> Symptom Database). Deploy and import the symptom database file (File >> Import... >> Symptom Database File). Analyze the Common Base Event log records in the Log View using the default Log Analyzer (<right click a log record> >> Analyzer >> Default Log Analyzer). Create a customized Analysis Engine (File >> New >> Example >> Logging >> Analysis Engine Sample) by implementing the org.eclipse.hyades.analysis.engine.loganalyzer extension point. Analyze the Common Base Event log records in the Log View using the customized Analysis Engine (<right click a log record> >> Analyzer >> Demo Analysis Engine). 96 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log Analysis 97 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log Correlation Create a log correlation for the Common Base Event log records in the Log View using the Time correlation engine (File >> New >> Other >> Profiling and Logging >> Log Correlation). View the time-based log correlation in the UML 2 Log Interactions View (<right click log correlation> >> Open With >> Log Interactions). Create a customized Correlation Engine (File >> New >> Example >> Logging >> Log Correlator Sample) by implementing the org.eclipse.hyades.logc.loginteractionview extension point. Create a log correlation for the Apache log files and the Common Base Event log records in the Log View using the customized correlation engine (File >> New >> Other >> Profiling and Logging >> Log Correlator Sample). Import the Apache log files (access.log and error.log). View the customized log correlation in the UML 2 Log Interactions View (<right click log correlation> >> Open With >> Log Interactions). Open the Apache Log Correlation/Analyzer Sample (File >> New >> Example >> Logging >> Apache Log Correlation/Analyzer Sample). 98 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Log Correlation 99 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0

Conclusion TPTP Logging and Monitoring Tools provide a centralized, open-source and extensible mechanism for end-users, administrators, field service engineers and developers to decrease problem determination costs and improve system quality. Collects and consolidates log and trace data from disparate systems into a single management tool. Common event format for vendor, product and version-specific log and trace formats. Consumes common event format for viewing, navigating, sorting, filtering and searching large amounts of log and trace data. Correlation to determine a set of related events thereby visualizing control flow across distributed systems. Analysis to provide explanation and possible solutions to known problems. 100 Using and Extending the Test and Performance Tools Platform (TPTP) 2005 IBM Corp.; made available under the EPL v1.0