You deserve: 25 Linux performance monitoring tools

Source: Internet
Author: User
Tags memory usage rrdtool system log icinga mrtg sysdig 10:55 Translator: Andyxue linux Chinese font size:T | T

In this article we will list a series of the most frequently used performance monitoring tools, and provide a corresponding introduction link to each of the tools introduced, roughly divided into two categories, based on the command line and provide graphical interface.

Ad:51cto Net + 12th salon: The beauty of big data-how to drive user experience with data

For some time, we have been on the internet to show readers how to configure a variety of different performance monitoring tools for Linux and Linux-like operating systems. In this article we will list a series of the most frequently used performance monitoring tools, and provide a corresponding introduction link to each of the tools introduced, roughly divided into two categories, based on the command line and provide graphical interface.

One, command-line-based performance monitoring tools

1.dstat-Multi-type resource statistics tool

This command integrates three commands, vmstat,iostat and ifstat . It also adds new features and features that allow you to see all of your resource usage in a timely manner, allowing you to compare and integrate different resource usage scenarios. The interface with different color and block layouts helps you to get information more clearly and easily. It also supports exporting information data to a CVS format file, which can be opened with other applications or imported into a database. You can use this command to monitor CPU, memory, and network status over time.

2.atop-better ASCII experience compared to top

This command-line tool, which uses ASCII code display, is a performance monitoring tool that displays all process activity. It can present a daily system log for long-term process activity analysis and highlight overloaded system usage resources. It contains metrics for CPU, memory, swap space, disk, and network layer. All of these features simply run atop at the terminal.

    1. # atop

Of course you can also use the interactive interface to display and sort the data.

Performance monitoring for 3.Nmon-Unix-like systems

Nmon is the Nigel's monitor abbreviation, which was first developed as a system monitoring tool for AIX . If you use the online mode , you can use the cursor keys to operate the monitor information displayed on the terminal in real time on the screen. Use capture mode to save data in CSV format for further processing and graphical presentation.

For more information, refer to our Nmon performance monitoring article.

4.slabtop-Display kernel slab cache information

This app can show how the cache allocator manages different types of objects cached in the Linux kernel. This command is similar to the top command, except that it focuses on real-time display of kernel slab cache information. It is able to display a list of display caches sorted by different sorting criteria. It can also display a header for the statistics of a slab layer of information. Examples are as follows:

    1. # Slabtop--sort=a
    2. # Slabtop-s B
    3. # Slabtop-s C
    4. # slabtop-s L
    5. # Slabtop-s V
    6. # slabtop-s N
    7. # slabtop-s O

For more information, see The kernel slab cache article.

5.sar-performance monitoring and bottleneck checking

The SAR command outputs the cumulative activity counter content information selected on the operating system to the standard output. Its audit system based on the count value and time interval parameter outputs the specified number of monitoring information at the specified time interval. If the time interval parameter is set to 0, then the SAR command will show the average statistics of the system from boot to time. The following commands are useful:

    1. # sar-u 2 3
    2. # sar-u-F/VAR/LOG/SA/SA05
    3. # sar-p all 1 1
    4. # sar-r 1 3
    5. # sar-w 1 3

6.Saidar-Simple statistical monitoring tool

The Saidar is a simple and lightweight System Information monitoring tool. Although it does not provide most performance reports, it is able to display the most useful system health data in a straightforward way. You can easily see the elapsed time, average load, CPU, memory, process, disk, and network interface statistics.

  1. Usage: saidar [-D delay] [-c] [-v] [-H]
  2. -D Set update time (seconds)
  3. -c color display
  4. -v display version number
  5. -h Display this help Classic Linux task management tool

As a well-known Linux tool,top is the task Manager for most Unix-like operating systems. It can display a list of processes that are currently running, and users can sort the list by different criteria. It mainly shows the CPU and memory usage of the system process. Top can quickly check which or which processes are suspending your system. You can see the example of top use here. You can run it and enter the interactive mode by entering top in the terminal:

  1. Some quick actions for interactive mode:
  2. global command: < carriage return/Space > ?, =, A,< Span class= "PLN" > B, D, G , H, I K, Q, R , S, W Z
  3. command of the statistic area: l, m, t, 1
  4. commands for the task area:
  5. appearance: B,, Y, Z content: C, F, H , O, S u size: #, I, n sort: <,;, F, O, R
  6. color scheme: < ret>, A, B , B, H M, Q, S , T, W Z, 0- 7
  7. window Commands: -, _, =, +, a, a, G, G, W /c17>

