Windows relies on hundreds of background services to perform everyday tasks.
These services handle:
Most users never interact with them directly.
However, when troubleshooting performance problems, startup delays, application failures, or unexpected reboots, understanding which services are starting and stopping can be extremely valuable.
Many users open the Services console expecting to see a history of service activity. Unfortunately, the Services tool only shows the current state.
To see what happened in the past, you need to use Windows logging and monitoring tools.
This guide explains how to track service activity, identify crashes, and monitor service startup behavior.
Windows services are background programs that run independently of user applications.
Examples include:
Unlike normal applications, services often start automatically when Windows boots.
Common troubleshooting scenarios include:
Knowing exactly when a service started or stopped often reveals the root cause.
The most useful built-in tool is Event Viewer.
Press:
Windows + X
Select:
Event Viewer
Navigate to:
Windows Logs → System
Look for events generated by:
Service Control Manager
This component records:
| Event ID | Description |
|---|---|
| 7035 | Service control request sent |
| 7036 | Service started or stopped |
| 7031 | Service terminated unexpectedly |
| 7000 | Service failed to start |
| 7001 | Service dependency failure |
| 7023 | Service terminated with error |
These event IDs are among the most useful when troubleshooting service-related issues.
Event Viewer can contain thousands of entries.
To narrow results:
Step: Select Filter Current Log.
Step: Enter:
7031,7035,7036,7000,7001,7023
Step: Apply filter.
This displays primarily service-related activity.
Open:
services.msc
The Services console shows:
However, it does not provide historical data.
Think of it as a real-time status dashboard rather than a history tool.
To view running services:
Get-Service
To view a specific service:
Get-Service wuauserv
Example:
Get-Service | Sort Status
PowerShell is particularly useful for administrators managing multiple systems.
Open:
Resource Monitor
or
Task Manager
You can observe:
This helps identify services causing performance problems.
Look for recurring Event IDs:
| Event ID | Meaning |
| 7031 | Unexpected termination |
| 7023 | Service-specific error |
| 7024 | Service failure |
| 7009 | Startup timeout |
Repeated occurrences usually indicate:
Open:
services.msc
Select a service.
Open:
Properties → Dependencies
A dependent service failure can trigger multiple service errors.
Open Administrator Command Prompt:
sfc /scannow
Corrupted system files frequently cause service instability.
If SFC reports problems:
DISM /Online /Cleanup-Image /RestoreHealth
Then rerun:
sfc /scannow
| Tool | Best For |
| Services.msc | Current status |
| Event Viewer | Historical events |
| PowerShell | Automation |
| Task Manager | Resource usage |
| Resource Monitor | Performance analysis |
Review service logs periodically on important systems.
Updates frequently resolve service-related bugs.
Disabling random services often creates instability.
Before modifying service configurations.
It often provides early warning signs of problems.
When troubleshooting Windows problems, understanding service activity can reveal issues that would otherwise remain hidden.
Although Services.msc only shows current status, Event Viewer provides detailed historical records of service starts, stops, failures, and restarts.
For most users, Event Viewer is the best place to begin. For administrators and advanced users, PowerShell and Resource Monitor provide additional insight into how Windows services behave over time.
Yes. Event Viewer records service activity through Service Control Manager events.
Event ID 7036 commonly records service state changes.
Review Event Viewer for related error entries and service-specific messages.
No. It only shows the current state of each service.
Yes. PowerShell provides powerful tools for viewing and managing services.