Welcome To JR PerfMon...It's Free...It's Simple...It Works. 
Nov 10, 2006
No Guarantees are Expressed or Implied with the Use of This Application

For information on How to get the Source Code for this application please Email Admin@69swinger.com

Contents:
	Section 1 	Program Features
	Section 2	How To Use The GUI
	Section 3	Command Line Options
	Section 4	Known Limitations And Bugs
End Contents


Section 1  Program Features

	JR PerfMon  has been a side project for quite a while, but is finally ready.  This program has many features I had been wanting but just couldnt seem to find in a FREE software package. Uses include Process Manager, Service Control, Memory Usage, Network usage.. all possible on REMOTE COMPUTERS. End processes, start/stop services see bandwidth and memory utilization of remote PCs in Real Time.  End Processes by Name in bulk to save time. Change what PC you are monitoring on the fly.  A must Have for any IT professional


Section 2 How To Use the GUI

	The GUI is pretty self explanitory as you go. When Perfmon loads, unless specified otherwise from a command line options, it defaults monitoring itself.  The computer name will be displayed and real time mode will be checked.  Before switching to monitor a difference computer you must turn off Real Time mode. With Real time mode checked all stats on the currently page will updated about every 2 seconds, on two of the tabs this update interval is configurable.  When the Computer Name or IP address is changed real time mode must once again be enabled. Every time its enabled it checked the Computer name field to see if it has changed.

Tabs
	General:
		This is just a few general items listed about the connected PC. OS Version, Active Processes Last bootup and memory.
	Processor Util:
		This tab gives the currently processor Utilization on a Veritical Bar as well as a historical graphical analysis. The timeline of the graph is configurable by the Points per graph and interval settings. A Single left click anywhere on the graph will tell you what percentage that point represents, this will stay displayed for 2 seconds.
	Process Details:
		A Heading at the top gives you Process, Thread and Handle information.  The main grid below lists out all active processes, the Process ID, Processor Util, and memory usage. Single Click the Grid Heads to sort by different columns Ascending or decending. A double click on a row of any column is the what activates a Process kill.  A warning message will be displayed first. After that a Success or Failure message will tell you the outcome of the kill attempt.  If you click on the End Process By Name Checkbox Perfmon will scan all processes that match that name(normally it only kills the matching Process ID) and attempt to kill them one by one with your acknowledgement.  If there are multiple copies of one program open that you want to end all at once this feature and be very useful.  The interval in which this screen updates is also configurable once real time mode it turned off.  If you end a process with real time mode dissabled the grid will refresh once after that event to reflect the change.
	Services:
		The heading on this tab just displayes the number of started services vs the total number.  The grid on this page like Process details can be sorted by clicking on the column headings.  In the control column is the start/stop status in green and red. These cells can be clicked on to start and stop services. However only services in Auto can be controlled.  This page does Auto Refesh based on an interval though it may be benificial to turn REal time mode off on this tab, as services to not normally change status. Instead you may use the refresh button toward the bottom of the display grid. When starting and stopping services the grid will refresh after the action but occationally does not display the changed status...this has to do mostly with the start/stop delay of starting and when the grid refreshes its data.
	Network:
		This tab will list out all Network adapters detected to choose from to monitor.  When you switch from one interface to another the statistics displayed below will reset to 0.  The bandwidth reference will default to the Line speed of that interface. Note: Values are in Bytes not Bits per second.  This B/W reference can be changed to any value.  This is useful when the link speed is far greater than the throughput of the device you are talking with. IE there is a bottle neck somewhere down the line to the end device.  Adapter utilization is based off of this reference so Util will change proportionally.
	


Section 3 Command Line Options
	Two command line switches can be used when call this application from external sources.  These switches control what computer is to be monitored and what tab will be displayed by default.  /C: is the first switch and should be followed by the computer name or IP address of the target computer.  /T: is the second switch and should be followed by  a 1-5 corresponding to the Tab you wish to be selected.  Ordered from left to right. If /T: is found to be invalid it will default to the first page.  If parameters on both switches fail a popup message will indicate this and the program will start as normal.
	


Section 4 Known Limitations
	1) This program isn't Magic you still need administrative priviledges on the target computer to manage processes and control services.  I was going to make an imperonation function so you could pass the credentials to the target and not have to be logged on as admin, but I'm not sure how much use that would be.
	2) Monitoring Target computers over a slow link will serverly impact the refreshing performance. Perfmon was originally intended for LAN operations of 100Mb If you know you are on a slow link < 1Mb, it would be benificial to change the update interval to something slower.
	3) Perfmon utilizes WMI and to be compatible with Windows 2000 does not use a timeout.  If you try to connect to a computer that is offline the program may seem to freeze while this timeout elapses or you may get a retry/switch to Message from windows.  Please just be patient and error code will be returned telling you whats wrong.
	4) Perfmon does you resources on the computer its running on and the target. In most cases this should be minimal.  WMI queries to not support a Sort By Clause so routines in this Application do it programaticlly which is not as effecient.  If you think Perfmon itself is effecting performance try lowering the refresh intervals first.
	5) Process Statistical Monitoring is currently limited at 300 Processes. To complete Utilization stats per process usage history usage must be kept per refresh interval.

	

Thanks and Happy Monitoring!
  
