# 调试

> For AI agents: the complete glossary index is at [llms.txt](https://glossary.cncf.io/zh-cn/llms.txt).
> Markdown versions of every glossary page are available by appending `index.md` to the page URL.

## 是什么

调试是从计算机程序、软件或系统中查找并解决故障（或错误） 以获得预期结果的过程或活动。
故障是导致不正确或不符合预期结果的缺陷或问题。

## 解决的问题

软件开发是一项复杂的活动，在不引入故障的情况下编写代码几乎是不可能的。
这些故障导致代码在执行时可能无法按预期运行，或产生未定义的行为。
根据应用程序的重要性，故障可能会产生重大的负面影响 —— 经济上甚至是人类生活。
通常，应用程序代码必须在不同阶段或环境被测试。
应用程序越关键，测试就必须越准确。

## 如何帮助

当出现故障时，工程师通过调试（例如，查找和修复）应用程序以减少生产系统中的不良行为。
调试并不是一件容易的事，因为工程师必须追踪不良行为的根源。
它需要有关代码本身和运行时执行上下文的知识。
这是不同的调试技术和工具派上用场的地方。
例如，分析日志、链路信息和指标信息，用于直接在生产中进行调试。
开发人员可以使用交互式调试在运行时单步执行代码，同时分析相关的执行上下文。
一旦定位到故障的根源，他们通过发起修复错误的请求或者发布新的补丁来更正代码行为。

---

- Canonical URL: https://glossary.cncf.io/zh-cn/debugging/
- Status: Completed
- 最后编辑 July 22, 2022: ` add tags ` ([2f7798e](https://github.com/cncf/glossary/commit/2f7798e5bed8513ccc6f41b217c37fd2b8f6f724))
- Source: https://github.com/cncf/glossary/blob/main/content/zh-cn/debugging.md
- License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)
