Monitoring Sharepoint Performance: Strategies For Success

how to monitor sharepoint performance

SharePoint is a cloud-based content management platform that facilitates collaboration among teams from anywhere in the world. It is used by individuals and enterprises to build document and content management systems, create websites and portals, and manage information collaboratively.

SharePoint performance monitoring is crucial as it ensures that the application and its underlying servers are running smoothly and supporting business productivity. By tracking key performance metrics, administrators can detect and resolve issues before they become business-impacting problems. This includes monitoring server health, site and site collection performance, web applications and web parts, document management, database performance, request management, and user experience.

There are several tools available for SharePoint performance monitoring, including built-in features and third-party solutions, that provide insights into server health, identify bottlenecks, and help optimize the SharePoint environment.

Characteristics Values
SharePoint Farm Health Monitor the health of a group of servers that enable SharePoint services
SharePoint Sites and Site Collections Monitor site availability, growth of sites and site collections, most and least active sites
Web Applications and Web Parts Monitor content growth, number of users accessing web applications, content databases used
SharePoint Documents Monitor number of document libraries, documents and attachments and their growth over time, types of files stored and those taking up the most space
SharePoint Databases Monitor content database's disk space usage, orphaned items and the recycle bin
SharePoint Server Monitor alerts from SharePoint Health Analyzer, timer jobs, backup and restore operations
SharePoint Request Management Monitor number of connection endpoints and connections, average processing time, current requests, failed requests, throttled requests, unfinished routed requests, and last ping latency
User Experience and SharePoint Usage Analytics Monitor user experience in real time, including page load time breakdown, unique users, visitors, destinations, browsers, referrers, and Apdex score

shundigital

Monitor SharePoint server usage

Monitoring SharePoint server usage is critical to ensure the platform runs smoothly and end-users have an optimal experience. Here are some detailed steps and strategies to monitor SharePoint server usage effectively:

Understand Key Performance Indicators:

Before starting to monitor, it's essential to understand the key indicators that will tell you if a specific part of your SharePoint farm requires attention. These indicators could include page load times, database response time, CPU usage, memory availability, and more.

Use Monitoring Tools:

Microsoft provides several tools to monitor SharePoint server usage:

  • SharePoint Health Analyzer: This built-in feature analyzes and resolves problems related to security, performance, configuration, and availability. It runs predefined rules at scheduled intervals and provides explanations and links to resources if an error is detected.
  • Timer Jobs: These configurable jobs collect health data and write it to the Logging database and folder. They can be rescheduled, enabled, disabled, and run on demand.
  • Reporting: This feature allows you to configure diagnostic logging, data collection, and view health and administrative reports.
  • Microsoft PowerShell: A powerful tool to run commands and obtain specific logs for analysis.

Monitor Specific Metrics:

  • Processor Performance: Ensure processor usage doesn't remain consistently high (over 80%) to prevent issues with handling sudden surges in activity.
  • Network Interface Card: Monitor the rate of data sent and received to ensure it stays below 50% of network capacity.
  • Disk Space and Performance: Keep an eye on available disk space, disk idle time, disk read and write times, and cache performance.
  • Memory and Paging File: Monitor physical memory availability to prevent excessive use of the page file and an increase in page faults per second.
  • SharePoint Server Health: Track the overall health of the SharePoint server, including alerts from SharePoint Health Analyzer and the status of timer jobs.

Preventative Maintenance and Planning:

Regularly perform preventative maintenance to avoid problems. Create a response plan that outlines actions to take when issues occur, including troubleshooting steps, people to contact, and potential solutions.

Monitor User Experience:

Analyze the user experience of people accessing SharePoint in real time. This can help you identify potential problems with the application or hosting infrastructure. Monitor page load times, network performance, browser issues, and other factors that may impact the user experience.

By following these steps and strategies, you can effectively monitor SharePoint server usage, ensuring optimal performance and a positive user experience.

shundigital

Monitor web applications and web parts

Monitoring web applications and web parts is crucial for maintaining optimal performance and providing a seamless user experience. Here are some detailed instructions and best practices to help you monitor web applications and web parts in SharePoint:

Understanding Web Parts

Web parts are like puzzle pieces that you assemble to create a SharePoint site. They are small applications that store and display specific content, and you can mix and match them to create a customised page without coding. Web parts can display data from various sources, such as SharePoint lists, libraries, external systems, or custom applications.

Available Web Parts

