Skip to main content
Project-scoped Destinations केवल उसी project के भीतर सुलभ हैं जिसमें उन्हें बनाया गया था।

Web3 Actions

इस प्रकार के alert destination का मतलब है कि आपकी action का उपयोग alert के लिए destination के रूप में किया जाएगा।
example.yaml
एक ही action का उपयोग कई alerts के लिए destination के रूप में किया जा सकता है। अधिक जानकारी के लिए, इस और सामान्य रूप से Web3 Actions के बारे में अधिक पढ़ें

Webhooks

यह alert destination alert ट्रिगर होने पर आपके webhook को निष्पादित करने की अनुमति देता है। आपके webhook को एक signed payload प्राप्त होगा, जिसमें वह transaction object होगा जिसने alert को ट्रिगर किया।
Webhook को alert destination के रूप में जोड़ने के बाद, आप इसे अन्य alerts के लिए destination के रूप में उपयोग कर सकते हैं।

How to use Webhooks for Alerting

webhook की आवश्यकताएँ:

  • यह webhook URL पर पहुंच योग्य अवश्य होना चाहिए: webhook जोड़ते समय, Tenderly पहुंच सत्यापित करने के लिए एक GET request भेजता है। कोई भी HTTP response verification पास करता है; verification केवल transport errors (DNS, TCP, TLS, या 2 सेकंड के भीतर कोई response नहीं) पर विफल होता है।
  • इसे उसी webhook URI के साथ एक POST method अवश्य उजागर करना चाहिए। Webhook को नीचे वर्णित payload प्राप्त होगा।
  • जब तक webhook 10 सेकंड के भीतर 2xx status के साथ response नहीं देता, delivery विफल मानी जाती है।
  • webhook URL के लिए HTTPS का उपयोग करने की दृढ़ता से अनुशंसा की जाती है।
Webhook को 10 सेकंड के भीतर 2xx status के साथ response देना चाहिए। यदि उस समय-सीमा में कोई response नहीं है, तो delivery विफल मानी जाती है।
Tenderly सभी निष्पादनों का ट्रैक रखता है। Webhook निष्पादन के कई statuses हो सकते हैं:
  • Success - इंगित करता है कि webhook सफलतापूर्वक निष्पादित किया गया था और event को निर्दिष्ट URL पर वितरित किया गया था
  • Failed - इंगित करता है कि किसी error के कारण webhook को निष्पादित नहीं किया जा सका, जैसे कि connectivity समस्या, URL के साथ समस्या, या कुछ और (यह देखने के लिए कि error का कारण क्या था, response content जांचें या हमारे support से संपर्क करें)
  • Pending - इंगित करता है कि webhook निष्पादित होने की प्रक्रिया में है और अभी तक पूरा नहीं हुआ है
  • Retry - इंगित करता है कि webhook निष्पादन विफल हो गया और पुनः प्रयास किया जाएगा; एक event कुल अधिकतम 5 प्रयासों में deliver होता है, जिसके बाद status Success या Failed पर स्थिर हो जाता है
  • Skipped - इंगित करता है कि webhook निष्पादित नहीं किया गया था क्योंकि यह disabled था

Webhook payload

webhook को alerting event का प्रतिनिधित्व करने वाला payload प्राप्त होगा। payload में चार fields होते हैं:
  • id: String - सभी delivered alert events में अद्वितीय ID (UUID)।
  • event_type: TEST | ALERT - webhook event type का प्रकार।
  • alert_id: String - उस alert का ID जिसके rule ने यह event trigger किया। TEST events के लिए खाली।
  • transaction: Object - एक un-decoded transaction का प्रतिनिधित्व करने वाला object जिसने alert और webhook निष्पादन को ट्रिगर किया।
Webhook को alert destination के रूप में जोड़ने पर, इसे TEST alert event type के साथ invoke किया जाएगा।
यह सुनिश्चित करने के लिए id field का उपयोग करें कि आपका webhook प्रत्येक alert event को ठीक एक बार process करता है, process किए गए IDs का ट्रैक रखकर।

Webhook को सुरक्षित करना

आप signature validation method का उपयोग करके अपने webhooks की सुरक्षा बढ़ा सकते हैं। इस तरह, आप निष्पादन के साथ आगे बढ़ने से पहले सत्यापित कर सकते हैं कि webhook की request Tenderly से उत्पन्न हुई है। x-tenderly-signature header में एक cryptographic signature होता है: signing secret को key के रूप में उपयोग करके request payload और उसके बाद timestamp पर गणना किया गया HMAC-SHA256 digest। timestamp request के Date HTTP header में delivered होता है।
Signing Secret प्रत्येक webhook destination के लिए अद्वितीय है। Tenderly इस secret को उत्पन्न करता है और इसका उपयोग payload के लिए signature उत्पन्न करने के लिए करता है। इसे सुरक्षित स्थान पर रखें।
चरण 1. Secret Signing Secret प्राप्त करें।
Copying secret signing key

Copying secret signing key

चरण 2. प्राप्त signature को validate करें प्राप्त signature को validate करने के लिए, signing secret को key के रूप में उपयोग करके HMAC-SHA256 digest की गणना करें, इस क्रम में input देते हुए:
  1. संपूर्ण webhook request payload,
  2. timestamp (request के Date header से)।
अंत में, hex-encoded digest की तुलना x-tenderly-signature header के मान से करें।
example.go

Webhook निष्पादनों का Debugging

webhook की खराबी के debugging का समर्थन करने के लिए, आप किसी भी network से मौजूदा transactions के आधार पर manually TEST events भेज सकते हैं चरण 1. webhooks पेज के navigation bar में “Test Webhook” पर क्लिक करें।
Webhook overview

Webhook overview

चरण 2. एक transaction का hash पेस्ट करें जो आपके alert के trigger से मेल खाता है
Testing webhook: paste the transaction hash

Testing webhook: paste the transaction hash

चरण 3. पुष्टि करने और test event भेजने के लिए “Test Webhook” पर क्लिक करें। आपका webhook आपके द्वारा पेस्ट किए गए hash के अनुरूप transaction के साथ, और TEST के event_type के साथ invoke किया जाएगा। आपको उस निष्पादन का overview प्रस्तुत किया जाएगा।
Result of a manual (test) execution of a webhook

Result of a manual (test) execution of a webhook