Monitor Microsoft SharePoint for higher performance and availability with WildMetrix™
Maximize Microsoft SharePoint performance, availability, and reliability with WildMetrix SharePoint monitoring solutions.
Watch Microsoft SharePoint run live to find the pages and objects which are
taking longest to load or are failing. Correlate page execution with performance
counters of any tier or inter-dependencies and drill down on SharePoint's inner workings to proactively isolate issues
Benefits
of Monitoring Microsoft SharePoint with WildMetrix
Helps administrators detect problems in their Windows Server architecture
Quickly diagnose exactly where and what the problems are
Resolves the problems from a single easy-to-use interface
Gain understanding of entire Windows Server system inside and out
The Microsoft SharePoint architecture has many components and
interdependencies. Its multi-tiered capabilities
supports scaled-out applications in a distributed
environment. The same SharePoint pages can also be loaded
on multiple web servers in a load balanced
architecture to support higher volumes of
traffic.
Web
Application Analyzer
Analyze web pages from distributed servers as a single application
Locate top page errors, longest running, and top load pages
Gain understanding of entire distributed web performance inside and out
Pages calling SharePoint methods, executing sql
statements, and downloading information and files
can slow down the rest of the application.
Correlation of web pages with performance counters
helps to identify the pages which are impacting
server and application performance.
Web
Page Correlation
Identify pages impacting server performance
Identify pages that cause delays or errors when other pages are
executing (usually caused by locking)
Correlate page effect on dependant
application layer and
infrastructure
Customizable Microsoft SharePoint Dashboards
Live performance dashboards give you the performance metrics,
and events of Microsoft SharePoint in a single view with quick link
access to powerful analytical charting. Dashboards include:
ASP.NET Framework
SharePoint Data Tier
SharePoint Server Cache
SharePoint Server Disk and Network
SharePoint Server Processor and Memory
Powerful Analytics
The tools make the difference when finding the root-cause of
performance bottlenecks, application faults, and performing trend
analysis. Analytical Charting features include:
Correlation of Live or Historical Data
Drill-Down, Zoom, and Statistic Lines
OpenGL 3D Surface Analysis
Live, Second, Minute, Hourly, and Monthly Data Periods
Powerful Monitoring Solutions
Deployment of pre-built monitoring solutions is as simple as
Drag-n-Drop. Policies are customizable by adding performance
counters and setting your desired collection and retention intervals
as well as alerting rules.
The Microsoft SharePoint monitoring policy includes:
(click nodes to drill down)
WildMetrix Monitoring Policies
Microsoft Office SharePoint 2007
ASP.NET Framework
\.NET CLR Exceptions(_Global_)\# of Exceps Thrown / sec
This counter displays the number of exceptions thrown per second. These include both .NET exceptions and unmanaged exceptions that get converted into .NET exceptions e.g. null pointer reference exception in unmanaged code would get re-thrown in managed code as a .NET System.NullReferenceException; this counter includes both handled and unhandled exceptions. Exceptions should only occur in rare situations and not in the normal control flow of the program; this counter was designed as an indicator of potential performance problems due to large (>100s) rate of exceptions thrown. This counter is not an average over time; it displays the difference between the values observed in the last two samples divided by the duration of the sample interval.
\.NET CLR Loading(_Global_)\Current appdomains
This counter displays the current number of AppDomains loaded in this application. AppDomains (application domains) provide a secure and versatile unit of processing that the CLR can use to provide isolation between applications running in the same process.
\.NET CLR Memory(_Global_)\# Bytes in all Heaps
This counter is the sum of four other counters; Gen 0 Heap Size; Gen 1 Heap Size; Gen 2 Heap Size and the Large Object Heap Size. This counter indicates the current memory allocated in bytes on the GC Heaps.
\ASP.NET Applications(__Total__)\Request Execution Time
The number of milliseconds that it took to execute the most recent request.
\ASP.NET Apps v2.0.50727(__Total__)\Request Execution Time
The number of milliseconds that it took to execute the most recent request.
\ASP.NET Apps v2.0.50727(__Total__)\Requests In Application Queue
The number of requests in the application request queue.
\ASP.NET\Application Restarts
Number of times the application has been restarted during the web server's lifetime.
\ASP.NET\Requests Queued
The number of requests waiting to be processed.
\ASP.NET\Worker Process Restarts
Number of times a worker process has restarted on the machine.
SharePoint Cache
\SharePoint Publishing Cache()\Publishing cache flushes / second
The rate that we are updating the cache due to site changes.
\SharePoint Publishing Cache()\Publishing cache hit ratio
The ratio of hits to misses on the Publishing cache.
\SharePoint Publishing Cache()\Publishing cache miss count
The total number of misses on the Publishing cache.
SharePoint Data Tier
\SQLServer:Access Methods\Full Scans/sec
Number of unrestricted full scans. These can either be base table or full index scans.
\SQLServer:General Statistics\User Connections
Number of users connected to the system.
\SQLServer:Locks(_Total)\Average Wait Time (ms)
The average amount of wait time (milliseconds) for each lock request that resulted in a wait.
\SQLServer:Locks(_Total)\Number of Deadlocks/sec
Number of lock requests that resulted in a deadlock.
\SQLServer:Plan Cache(_Total)\Cache Hit Ratio
Ratio between cache hits and lookups
SharePoint Logging
\Extended:Server()\IISWebLog
The IISWeblog extended counter is a real-time provider a IIS website requests.
It is import to note that the ISAPI Logging Filter must be installed on specific devices when adding IIS counters.
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
405 Method Not Allowed
408 Request Timeout
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
W3SVC - Long Page Request Duration
\Extended:Server\EventLog
The EventLog extended counter is a real-time provider of event log data. The counter captures all events from the event logs.
Sharepoint encountered a Warning
Sharepoint encountered an Error
SharePoint Server Disk
\LogicalDisk()\Free Megabytes
Free Megabytes displays the unallocated space, in megabytes, on the disk drive in megabytes. One megabyte is equal to 1,048,576 bytes.
\LogicalDisk(_Total)\Avg. Disk sec/Read
Avg. Disk sec/Read is the average time, in seconds, of a read of data from the disk.
\LogicalDisk(_Total)\Avg. Disk sec/Write
Avg. Disk sec/Write is the average time, in seconds, of a write of data to the disk.
\PhysicalDisk(_Total)\Avg. Disk sec/Read
Avg. Disk sec/Read is the average time, in seconds, of a read of data from the disk.
\PhysicalDisk(_Total)\Avg. Disk sec/Write
Avg. Disk sec/Write is the average time, in seconds, of a write of data to the disk.
SharePoint Server Memory
\Memory\Available MBytes
Available MBytes is the amount of physical memory, in Megabytes, immediately available for allocation to a process or for system use. It is equal to the sum of memory assigned to the standby (cached), free and zero page lists. For a full explanation of the memory manager, refer to MSDN and/or the System Performance and Troubleshooting Guide chapter in the Windows Server 2003 Resource Kit.
\Memory\Free System Page Table Entries
Free System Page Table Entries is the number of page table entries not currently in used by the system. This counter displays the last observed value only; it is not an average.
Critcall low PTEs - less than 5,000
Running low on PTEs
\Memory\Pages Input/sec
Pages Input/sec is the rate at which pages are read from disk to resolve hard page faults. Hard page faults occur when a process refers to a page in virtual memory that is not in its working set or elsewhere in physical memory, and must be retrieved from disk. When a page is faulted, the system tries to read multiple contiguous pages into memory to maximize the benefit of the read operation. Compare the value of Memory\\Pages Input/sec to the value of Memory\\Page Reads/sec to determine the average number of pages read into memory during each read operation.
\Memory\Pages/sec
Pages/sec is the rate at which pages are read from or written to disk to resolve hard page faults. This counter is a primary indicator of the kinds of faults that cause system-wide delays. It is the sum of Memory\\Pages Input/sec and Memory\\Pages Output/sec. It is counted in numbers of pages, so it can be compared to other counts of pages, such as Memory\\Page Faults/sec, without conversion. It includes pages retrieved to satisfy faults in the file system cache (usually requested by applications) non-cached mapped memory files.
\Memory\Pages/sec
Pages/sec is the rate at which pages are read from or written to disk to resolve hard page faults. This counter is a primary indicator of the kinds of faults that cause system-wide delays. It is the sum of Memory\\Pages Input/sec and Memory\\Pages Output/sec. It is counted in numbers of pages, so it can be compared to other counts of pages, such as Memory\\Page Faults/sec, without conversion. It includes pages retrieved to satisfy faults in the file system cache (usually requested by applications) non-cached mapped memory files.
\Memory\Pool Nonpaged Bytes
Pool Nonpaged Bytes is the size, in bytes, of the nonpaged pool, an area of system memory (physical memory used by the operating system) for objects that cannot be written to disk, but must remain in physical memory as long as they are allocated. Memory\\Pool Nonpaged Bytes is calculated differently than Process\\Pool Nonpaged Bytes, so it might not equal Process\\Pool Nonpaged Bytes\\_Total. This counter displays the last observed value only; it is not an average.
\Memory\Pool Paged Bytes
Pool Paged Bytes is the size, in bytes, of the paged pool, an area of system memory (physical memory used by the operating system) for objects that can be written to disk when they are not being used. Memory\\Pool Paged Bytes is calculated differently than Process\\Pool Paged Bytes, so it might not equal Process\\Pool Paged Bytes\\_Total. This counter displays the last observed value only; it is not an average.
\Memory\System Cache Resident Bytes
System Cache Resident Bytes is the size, in bytes, of the pageable operating system code in the file system cache. This value includes only current physical pages and does not include any virtual memory pages not currently resident. It does equal the System Cache value shown in Task Manager. As a result, this value may be smaller than the actual amount of virtual memory in use by the file system cache. This value is a component of Memory\\System Code Resident Bytes which represents all pageable operating system code that is currently in physical memory. This counter displays the last observed value only; it is not an average.
\Paging File(_Total)\% Usage
The amount of the Page File instance in use in percent. See also Process\\Page File Bytes.
\Paging File(_Total)\% Usage Peak
The peak usage of the Page File instance in percent. See also Process\\Page File Bytes Peak.
SharePoint Server Network
\Network Interface()\Bytes Total/sec
Bytes Total/sec is the rate at which bytes are sent and received over each network adapter, including framing characters. Network Interface\\Bytes Received/sec is a sum of Network Interface\\Bytes Received/sec and Network Interface\\Bytes Sent/sec.
\Network Interface()\Output Queue Length
Output Queue Length is the length of the output packet queue (in packets). If this is longer than two, there are delays and the bottleneck should be found and eliminated, if possible. Since the requests are queued by the Network Driver Interface Specification (NDIS) in this implementation, this will always be 0.
High Network I/O
Very high network I/O
SharePoint Server Process
\Process()\IO Data Operations/sec
The rate at which the process is issuing read and write I/O operations. This counter counts all I/O activity generated by the process to include file, network and device I/Os.
This process is using more than 1000 other I/Os per second
\Process()\IO Other Operations/sec
The rate at which the process is issuing I/O operations that are neither read nor write operations (for example, a control function). This counter counts all I/O activity generated by the process to include file, network and device I/Os.
This process is using more than 1000 other I/Os per second
\Process(_Total)\% Processor Time
% Processor Time is the percentage of elapsed time that all of process threads used the processor to execution instructions. An instruction is the basic unit of execution in a computer, a thread is the object that executes instructions, and a process is the object created when a program is run. Code executed to handle some hardware interrupts and trap conditions are included in this count.
Significant Processor Use Suspected
Significant Processor Use Suspected
\Process(_Total)\Handle Count
The total number of handles currently open by this process. This number is equal to the sum of the handles currently open by each thread in this process.
\Process(_Total)\Private Bytes
Private Bytes is the current size, in bytes, of memory that this process has allocated that cannot be shared with other processes.
\Process(_Total)\Thread Count
The number of threads currently active in this process. An instruction is the basic unit of execution in a processor, and a thread is the object that executes instructions. Every running process has at least one thread.
\Process(_Total)\Virtual Bytes
Virtual Bytes is the current size, in bytes, of the virtual address space the process is using. Use of virtual address space does not necessarily imply corresponding use of either disk or main memory pages. Virtual space is finite, and the process can limit its ability to load libraries.
\Process(_Total)\Working Set
Working Set is the current size, in bytes, of the Working Set of this process. The Working Set is the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the Working Set of a process even if they are not in use. When free memory falls below a threshold, pages are trimmed from Working Sets. If they are needed they will then be soft-faulted back into the Working Set before leaving main memory.
SharePoint Server Processor
\Processor(_Total)\% Interrupt Time
% Interrupt Time is the time the processor spends receiving and servicing hardware interrupts during sample intervals. This value is an indirect indicator of the activity of devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication lines, network interface cards and other peripheral devices. These devices normally interrupt the processor when they have completed a task or require attention. Normal thread execution is suspended during interrupts. Most system clocks interrupt the processor every 10 milliseconds, creating a background of interrupt activity. suspends normal thread execution during interrupts. This counter displays the average busy time as a percentage of the sample time.
High CPU Interrupt Time
Very high CPU Interrupt Time
\Processor(_Total)\% Privileged Time
% Privileged Time is the percentage of elapsed time that the process threads spent executing code in privileged mode. When a Windows system service in called, the service will often run in privileged mode to gain access to system-private data. Such data is protected from access by threads executing in user mode. Calls to the system can be explicit or implicit, such as page faults or interrupts. Unlike some early operating systems, Windows uses process boundaries for subsystem protection in addition to the traditional protection of user and privileged modes. Some work done by Windows on behalf of the application might appear in other subsystem processes in addition to the privileged time in the process.
More than 30% CPU in Privileged Mode CPU
\Processor(_Total)\% Processor Time
% Processor Time is the percentage of elapsed time that the processor spends to execute a non-Idle thread. It is calculated by measuring the duration of the idle thread is active in the sample interval, and subtracting that time from interval duration. (Each processor has an idle thread that consumes cycles when no other threads are ready to run). This counter is the primary indicator of processor activity, and displays the average percentage of busy time observed during the sample interval. It is calculated by monitoring the time that the service is inactive, and subtracting that value from 100%.
\System\Context Switches/sec
Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another. Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service. It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches. There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval.
High Context switches/sec
Very high context switches/sec
\System\Processor Queue Length
Processor Queue Length is the number of threads in the processor queue. Unlike the disk counters, this counter counters, this counter shows ready threads only, not threads that are running. There is a single queue for processor time even on computers with multiple processors. Therefore, if a computer has multiple processors, you need to divide this value by the number of processors servicing the workload. A sustained processor queue of less than 10 threads per processor is normally acceptable, dependent of the workload.