8.Sysdig-Advanced view of system processes

Sysdig is a monitoring tool that enables system administrators and developers to gain insight into their system behavior in unprecedented ways. Its development team wants to improve system-level monitoring by providing a unified, orderly and granular way to troubleshoot storage, processes, networks, and memory subsystems. And you can create system activity log files so that you can easily analyze at any time.

Simple example:

  1. # Sysdig
  2. # sysdig-p "" "Evt.type=accept and!=httpd"
  3. # Sysdig Evt.type=chdir and
  4. # sysdig-l
  5. # sysdig-l
  6. # sysdig-c Topprocs_net
  7. # sysdig-c fdcount_by "Evt.type=accept"
  8. # sysdig-p "" "Evt.type=accept and!=httpd"
  9. # sysdig-c Topprocs_file
  10. # sysdig-c fdcount_by "Fd.type=file"
  11. # sysdig-p "" Evt.type=open
  12. # sysdig-c TOPPROCS_CPU
  13. # sysdig-c Topprocs_cpu evt.cpu=0
  14. # sysdig-p "%evt.arg.path" "Evt.type=chdir and"
  15. # Sysdig Evt.type=open and contains/etc

More information can be used to improve system-level monitoring and troubleshooting at the Sysdig.

9.netstat-Show open ports and connections

It is a tool that Linux administrators use to display various network information, such as viewing what ports are open and what network connections have been established and which processes are running on that connection. It also displays information about UNIX sockets that are open between different programs. As part of most Linux distributions, many of Netstat's commands are described in detail in Netstat and its different outputs. The most commonly used are as follows:

    1. $ netstat | head -20
    2. $ Netstat -r
    3. $ Netstat -RC
    4. $ Netstat -i
    5. $ Netstat -ie
    6. $ Netstat -s
    7. $ Netstat -g
    8. $ Netstat -tapn

10.tcpdump-Insight Network packets

tcpdump can be used to view the packet contents of a network connection . It shows various information about the contents of the packet during transmission. To make the output information more useful, it allows the user to get the information they want through different filters. The following examples can be referenced:

    1. # tcpdump-i eth0 not Port 22
    2. # tcpdump-c 10-i eth0
    3. # Tcpdump-ni Eth0-c not Port 22
    4. # tcpdump-w Aloft.cap-s 0
    5. # Tcpdump-r Aloft.cap
    6. # tcpdump-i eth0 DST Port 80

You can find a detailed description of the article "in Topdump and capture package".

11.vmstat-Virtual Memory statistics

Vmstat is the abbreviation for virtual memory (statistics), as a memory monitoring tool that collects and displays information about memory , processes , Summary information for terminal and paging and I/O blocking . As an open source program, it can be found in most Linux distributions, including Solaris and FreeBSD. It is used to diagnose most memory performance problems and other related issues.

m For more information refer to the Vmstat command article. statistics

Free is another command-line tool that can be used to display memory and swap space in the terminal. Because of its simplicity, it is often used to quickly view memory usage or to be applied to different scripts and applications. Here you can see many applications of this applet. Almost all system administrators use this tool on a daily basis. :-)

13.Htop-More friendly top

Htop is basically a top-improvement version that displays more statistics in a more colorful way, while allowing you to sort in different ways, providing a user-friendly interface.

You can find more information in the article "About Htop and top comparisons".

14.SS-A modern alternative to network management

SS is part of the Iproute2 package. Iproute2 is an alternative to a complete set of standard UNIX network tool components that were used to complete network interface configuration, routing tables, and managing ARP table tasks. The SS tool is used to record socket statistics, which can display information similar to netstat, as well as more TCP and status information. Some examples are as follows:

    1. # Ss-tnap
    2. # SS-TNAP6
    3. # Ss-tnap
    4. # ss-s
    5. # Ss-tn-o State Established-p

