ENHANCED MONITORING TOOL PROJECT Project Presentation By: David Nasi & Amitay Svetlit Supervisor:...

20
ENHANCED MONITORING TOOL ENHANCED MONITORING TOOL PROJECT PROJECT Project Presentation By: David Nasi & Amitay Svetlit Supervisor: Oved Itzhak Software Systems Lab Software Systems Lab Department of Electrical Department of Electrical Engineering Engineering Technion - Israel Institute of Technion - Israel Institute of Technology Technology

Transcript of ENHANCED MONITORING TOOL PROJECT Project Presentation By: David Nasi & Amitay Svetlit Supervisor:...

ENHANCED MONITORING ENHANCED MONITORING TOOL PROJECTTOOL PROJECTProject Presentation

By:David Nasi & Amitay Svetlit

Supervisor:Oved Itzhak

Software Systems LabSoftware Systems LabDepartment of Electrical Engineering Department of Electrical Engineering

Technion - Israel Institute of Technion - Israel Institute of TechnologyTechnology

IntroductionIntroduction

Enhanced Monitoring Tool is a software solution that enables to create, use and monitor custom Performance Counters based on existing Performance Counters in a Windows platform.

The EMT is implemented with full Microsoft Management Console (MMC) integration that lets system administrators create much more flexible user interfaces and customize administration tools.

Project GoalsProject Goals Creating an infrastructure for adding and managing

customized Performance Counters with given algorithmic abilities.

Provide the ability for the custom Counters to use information from existing Counters in the Windows as an input.

Provide the ability for the standard Windows tools to consume the custom counters.

An intuitive and convenient interface for managing the custom Counters.

Integration of the interface into the Microsoft Management Console (MMC).

Solution ProposedSolution Proposed

Create new advanced system monitors (ASMs) using custom made algorithms to process data collected from existig system monitors.

The ASMs will be managed by a new MMC snap-in: EMT ("Enhanced Monitoring Tool").

Design & Software Design & Software ArchitectureArchitectureDesign Integral Parts:

AbstractASMGraphic ControlsSnap-in

Algorithms Implemented:

Sum AlgorithmSliding Window AlgorithmTotal Percentage Algorithm

Abstract ASMAbstract ASMServes as the base class for all algorithms enabling a common interface for the ASM framework by implementing InitASM & CalculateASM methods.

ASMEditConrolASMEditConrol

ASMEditConrol is an abstract class that inherits from ASMViewControl. Every ASM needs to implement this class. This control is used to edit the ASM and it allows the user to choose the needed input and the output counter.

ASMRunnerControlASMRunnerControlASMRunnerControl is a control that gives us the possibility to run/stop the performance monitor and change the sampling frequency.As can be seen algorithm parameters and input are shown in read-only mode.

Graphic Controls - Graphic Controls - ASMViewControl ASMViewControl As clearly seen the ASMEditConrol &ASMRunnerControl share a similar design, this is accomplished by inheriting from the common ASMViewControl.

Snap-inSnap-inThe main snap-in is implemented in EMTSnapIn,

when installed adds the EMT root node. Each algorithm extension implemented in AbstractEMTSnapInExtension will add its node under the root node.

AlgorithmsAlgorithms

Sum Algorithm - samples its input counters and sums their values.Sliding Window Algorithm - smoothes counters that have large spikes thus making it possible to notice trends in system performance.Total Percentage Algorithm - gives us the ratio between a total sum of counters and their respective maximum.

Sum Algorithm - Creation & Run Sum Algorithm - Creation & Run ModesModes

Sum Algorithm - Graphic Representation Sum Algorithm - Graphic Representation in Perfmonin Perfmon

Sum Algorithm - Class Sum Algorithm - Class DiagramDiagram

Sliding Window Algorithm - Creation & Run Sliding Window Algorithm - Creation & Run ModesModes

Sliding Window Algorithm - Graphic Sliding Window Algorithm - Graphic Representation in PerfmonRepresentation in Perfmon

Total Percentage Algorithm - Total Percentage Algorithm - Graphic Representation in Graphic Representation in PerfmonPerfmon

Design for extensibilityDesign for extensibility

The solution is based on the Abstract Factory pattern.

New ASM algorithm creation New ASM algorithm creation in a nutshellin a nutshellCreate new class library project.Reference ASM.dll & EMT.dllImplement AbstractASM,

ASMEditControl and AbstractEMTSnapInExtension

Specify a new GUID & Snap-in description

Compile & Run the InstallUtil.exeOpen the MMC & add the newly

created snap-in

EndEndMany thanks to our dedicated

supervisor, Oved Itzhak for his great help and support

Thanks to the software lab staff for the support (Ilana David and Victor Kulik)