When a piece of software starts up, the operating system serving it creates a program to run the associated program. Some programs run one, while others are written to work continuously in a loop (daemons).
Processes sometimes hang because they are waiting for a resource that has been locked by another process. Programs are not always written to deal with every eventuality and there can be processes still live, while effectively not doing anything.
It is a good idea to look through the list of processes and kill off any that seem to have stalled and remove suspicious processes that you don’t recognize. However, this can be a time-consuming task and it is better to use an automated tool to monitor and manage processes.
Here is our list of the ten best processing monitoring tools for 2020:
- SolarWinds Server & Application Monitor EDITOR’S CHOICE A tool to monitor the health of servers and the processes that they run in support of applications. It runs on Windows Server.
- ManageEngine Applications Manager A monitor for applications that also tracks the processes that they spawn and checks the health of the host. It runs on Windows Server and Linux.
- Paessler PRTG An infrastructure monitor that covers networks, servers, and applications. The tool is able to present live data on processes. It runs on Windows Server.
- Site24x7 A cloud-based monitoring service that has a server and application monitoring module. It can monitor multiple servers on many sites and also cloud servers.
- Nagios XI An infrastructure monitor that includes server monitoring and has thousands of extensions available. It runs on Linux and can be run over a VM on top of Windows.
- Icinga 2 A fork of Nagios with a very good interface and great data visualizations. It installs on Linux.
- Zabbix An attractive user interface fronts this free monitoring system for networks, servers, and applications. It installs on Linux, macOS, and Unix.
- Datadog Infrastructure A cloud-based service that monitors networks, servers, and applications. Security addons are also available.
- Sysinternals Process Explorer A free process monitor that is straightforward and easy to use.
- Sysinternals Process Monitor An alternative to the Process Explorer and available for free from Microsoft.
Native process monitoring utilities
All operating systems include a utility that shows current processes. In Windows, this utility is the Task Manager. To get it, right-click on the Taskbar and select Task Manager from the pop-up menu that appears.
This utility list all processes in categories. The first category is Apps, which are the processes that the user sees on the screen. Background Processes are listed next. These usually serve the Apps that the user has launched and also include system utilities and ongoing tools, such as antivirus software. The last and longest list is Windows Processes, which are all of the programs that the operating system runs.
For each process, the Task Manager shows CPU usage and a percentage of total processing power. Memory and Disk Space are expressed in megabytes. Network I/O per process is displayed in Mbps and the last two columns in the Task Master window relate to the power usage of each process. All of these metrics are aggregated as a percentage of available resources.
When the user clicks on a process, an End task button at the bottom of the window becomes active.
In Linux, Unix, and macOS, users need to type in ps -aux to see all running processes. The output from this command shows:
- The user account that launched the process
- The process ID (PID)
- CPU and memory usage as a percentage of total available resources
- Virtual memory usage (VSZ)
- Resident set size (RSS)
- Terminal associated with the process (TT)
- A process status code (STAT)
- The date and time that the process started
- The command that launched the process.
The user needs to issue a kill command with the process ID in order to stop one of the processes.
The best process monitoring tools
These tools don’t just provide a monitoring view, they perform the monitoring task for you.
SolarWinds Server & Application Monitor from SolarWinds takes care of all of the supporting services that make an application work, which means the processes on the host. The tool tracks all of the services that deliver the application all the way through to the network connection. This system enables systems administrators to pinpoint the exact cause of problems with application delivery.
It doesn’t matter where the server is, the Server & Application Monitor can still watch it. The server could be a cloud resource or on a remote site; the monitor will make it seem as though it is on your local network.
Taking a different perspective, the monitor will also keep track of the overall activity of your server. It will show the resource usage of all of the applications running on it. This extends to metrics on CPU, memory, and storage space. This live data on server load is a useful tool for capacity planning and the system includes alerts for when the server is overloaded. The monitor records when the server hits its processing limits and is also able to show which applications are using the most resources.
The SolarWinds Server & Application Monitor installs on Windows Server. You can get a 30-day free trial to check out the tool.
SolarWinds Server & Application Monitor is our first choice for process monitoring because it includes server health checks as well as process monitoring. The monitor shows all of the activity on a server and also all of the supporting services for each application. This double perspective makes it very easy to spot which processes are in trouble.
Get a 30-day free trial: solarwinds.com/server-application-monitor
Operating System: Windows Server
ManageEngine Applications Manager monitors server resources as well as application performance. The system watches over key metrics on the host including the CPU, memory, and disk space used by each running process. The dashboard will show each resource of the server and rank running applications by their resource usage.
The ManageEngine service requires an agent to be installed on the monitored agent if it is off-site. This enables the system to monitor cloud servers as well. In all cases, the Applications manager operates a system of alerts. When the performance of one application falls or if one resource gets overloaded, the IT technicians will get notified by email, SMS, or chat app message, so they know to return to the monitor to sort out the problem.
ManageEngine Applications manager installs on Windows Server or Linux. You can get it on a 30-day free trial.
Paessler PRTG monitors networks, servers, and applications. The system is a collection of monitors, which are called sensors. There are sensors in the package that specifically relate to CPU, memory, and disk usage on a host and detail the processes that use up the most resources.
One sensor that is particularly important if you want to monitor processes on a Windows computer is the Windows Process Sensor. This monitor interacts with Window Management Instrumentation to present details on how all of the processes on the host are running. It details absolute working sets in bytes, private bytes, number of threads, handles, and instances, and CPU usage per process. It also totals up the memory, CPU, and disk usage of all active processes.
There are many other server monitoring sensors in PRTG and also network monitors that link activity to protocols, so it is easy to see which types of applications are creating the most network traffic.
Paessler PRTG installs on Windows Server 2008 or later. It is also offered as a SaaS service in the cloud. You can get a 30-day free trial of the onsite software to check out the process monitoring system.
Site24x7 is a cloud-based infrastructure monitoring service. It is able to monitor any server anywhere, including cloud servers. As a SaaS offering, this tool includes all supporting services and hardware, so you don’t need to worry about monitoring the server processes of your server monitor.
The server monitoring features of Site24x7 are part of an infrastructure package. This can be used to monitor networks as well as servers. The system is able to monitor Windows and Linux servers and those servers can be located anywhere – they just need an agent installed on them.
The base package of Site24x7 Infrastructure covers up to 10 servers and larger businesses can add on more. The system monitors processes and their resource usage, including CPU, disk space, and memory. In fact, the system watches 60 different server performance metrics.
As a SaaS system, Site24x7 is charged for by subscription so there are no upfront software or hardware purchase costs to getting started with the server monitor and there are no set-up fees. You can access the service immediately on a 30-day free trial.
Nagios XI is an infrastructure monitoring system that covers networks, servers, and applications. This is a paid tool that is based on a free open-source project, called Nagios Core. Both Nagios XI and Nagios Core include comprehensive process monitoring.
The Nagios system is able to access both Windows Server and Linux to create its own process monitoring service. The screens for the process monitor are well laid out and easy to read. The details for each operating system version of the process monitor cover the same attributes shown by the native process monitors.
The monitor alerts staff if there is a process in trouble because it is hanging or has crashed. This alert mechanism means that technicians can assume that everything is working okay unless they are notified by Nagios.
The software for Nagios XI installs on RHEL, CentOS, Oracle Linux, Debian, and Ubuntu. Although the code is not available for Windows, it can be run on that operating system over a virtualization system, such as VMWare or Hyper-V. It can be run on Linux and can be run over a VM on top of Windows. You can get a 30-day free trial of Nagios XI.
Icinga 2 has evolved from a fork of Nagios Core. Many people prefer the interface of Icinga 2 and as it is free, the service is very popular.
The Icinga 2 monitoring system includes similar process monitors to those of Nagios XI. The Nagios system includes thousands of free extensions, called plugins, and these work in Icinga 2 as well. The process monitor checks on resource utilization for each process, such as CPU, memory, and disk. It also totals all resource utilization of the server to see whether it is overloaded. The monitor will send out an alert to IT department staff if resource thresholds get breached.
The software for Icinga 2 can be installed on RHEL, CentOS, Debian, Ubuntu, Raspbian, openSUSE, and SLES. There is no version for Windows.
Zabbix is an attractive free, open-source system monitor that includes a section for server process monitoring. This tool lists processes and identifies their live usage of memory, disk, CPU, and network I/O. The service will also watch the performance of the server as a whole and alert when problems arise.
The software for Zabbix installs on Linux, IBM AIX, FreeBSD, NetBSD, OpenBSD, HP-UX, macOS, and Solaris. There is no version for Windows but the system can monitor Windows servers with the installation of an agent on those hosts.
Datadog infrastructure is a network and server monitoring service that is based in the cloud. The server monitoring element of this SaaS package includes process monitoring with attention to the use of resources of the host.
The infrastructure monitor aims to expose the underlying causes of performance problems. It identifies the resources used by each application. So, if a database is running slowly, it is possible to trace its processes and see whether any of them are hanging in contention for resources or have just fallen over.
The monitoring system is able to watch over any server anywhere. The server will need to have an agent installed on it. Datadog Infrastructure is charged for by subscription and it is available for a 14-day free trial.
Sysinternals is a group of system monitoring and management tools available for Windows computers. All of these utilities are free to use. Sysinternals is owned by Microsoft and all of the programs can be downloaded from the Microsoft site. Once a tool has been installed, it can be launched from Windows Explorer.
The Process Explorer is the first of two process monitoring and management tools in the Sysinternals range. The interface for the utility has two panels. The top panel lists all active processes and is subdivided into a tree hierarchy menu and a list of process attributes. The lower panel shows details of a selected process, including its launching program and any files or resources that it is using.
A second screen for this utility shows a performance graph for the host as a whole detailing CPU, memory, and I/O activity over time.
The second Sysinternals utility for processes is called Process Monitor. This facility is free to use and downloads from the Microsoft site. This tool enables all processes to be shown or a selection based on a search filter.
Details of each process include any registry-related activity and file usage. The monitor is constantly active and shows live data. It links related processes together in a parent-child hierarchy, so it is possible to identify processes that create a lot of activity on the host even though the observations of each individual process might seem slight.
Although the two free Sysinternals tools are less comprehensive than the third-party tools on this list, they cost nothing to download and take up very little space, so they would be useful to have in addition to a more comprehensive full system monitoring tool.
Choosing a process monitoring tool
Although the native process monitors are free and don’t need to be installed, they don’t offer much insight and they can be difficult to read. There are a number of very good process monitors available on the market. These have graphical interfaces that interpret process statistics meaningfully and they are also able to examine processes running on devices across the network or even on a different site.
Businesses that run many servers will particularly benefit from a good quality process monitoring tool. These services are able to aggregate the performance of all devices as an overview and they usually include an alert mechanism that will draw the attention of technicians when one process seems to be overloading the system.