> ## 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.

# Execution Overview

> function trace, call trace, contracts, events, state changes, और gas profiler के साथ एक जगह पर transaction का समग्र दृश्य प्राप्त करें।

<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 - इसे transaction के समग्र दृश्य के रूप में सोचें। एक नज़र में, आप उन सभी Smart Contracts के सटीक code paths देख सकते हैं जो किसी दिए गए transaction में भाग लेते हैं। आप ऊपर की images से transactions को [**यहाँ (successful)**](https://dashboard.tenderly.co/tx/mainnet/0x1ca07994d823e4198d7517d828d99e2064f3204501284d5348ca8c11e3be53d8) और [**यहाँ (failed)**](https://dashboard.tenderly.co/tx/mainnet/0xe0ca90fba27e63cd8550565fa8d57559f76b67f5e7d8b8dbb150752a48cb87d2) क्लिक करके खोल सकते हैं।

पहले tab में - **Transaction Overview** - आप transaction के सभी elements को देख और navigate कर सकते हैं। इसके अलावा, आप ऊपर दाईं ओर बटन पर क्लिक करके, विभिन्न parameters का उपयोग करके, या यहाँ तक कि परिणाम का निरीक्षण करने के लिए source code बदलकर तुरंत transaction को (Re)Simulate कर सकते हैं - [**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 Tab tab से, आप तुरंत 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" />

यदि आप किसी विफल transaction को देख रहे हैं, तो अब आप **लाल warning आइकन पर क्लिक करके और फिर उस line पर क्लिक करके सीधे सभी fail points पर कूद सकते हैं जो विफल हुई**:

<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 को search भी कर सकते हैं, साथ ही अपने keyboard arrows के साथ इसे आसानी से navigate कर सकते हैं:

<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 section में, आपको search field के ठीक बगल में एक dropdown menu मिलेगा। डिफ़ॉल्ट रूप से, यह **Function Trace** पर सेट होता है, जिसका अर्थ है कि यह इस transaction में हुई सभी external और internal calls दिखाएगा।

<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" />

Key calls के बेहतर अवलोकन के लिए, इसे **Call Trace** पर switch करें, जो केवल transaction में हुई external calls दिखाता है।

<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>
  आप **किसी भी trace पर comment और priority दे सकते हैं**, या तो अपने लिए या प्रोजेक्ट में
  collaboration को आसान बनाने के लिए। आप इसके बारे में [**यहाँ अधिक पढ़ सकते हैं**](/debugger/commenting)।
</Info>

यह feature [**Debugger**](/debugger/overview) में भी उपलब्ध है। अब, मान लीजिए कि आप वास्तव में अपने (या किसी अन्य के) Transaction में गहराई से खुदाई करना चाहते हैं। आइए उपलब्ध प्रत्येक tabs से गुज़रें।

### Contracts

जब आप **Transaction Overview** tab में होते हैं, ऊपरी navigation में, आप **Contracts** (या **Addresses**) पर क्लिक कर सकते हैं ताकि किसी विशेष transaction में शामिल सभी contracts देख सकें:

<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" />

किसी contract पर क्लिक करके, आप इसका सोर्स कोड देख सकते हैं:

<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 रुचि रखने वाले पक्षों को यह सूचित करने का de-facto तरीका है कि कुछ event हुई है। Logs में स्वयं उस जानकारी के अलावा मूल्यवान जानकारी भी होती है कि एक विशेष event हुई है।

<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** tab पर क्लिक करते हैं, तो हम उन सभी Events को देख सकते हैं जो [transaction के दौरान emit हुई थीं](https://dashboard.tenderly.co/tx/mainnet/0x98a8a99daec2823836ac155003ec7c798ded926a86e1c165716dd0d0ea5133a0)। और भी बेहतर बात यह है कि **event parameters पहले से ही decoded हैं और मानव-पठनीय format में दिखाए गए हैं**। hex strings को decode करने में समय बर्बाद करने की आवश्यकता नहीं है यह देखने के लिए कि क्या हुआ। आप Events को Name और Smart Contract के आधार पर filter भी कर सकते हैं।

### State Changes

जैसे-जैसे Smart Contracts अधिक जटिल होते जा रहे हैं, वैसे-वैसे उन smart contracts के states भी अधिक जटिल होते जा रहे हैं।

<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 न केवल उन state variables को दिखाता है जो बदले गए थे, बल्कि **आपकी सुविधा के लिए ये सभी decoded हैं**। **और हाँ, structures भी सही तरीके से decoded होते हैं**।

आप उस transaction और उसकी जटिलताओं को [यहाँ](https://dashboard.tenderly.co/tx/mainnet/0x98a8a99daec2823836ac155003ec7c798ded926a86e1c165716dd0d0ea5133a0) देख सकते हैं।

### Debugger

Stack traces को Debug करना किसी भी developer के workflow का एक महत्वपूर्ण हिस्सा है, स्थानीय रूप से और production में। **Debugger** tab पर क्लिक करके, आप अपने (या किसी अन्य) transaction के साथ जो कुछ भी हुआ उसमें गहराई से डुबकी लगा सकेंगे।

<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" />

**ऊपर दिखाया गया stack trace code की सटीक line दिखाता है जहाँ transaction विफल हुई**। वहाँ से, आप **Debug Error** पर क्लिक कर सकते हैं और तुरंत issue ढूँढ सकते हैं। देखें [**Tenderly Debugger का उपयोग कैसे करें**](/debugger/overview) और [**विफल transactions की जाँच**](/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" />

ऊपर की image में आप जो chart देख रहे हैं उसे flame graph कहा जाता है। यह CPU जैसे संसाधन के usage को दिखाने का एक सामान्य तरीका है। आप उपरोक्त उदाहरण [यहाँ](https://dashboard.tenderly.co/tx/mainnet/0x98a8a99daec2823836ac155003ec7c798ded926a86e1c165716dd0d0ea5133a0) पा सकते हैं।

प्रत्येक line उसके नीचे की lines की कुल लागत दिखाती है। यदि आप किसी भी lines (functions) पर क्लिक करते हैं, तो आप invoke किए गए functions की gas cost का विस्तृत breakdown देख सकते हैं।

<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" />

आप अंत में यह देख सकते हैं कि कौन से functions सबसे अधिक gas का उपयोग कर रहे हैं और optimize करने के लिए अपने code के सही हिस्सों को चुन सकते हैं।
