enhanced monitoring tool project

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

Upload: hada

Post on 07-Jan-2016

51 views

Category:

Documents


2 download

DESCRIPTION

Enhanced Monitoring Tool Project. Project Presentation. By: David Nasi & Amitay Svetlit Supervisor: Oved Itzhak. Software Systems Lab Department of Electrical Engineering Technion - Israel Institute of Technology. Introduction. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Enhanced Monitoring Tool Project

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

Page 2: Enhanced Monitoring Tool Project

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.

Page 3: Enhanced Monitoring Tool Project

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).

Page 4: Enhanced Monitoring Tool Project

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").

Page 5: Enhanced Monitoring Tool Project

Design & Software Design & Software ArchitectureArchitectureDesign Integral Parts:

AbstractASMGraphic ControlsSnap-in

Algorithms Implemented:

Sum AlgorithmSliding Window AlgorithmTotal Percentage Algorithm

Page 6: Enhanced Monitoring Tool Project

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

Page 7: Enhanced Monitoring Tool Project

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.

Page 8: Enhanced Monitoring Tool Project

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.

Page 9: Enhanced Monitoring Tool Project

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.

Page 10: Enhanced Monitoring Tool Project

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.

Page 11: Enhanced Monitoring Tool Project

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.

Page 12: Enhanced Monitoring Tool Project

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

Page 13: Enhanced Monitoring Tool Project

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

Page 14: Enhanced Monitoring Tool Project

Sum Algorithm - Class Sum Algorithm - Class DiagramDiagram

Page 15: Enhanced Monitoring Tool Project

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

Page 16: Enhanced Monitoring Tool Project

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

Page 17: Enhanced Monitoring Tool Project

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

Page 18: Enhanced Monitoring Tool Project

Design for extensibilityDesign for extensibility

The solution is based on the Abstract Factory pattern.

Page 19: Enhanced Monitoring Tool Project

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

Page 20: Enhanced Monitoring Tool Project

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)