15.lsof-the list shows open files

The lsof command, meaning "list openfiles", is used to display all open files and the process of opening them in many Unix-like systems. In most Linux distributions and other Linux operating systems, system administrators use it to check which files are opened by different processes.

    1. # lsof +p process_id
    2. # Lsof | Less
    3. # lsof–u Username
    5. # Lsof–i Tcp:ftp
    6. # Lsof–i TCP:80

You can find more examples in lsof articles

16.iftop-A network connection tool similar to top

Iftop is another top-like program based on web information. It can show the current network connection status in terms of bandwidth usage or upload or download order. It also provides the estimated time to complete the download file.

For more information , refer to the network traffic Iftop article.

17.iperf-Network Performance tools

Iperf is a network test tool capable of creating TCP and UDP data connections and measuring their transmission performance over the network. It supports adjusting different parameters about time, protocol, and Buffering. For each test, it reports bandwidth, drops, and other parameters.

If you want to use this tool, you can refer to this article: How to install and use Iperf

18.Smem-Advanced Memory Reporting tool

Smem is one of the state-of-the-art Linux command-line tools that provide an actual memory size that has been used and shared in the system, attempting to provide a more reliable current memory usage data.

    1. $ smem -m
    2. $ smem -m -p | grep firefox
    3. $ smem -u -p
    4. $ smem -w -p

Refer to our article: Smem more examples

Second, graphical or web-based performance tools

Community Branch version of 19.icinga-nagios

Icinga is an open source, free Network monitoring program, which, as a branch of Nagios, inherits most of the existing functionality of the former, and adds functionality and patches that the community user has long requested.

For more information , please refer to the installation and Configuration Lcinga article.

20.Nagios-The most popular monitoring tool

As the most widely used and most popular monitoring solution on Linux, it has a daemon that collects information from different processes and remote hosts, and the information gathered is presented through a powerful web interface .

You can find more information in the article "How to install Nagios"

Procexp under the 21.Linux process Explorer-linux

Linux Process Explorer is a graphical browsing tool for Linux. It can display different process information, such as the number of processes, TCP/IP connectivity, and performance metrics for each process. As a replacement for Linux under Windows procexp , it was developed by Sysinternals , with the goal of being more than top and PS Provide a better user experience.

See the Linux Process Explorer article for more information.

22.Collectl-Performance monitoring tools

You can either use the performance monitoring tool interactively, or you can write the report to disk and access it through a Web server. It displays statistics such as CPU, disk, memory, network, network file system, process, slabs , etc. in an easy-to- read and manageable format.

more articles on Collectl.

23.MRTG-Classic network traffic monitoring graphics tool

This is a traffic monitoring tool that uses RRDtool to generate graphics. As the first traffic monitoring tool to provide a graphical interface , it is widely used in Unix-like operating systems. Check out our article on how to use MRTG for more information on installation and configuration.

24.Monit-Easy-to-use monitoring tool

Monit is an open source Linux tool for monitoring processes , system loading , file system and directory files , and more. You can enable it to automate maintenance and repair, perform specific actions in the case of running errors, or send email reports to alert system administrators. If you want to use this tool, you can see how to use the Monit article.

25.Munin-provides monitoring and alerting services to servers

As a network resource monitoring tool,Munin can help analyze resource trends and view weaknesses and lead to performance issues the reason. The team that developed this software wanted it to be easy to use and user-friendly to experience. The software was developed in Perl and used RRDtool to draw graphics, using a Web interface for rendering. When developers promote this app, they claim that more than 500 monitoring plug-ins are currently "plug and play *".

More information can be found in the articles about Munin.


Adrian Dinu Translator: Andyxue proofreading: Wxy

"Editor's recommendation"

    1. Twice times ahead of SuSE, Red Hat Enterprise Linux creates world record
    2. System shovel Sysdig:linux server monitoring and Troubleshooting tool
    3. Systemd This controversial project is taking over Linux distributions around you
    4. How to query Apache logs with SQL statements on Linux
    5. Linux system Monitoring, diagnostic tool IO wait

You deserve: 25 Linux performance monitoring tools

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.