SharePoint offers a wide range of built-in web parts, and you can also find third-party web parts on Microsoft 365. Here are some commonly used web parts:

  • Button: Allows you to add a button with a custom label and link.
  • Call to Action: An upgraded version of the button web part, allowing you to add a background image and a call to action text.
  • Code Snippet: Used to display code on your page, with options to configure the programming language, line numbering, and colour theme.
  • Connectors: Displays messages, alerts, and notifications from third-party services like GitHub and Trello.
  • Countdown Timer: Adds a countdown timer with a call to action button.
  • Document Library: Displays a browseable document library with permission controls.
  • Embed: Allows you to embed content from other sites, such as YouTube.
  • Events: Shows upcoming events in a modern and customisable format.
  • File Viewer: Displays files directly on the page, supporting various formats such as PDFs, PowerPoint presentations, and videos.
  • Group Calendar: Adds a Microsoft 365 group calendar to the page, making it easy for teammates to view upcoming events.
  • Hero: Found on communication sites, this web part grabs users' attention with a combination of images, links, and calls to action.
  • Highlighted Content: Dynamically displays content from a document library, sites, or site collections based on filters or custom queries.
  • Image: Allows you to add and customise images from various sources.
  • Image Gallery: Displays multiple images with captions, alternative text, and custom layouts.
  • List: Embeds a list on the page with customisation options for the title, view, and size.
  • List Properties: Shows specific properties of a list item present on the page.
  • Markdown: Adds markdown text to your page, with options for dark or light themes and preview.
  • Microsoft Forms: Embeds surveys and polls created with Microsoft Forms.
  • Microsoft PowerApps: Adds business browser apps or creative ideas without coding knowledge.
  • Microsoft Planner: Displays charts or boards from Microsoft Planner, a task management app.
  • Microsoft Stream: Embeds videos securely uploaded to Microsoft Stream.
  • News: Posts announcements, status updates, and people news, often used in communication sites.
  • Organisation Chart: Visualises the company's hierarchy using a chart.
  • Page Properties: Shows information describing the page, such as the title, product, and publisher.
  • People: Displays contact information and profile links of specific individuals.
  • Quick Chart: Creates simple column or pie charts without using external tools like Power BI or Excel.
  • Quick Links: Adds customisable links for quick access to pages, documents, images, etc.
  • Recent Documents: Shows a list of recently accessed documents by the user.
  • Saved for Later: Displays pages and documents that the user has saved for later.
  • Site Activity: Automatically shows recent activity on the site, such as new uploads, edits, and lists.
  • Sites: Acts as quick links but specifically for sites associated with a hub site or the user's recent sites.
  • Spacer: Adds white space between web parts to improve visual appeal and readability.
  • Text: Allows you to add text, tables, and images with extensive customisation options for fonts, colours, and styles.
  • Twitter: Embeds tweets from a specific user or collection.
  • Weather: Displays the weather for specified locations, with customisable temperature units.
  • World Clock: Shows the clock for different locations, including time zone differences.
  • Yammer: Integrates Yammer conversations and highlights into SharePoint.
  • YouTube: Embeds a specific YouTube video with options to adjust start time, show player controls, and enable privacy-enhanced mode.

Monitoring and Maintenance

To ensure smooth performance, IT professionals should regularly monitor farms, servers, applications, services, and overall performance. Preventive maintenance is key to avoiding problems, and a well-defined response plan will help minimise damage when issues arise. Here are some tools and best practices for monitoring:

  • SharePoint Health Analyzer: A built-in feature that analyses and resolves issues in security, performance, configuration, and availability. It provides step-by-step guidance and customisable rules.
  • Timer Jobs: Configurable timer jobs collect health data and write it to the logging folder and database for reporting. These can be rescheduled and customised but should be carefully planned to avoid overlap and performance impact.
  • Reporting: Configure diagnostic logging, data collection, and view administrative and health reports. Be mindful of disk space usage and performance implications.
  • Microsoft PowerShell: A powerful tool for monitoring, allowing you to run commands and view specific logs.
  • System Center - Operations Manager: Monitors services, devices, and operations across multiple computers in a single console, providing health, performance, and security information.
  • Event Viewer: A handy tool for troubleshooting, allowing you to filter and manage event logs, as well as create custom views.
  • SharePoint Developer Dashboard: Provides diagnostic information to analyse the

shundigital

Monitor SQL Server for disk space

Monitoring SQL Server disk space is crucial to SharePoint performance. Running out of disk space is the main reason for SQL Server outages, so it's important to keep a close eye on this.

You can use the following query to monitor free space in your SQL Server file groups, taking into account the available disk size:

