> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tenderly.co/llms.txt
> Use this file to discover all available pages before exploring further.

# 执行概览

> 通过一个统一的视图，从函数跟踪、调用跟踪、合约、事件、状态变化和 gas 分析器中鸟瞰交易。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2009.44.31.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=681671eddb1b5e0585403abe015e646f" alt="Successful Transaction" width="2516" height="1143" data-path="images/Screenshot 2021-11-25 at 09.44.31.webp" />

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2009.45.45.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=17a3730542f73493267233335fc04cd3" alt="Failed Transaction" width="2516" height="1143" data-path="images/Screenshot 2021-11-25 at 09.45.45.webp" />

Execution Overview——可以将其视为交易的鸟瞰视图。一眼便可看到给定交易中所有参与智能合约的确切代码路径。您可以通过点击[**此处（成功）**](https://dashboard.tenderly.co/tx/mainnet/0x1ca07994d823e4198d7517d828d99e2064f3204501284d5348ca8c11e3be53d8)和[**此处（失败）**](https://dashboard.tenderly.co/tx/mainnet/0xe0ca90fba27e63cd8550565fa8d57559f76b67f5e7d8b8dbb150752a48cb87d2)来打开上面图片中的交易。

在第一个选项卡 **Transaction Overview** 中，您可以查看并浏览交易的所有元素。此外，您可以通过点击右上角的按钮立即（重新）模拟交易，使用不同的参数，甚至更改源代码以观察结果——[**在此处阅读更多关于 Simulations 的信息**](/simulator-ui/overview)。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2009.57.12.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=870d4adafc8101b9ccf8bed36a11e6cd" alt="" width="1575" height="943" data-path="images/Screenshot 2021-11-25 at 09.57.12.webp" />

在 Overview 选项卡中，您可以立即跳转到 Contract Sources 或 Debugger 查看发生了什么：

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.13.51.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=de45784e86b54411992107a00193d666" alt="" width="2553" height="1158" data-path="images/Screenshot 2021-11-25 at 10.13.51.webp" />

如果您正在调查失败的交易，现在可以**点击红色警告图标然后点击失败的行，直接跳转到所有失败点**：

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.46.08%20(1).webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=556893b48138dd1e6381df0c638afcbf" alt="" width="2553" height="1141" data-path="images/Screenshot 2021-11-25 at 10.46.08 (1).webp" />

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.47.46.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=f9371e74d1ce4accd3d5ac92eaccaa5e" alt="" width="2553" height="1230" data-path="images/Screenshot 2021-11-25 at 10.47.46.webp" />

您还可以搜索 Execution Trace，并使用键盘方向键轻松浏览它：

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.18.19.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=b4e9ad96ce7bafb9a701704ed74f9a82" alt="" width="2553" height="1158" data-path="images/Screenshot 2021-11-25 at 10.18.19.webp" />

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/ezgif.com-gif-maker%20(6).gif?s=a0d62baa5fb34537882b14b439bfef4d" alt="" width="800" height="359" data-path="images/ezgif.com-gif-maker (6).gif" />

### Call 和 Function Trace

在 Execution Trace 部分，您会在搜索字段旁边找到一个下拉菜单。默认情况下设置为 **Function Trace**，这意味着它将显示此交易中发生的所有外部和内部调用。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-12-22%20at%2010.26.14.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=7bc8570287e79804ae7b1df986007399" alt="" width="2550" height="1144" data-path="images/Screenshot 2021-12-22 at 10.26.14.webp" />

要更好地概览关键调用，请将其切换到 **Call Trace**，仅显示交易中发生的外部调用。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-12-22%20at%2010.35.27.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=9902b40c04f53e00d9116357ba4f7e98" alt="" width="2550" height="1134" data-path="images/Screenshot 2021-12-22 at 10.35.27.webp" />

<Info>
  您可以**对任何跟踪进行评论和排序**，无论是为自己还是为了让项目中的协作更容易。您可以[**在此处阅读更多信息**](/debugger/commenting)。
</Info>

此功能在 [**Debugger**](/debugger/overview) 中也可用。现在，假设您想深入研究您的（或任何其他）交易。让我们逐一查看可用的选项卡。

### Contracts

当您位于 **Transaction Overview** 选项卡时，在上方导航中，您可以点击 **Contracts**（或 **Addresses**）以查看参与某个交易的所有合约：

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-10-14%20at%2015.21.21.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=5a077a5709fb08210d6fda4a8ba6c417" alt="" width="2542" height="1151" data-path="images/Screenshot 2021-10-14 at 15.21.21.webp" />

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-10-14%20at%2015.21.39.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=11e1269d6c434281fd3dd18d56f9b709" alt="" width="2542" height="1151" data-path="images/Screenshot 2021-10-14 at 15.21.39.webp" />

点击合约后，您可以查看其源代码：

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.00.32.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=2fe0930b3eebd554e0e4661d53c75cc8" alt="" width="2553" height="1160" data-path="images/Screenshot 2021-11-25 at 10.00.32.webp" />

### Events

Smart Contract Events 是通知相关方发生某些事件的事实标准方式。除了表明某个特定事件已发生这一信息之外，日志本身也包含有价值的信息。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.03.57.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=27e9efee3e22d5fd28bb450e51107606" alt="" width="2553" height="1135" data-path="images/Screenshot 2021-11-25 at 10.03.57.webp" />

当我们点击 **Events** 选项卡时，我们可以看到[交易期间发出的](https://dashboard.tenderly.co/tx/mainnet/0x98a8a99daec2823836ac155003ec7c798ded926a86e1c165716dd0d0ea5133a0)所有事件。更好的是，**事件参数已经解码，并以人类可读的格式显示**。不再需要浪费时间解码十六进制字符串来查看发生了什么。您还可以按名称和智能合约筛选事件。

### State Changes

随着智能合约变得越来越复杂，这些智能合约的状态也变得越来越复杂。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.05.37.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=dbbfce4802dbf3710c9db5ec18d9d5c1" alt="" width="2553" height="873" data-path="images/Screenshot 2021-11-25 at 10.05.37.webp" />

我们在这里看到，Tenderly 不仅显示了发生变化的状态变量，而且**所有变量都已解码以方便您使用**。**是的，结构体也已正确解码**。

您可以在[此处](https://dashboard.tenderly.co/tx/mainnet/0x98a8a99daec2823836ac155003ec7c798ded926a86e1c165716dd0d0ea5133a0)查看该交易及其复杂性。

### Debugger

调试堆栈跟踪是任何开发者在本地和生产环境中工作流程的重要部分。通过点击 **Debugger** 选项卡，您可以深入了解您的（或任何其他）交易发生的一切。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.41.38.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=3e8662e7e09bad511a4b5aef20388409" alt="" width="2553" height="1087" data-path="images/Screenshot 2021-11-25 at 10.41.38.webp" />

**上面的堆栈跟踪显示了交易失败的确切代码行**。从那里，您可以点击 **Debug Error** 并快速找到问题。查看[**如何使用 Tenderly Debugger**](/debugger/overview) 以及[**调查失败的交易**](/debugger/overview)！

### Gas Profiler

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.29.41.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=b526d5cb3723b51b577b36b201f598b3" alt="" width="2553" height="775" data-path="images/Screenshot 2021-11-25 at 10.29.41.webp" />

上图所示的图表称为火焰图。它是显示资源使用情况（如 CPU）的常见方式。您可以在[此处](https://dashboard.tenderly.co/tx/mainnet/0x98a8a99daec2823836ac155003ec7c798ded926a86e1c165716dd0d0ea5133a0)找到上面的示例。

每一行显示其下方各行的总成本。如果您点击任何一行（函数），可以看到所调用函数的 gas 成本详细明细。

<img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/Screenshot%202021-11-25%20at%2010.32.46.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=0776568fec9bdccf8cc3024ebeda34c8" alt="" width="2553" height="977" data-path="images/Screenshot 2021-11-25 at 10.32.46.webp" />

您终于可以看到哪些函数使用了最多的 gas，并选择代码的正确部分进行优化。
