Linux debugging tools that developers and operators must look at [Recommended]

Linux debugging tools that developers and operators must look at [Recommended]

System performance expert Brendan D. Gregg updated his famous talk (Linux Performance Tools) and slides on Linux performance at the LinuxCon NA 2014 conference. The tools used in daily Linux development are summarized from the perspectives of monitoring, testing, optimization, and configuration. Below are the main pictures and information, I hope it will be helpful to you.

Performance Tools (Linux Performance Tools-full)

This picture is a high-resolution version of the monitoring, testing, and tuning process. They will be displayed separately according to different categories later.

Linux Performance Benchmark Tools

Benchmark is an evaluation method, which consists of three parts: data set, workload, and measurement indicators. It has long-term applications in the entire computer field.

The most successful application of Benchmark in the computer field is performance testing, which mainly tests the execution time, transmission speed, throughput, resource utilization, etc. of the load.

Linux Performance Observability Tools

According to the different monitoring contents, the tools can be divided into three levels: basic, intermediate and advanced. Corresponding to the following three chapters respectively

Basic Linux Monitoring Tools

perf-tools

perf-tools: is a toolset created by Brendan Gregg. Its goal is to achieve maximum functionality with minimal dependencies and to be easy to install and use.

Do one thing and do it well. ——Brendan Greg

sar

sar (System Activity Reporter) is one of the most comprehensive system performance analysis tools on Linux. It can report system activities from many aspects, including: file reading and writing, system call usage, disk I/O, CPU efficiency, memory usage, process activity and IPC-related activities.

Linux Performance Tuning Tools

Most systems will respond to increased load with some degree of performance degradation. The ability of a system to accept a higher load is called scalability, and modifying the system to handle the higher load is the purpose of Performance Tuning Tools.

Tracing Tools (Linux bcc/BPF Tools)

A new technology is emerging in Linux that provides system administrators and developers with a host of new tools and dashboards for performance analysis and troubleshooting. It is called BPF (Berkeley Packet Filter).

eBPF is an enhanced version of BPF and has been added to the Linux 4.x series kernel. Can do more than just filter packets, allowing custom analyzers to be executed on Linux dynamic traces, static traces, and analysis events.

Static Information (Linux Static Performance Tools)

I believe these are very familiar to Linux practitioners.

If you want to do your work well, you must first sharpen your tools. Good tools can quickly locate problems and shorten the debugging cycle. There are so many tools on the Linux platform that it's hard to tell which are the best. The most tried and tested simple tools are all in the above article. Do you know them all?

Summarize

The above is the Linux debugging tools that I introduced to you, which are indispensable for development and operation and maintenance. I hope it will be helpful to you. If you have any questions, please leave me a message and I will reply to you in time. I would also like to thank everyone for their support of the 123WORDPRESS.COM website!
If you find this article helpful, please feel free to reprint it and please indicate the source. Thank you!

You may also be interested in:
  • How to use the Python standard library for performance testing
  • Writing a performance testing tool in Python (Part 1)
  • Detailed explanation of the performance test monitoring network throughput process

<<:  Detailed explanation of the practical application of regular expressions in JavaScript

>>:  Summary of the differences between count(*), count(1) and count(col) in MySQL

Recommend

A great collection of web standards learning resources

These specifications are designed to allow for bac...

React dva implementation code

Table of contents dva Using dva Implementing DVA ...

Example of how to deploy a Django project using Docker

It is also very simple to deploy Django projects ...

mysql subquery and join table details

Table of contents 1. What is a subquery? 2. Self-...

Detailed explanation of Linux file operation knowledge points

Related system calls for file operations create i...

How to install mysql5.7 in windows

First download the compressed version of mysql, t...

Four ways to compare JavaScript objects

Table of contents Preface Reference Comparison Ma...

Alibaba Cloud Centos7 installation and configuration of SVN

1. Install SVN server yum install subversion 2. C...

Using Docker to create static website applications (multiple ways)

There are many servers that can host static websi...

Use Navicate to connect to MySQL on Alibaba Cloud Server

1. First enter the server's mysql to modify p...

How to uninstall and reinstall Tomcat (with pictures and text)

Uninstall tomcat9 1. Since the installation of To...

Interpretation and usage of various React state managers

First of all, we need to know what a state manage...

Four ways to create objects in JS

Table of contents 1. Create objects by literal va...