> ;WITH src AS ( SELECT FG = fg.name, FileID = f.file_id, LogicalName = f.name, [Path] = f.physical_name, FileSizeMB = f.size/128.0, UsedSpaceMB = CONVERT(bigint, FILEPROPERTY(f.[name], 'SpaceUsed'))/128.0, GrowthMB = CASE f.is_percent_growth WHEN 1 THEN NULL ELSE f.growth/128.0 END, MaxSizeMB = NULLIF(f.max_size, -1)/128.0, DriveSizeMB = vs.total_bytes/1048576.0, DriveFreeMB = vs.available_bytes/1048576.0 FROM sys.database_files AS f INNER JOIN sys.filegroups AS fg ON f.data_space_id = fg.data_space_id CROSS APPLY sys.dm_os_volume_stats(DB_ID(), f.file_id) AS vs ) SELECT [Filegroup] = FG, FileID, LogicalName, [Path], FileSizeMB = CONVERT(decimal(18,2), FileSizeMB), FreeSpaceMB = CONVERT(decimal(18,2), FileSizeMB-UsedSpaceMB), [%] = CONVERT(decimal(5,2), 100.0*(FileSizeMB-UsedSpaceMB)/FileSizeMB), GrowthMB = COALESCE(RTRIM(CONVERT(decimal(18,2), GrowthMB)), '% warning!'), MaxSizeMB = CONVERT(decimal(18,2), MaxSizeMB), DriveSizeMB = CONVERT(bigint, DriveSizeMB), DriveFreeMB = CONVERT(bigint, DriveFreeMB), [%] = CONVERT(decimal(5,2), 100.0*(DriveFreeMB)/DriveSizeMB) FROM src ORDER BY FG, LogicalName;

Additionally, you can use tools like Microsoft's System Center - Operations Manager, which allows you to monitor multiple computers in a single console, to monitor disk space.

It's also important to monitor logical disk options regularly. This includes available disk space, disk idle time, disk read and write times, and cache performance. Monitoring these metrics can help you identify potential bottlenecks and prevent performance issues.

shundigital

Monitor cache performance and timer job status

Monitoring cache performance is essential to ensure that the farm cache settings are correct and that the caching is running at maximum performance. SharePoint Server 2016 provides three types of caches: the BLOB cache, the ASP.NET output cache, and the object cache. These caches improve the speed at which web pages load in the browser.

The BLOB cache is a disk-based cache that stores binary large object files used by web pages, helping them load quickly in the browser. The effectiveness of the BLOB cache can be monitored using the "Total Number of Cache Compactions" and "BLOB Cache Fill Ratio" performance monitors. A high number of cache compactions indicates that the cache size is too small for the requested data, and the cache fill ratio should ideally be above 90%.

The ASP.NET output cache stores the rendered output of a page and different versions of the cached page based on user permissions. The performance of the ASP.NET output cache can be monitored using the "ASP.NET Applications" counter group, and the ideal value depends on the usage pattern. For read-only sites, the ratio should be 1, while for read-write sites, it may be lower.

The object cache stores metadata about sites, libraries, lists, and documents used by features such as site navigation and the Content Query Web Part. It is stored in the RAM of each web server in the farm, and its effectiveness can be monitored using the "Total Number of Cache Compactions," "Publishing Cache Flushes/Second," and "Publishing Cache Hit Ratio" performance monitors. Similar to the ASP.NET output cache, the ideal value for the cache hit ratio depends on the usage pattern.

Additionally, timer jobs play a crucial role in monitoring SharePoint performance. SharePoint Server uses configurable timer jobs to collect health data, which is then written to the logging folder and the Logging database. These data are used in reports to display the health status of the farm servers. It is important to carefully plan and schedule timer jobs to avoid overlap with other timer jobs, as running them simultaneously on all servers can affect system performance.

By regularly monitoring cache performance and managing timer jobs, SharePoint administrators can ensure optimal performance and a seamless end-user experience.

shundigital

Monitor SharePoint server infrastructure

