Master Linux Performance: 10 Essential Commands to Diagnose Issues in 60 Seconds
This article from Netflix's performance engineering team outlines ten standard Linux command‑line tools and the USE method to quickly assess system health, focusing on error and saturation metrics before utilization, enabling rapid diagnosis of CPU, memory, disk, or network bottlenecks within the first minute.
When you encounter performance problems on a Linux server, the first minute is crucial. This article from Netflix’s performance engineering team lists ten standard Linux command‑line tools you can run to get a quick overview of system health and process resource usage.
The approach follows the USE method (Utilization, Saturation, Errors) and focuses first on error and saturation metrics before looking at utilization.
uptime
uptime
dmesg | tail
vmstat 1
mpstat -P ALL 1
pidstat 1
iostat -xz 1
free -m
sar -n DEV 1
sar -n TCP,ETCP 1
topThe uptime command shows the load average for the past 1, 5 and 15 minutes, indicating how many tasks are waiting to run.
dmesg | tail
Shows the most recent kernel messages, useful for spotting OOM‑killer events or TCP errors.
vmstat 1
Displays virtual memory and CPU statistics every second. Important fields include r (runnable tasks), free (free memory), us / sy (user and system CPU time), and wa (IO wait).
mpstat -P ALL 1
Shows per‑CPU utilization, helping identify uneven CPU usage or single‑threaded bottlenecks.
pidstat 1
Provides per‑process CPU usage over intervals, allowing you to spot processes that consume many CPU cores.
iostat -xz 1
Reports block device statistics such as r/s, w/s, await, avgqu‑sz and %util, which reveal disk saturation.
free -m
Shows memory usage, distinguishing between buffers, cache and actual used memory; the “‑/+ buffers/cache” line gives a more accurate view of free memory.
sar -n DEV 1
Monitors network interface throughput ( rxkB/s, txkB/s) and interface utilization.
sar -n TCP,ETCP 1
Provides TCP statistics such as active connections, passive connections and retransmissions, useful for assessing network health.
top
Combines many of the above metrics in a dynamic view; however, because it refreshes the screen, transient spikes may be missed, so tools like vmstat or pidstat are often preferable for continuous monitoring.
By running these commands within the first 60 seconds of investigation, you can quickly narrow down whether the problem lies in CPU saturation, memory pressure, disk I/O, or network issues.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Open Source Linux
Focused on sharing Linux/Unix content, covering fundamentals, system development, network programming, automation/operations, cloud computing, and related professional knowledge.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