Monitoring SharePoint server infrastructure is crucial to ensure optimal performance and user experience. Here are some key aspects to consider when monitoring SharePoint server infrastructure:

  • Farm Health: A SharePoint Farm comprises front-end web servers, application servers, and a SQL server backend. It is important to track the farm inventory, server status (online/offline/upgrades), and service instances to ensure optimal performance.
  • Sites and Site Collections: Monitor the availability, growth, and usage of SharePoint Sites and Site Collections. Track the number of sites, site collections, and their activity to identify potential bottlenecks or performance issues.
  • Web Applications and Web Parts: Web applications are top-level containers in a SharePoint Farm. Monitor content growth, the number of users accessing web applications, and the number of content databases used. Identify slow web parts as they can impact the overall user experience.
  • SharePoint Documents: As the number of SharePoint users grows, the amount of documents, attachments, and content increases. Track the number of document libraries, documents, attachments, and their growth over time. Identify the types of files stored and their impact on storage space.
  • SharePoint Databases: Understand the mapping between content databases, Site Collections, and dependent sites. Monitor disk space usage, orphaned items, and the recycle bin to prevent performance issues and ensure efficient storage management.
  • SharePoint Server: The SharePoint Server is critical to the Farm's operations. Monitor alerts from SharePoint Health Analyzer, customize rules, and set up email alerts. Keep a close eye on timer jobs as they are key to running scheduled services. Utilize diagnostics through Unified Logging Service (ULS) logs to troubleshoot Farm problems.
  • Request Management: This feature manages incoming requests and routes them to the appropriate machine in the SharePoint Farm. Track connection endpoints, connections, processing time, requests (current, failed, throttled), and last ping latency to ensure efficient request handling.
  • User Experience and Usage Analytics: Monitoring user experience is vital to identify potential problems in real time. Analyze web load time, network time, server time, and content download time to pinpoint performance issues accurately. Access usage analytics to optimize and load-balance your SharePoint Farm effectively.
  • Performance Metrics: Track key SharePoint performance metrics such as requests per second, throughput, request wait time, rejected requests, CPU and memory usage, page request metrics, and the number of threads executing in SharePoint code.

Frequently asked questions

Any fault, failure or performance glitch in SharePoint operation will directly affect the end-user experience and business continuity. Common problems include slow web pages, high content growth, database connectivity failures, and authentication issues. By monitoring SharePoint performance, you can detect and diagnose anomalies and address them before they become business-impacting problems.

Here are some best practices for monitoring SharePoint performance:

- Regularly monitor health reports for your SharePoint infrastructure to ensure everything is running smoothly and no alerts have been raised.

- Check event logs and ULS (Unified Logging System) logs to flag any unusual events that may have been missed.

- Monitor SQL Server disk space to avoid a full disk, which slows down requests and affects SharePoint system performance.

- Monitor SharePoint server usage as servers affect the health of everything else in your infrastructure.

- Monitor web applications and web parts to flag slow page load times and determine the cause of delays.

- Set up alerts to notify you as soon as an issue arises or during key time periods.

- Restrict access to SharePoint servers and sites to prevent data breaches and meet compliance obligations.

- Regularly review your configurations, reports, and the system as a whole to determine if everything is functioning as it should.

Here are some tools for monitoring SharePoint performance:

- SolarWinds® Server & Application Monitor (SAM): This tool provides comprehensive server monitoring and application performance monitoring and management, including for SharePoint. It includes a dedicated SharePoint monitor tool and can be integrated with other SolarWinds tools.

- SolarWinds Access Rights Manager (ARM): This tool simplifies permissions and access management for SharePoint and helps protect data through protecting SharePoint access. It can be integrated with other SolarWinds products.

- Paessler PRTG Network Monitor: This tool offers a wide range of general network monitoring tools and specific tools for monitoring SharePoint servers. It uses "sensors" that are customizable to keep a closer eye on specific assets.

- ManageEngine SharePoint Manager Plus: This tool includes management tools, continuous monitoring for the health of SharePoint services, and useful reporting and auditing tools. It offers a personalized web demo and a free trial.

- eG Enterprise: This tool provides end-to-end visibility into your SharePoint setup, including sites, web applications, databases, services, logs, events, and content growth. It includes built-in user monitoring to measure the experience of users on your SharePoint site and can be used to automatically map your SharePoint applications and their infrastructure dependencies. It offers a free trial and a demo.

- SPDocKit: This dedicated SharePoint administration tool allows you to monitor how users interact with your SharePoint sites and keep track of resource usage as content grows and changes. It includes an interesting feature for working with SharePoint best practices and offers a free trial and a demo.

Here are some key SharePoint performance metrics to monitor:

- SharePoint Farm Health: Track the farm inventory, which servers are online, and the total service instances in the farm.

- SharePoint Sites and Site Collections: Monitor site availability and track the growth of sites and site collections.

- Web Applications and Web Parts: Monitor content growth due to web applications, the number of users accessing web applications, and content databases used. Identify slow web parts.

- SharePoint Documents: Track the number of document libraries, documents, and attachments, as well as the types of files stored and their impact on storage space.

- SharePoint Databases: Understand the mapping between the content database, Site Collection, and underlying sites. Monitor content database disk space usage, orphaned items, and the recycle bin.

- SharePoint Request Management: Track the number of connection endpoints and connections, average processing time, current requests, failed requests, throttled requests, unfinished routed requests, and last ping latency.

- User Experience and SharePoint Usage Analytics: Analyze the reasons for slow web load time and determine if there is a problem with the network, browser, server, or content download. Access usage analytics to optimize and load-balance your SharePoint Farm.

Written by
Reviewed by
Share this post
Print
Did this article help you?

Leave a comment