पोस्टमैन मॉक सर्वर बनाएँ
यह गाइड बताती है कि प्रदान की गई Postman सैंपल फ़ाइलों का उपयोग करके Datadog Log Ingestion एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस (API) को स्थानीय रूप से कैसे सिम्युलेट किया जाए। आप बिना किसी लाइव Datadog खाते में डेटा भेजे, अनुरोध स्वरूपों को सत्यापित कर सकते हैं, त्रुटि प्रतिक्रियाओं का परीक्षण कर सकते हैं, और हैंड्स-ऑन गाइड के उदाहरणों का पालन कर सकते हैं।
पूर्वापेक्षाएँ
-
पोस्टमैन (डेस्कटॉप या वेब संस्करण)।
-
इस प्रोजेक्ट के साथ तीन JSON फ़ाइलें शामिल हैं:
फ़ाइल उद्देश्य DataPipeline-Environment.jsonपुन: प्रयोज्य चर को परिभाषित करता है: dd_site,mock_base_url, औरdd_api_key.DataPipeline-postman-collection.jsonDatadog Log Ingestion API ( /api/v2/logs) को वास्तविक अनुरोध भेजता है।DataPipeline-MockServer-Collection.jsonएक Postman मॉक सर्वर का उपयोग करके उन्हीं एंडपॉइंट्स के लिए मॉक प्रतिक्रियाओं को कॉन्फ़िगर करता है।
तीनों फ़ाइलें डाउनलोड करें: पोस्टमैन फ़ाइलें डाउनलोड करें.
1. पोस्टमैन में फ़ाइलें आयात करें
- पोस्टमैन खोलें और Import पर क्लिक करें।
- एक साथ सभी तीन डाउनलोड की गई JSON फ़ाइलों का चयन करें।
- ऊपरी-दाएँ वातावरण मेनू से, Data Pipeline Environment चुनें।
फ़ाइलें इम्पोर्ट करने के बाद, निम्नलिखित आइटम दिखाई देते हैं:
- Data Pipeline Documentation Project (वास्तविक API संग्रह)।
- Data Pipeline — Mock Server Collection।
- डेटा पाइपलाइन एनवायरनमेंट।
2. मॉक सर्वर बनाएँ
- Postman में, बाएँ साइडबार में Mock Servers पर जाएँ।
- Create Mock Server पर क्लिक करें।
- Data Pipeline—Mock Server Collection चुनें।
- डिफ़ॉल्ट सेटिंग्स रखें और Create Mock Server पर क्लिक करें।
पोस्टमैन एक अद्वितीय मॉक सर्वर पता उत्पन्न करता है, उदाहरण के लिए:
https://a12b34cd-1234-5678.mock.pstmn.io
3. एनवायरनमेंट वेरिएबल को अपडेट करें
- Go to Environments > Data Pipeline Environment.
- Find the
mock_base_urlvariable. - Replace the placeholder with your generated mock server address:
# पहले
https://mock-server-url-from-postman.io
# बाद में
https://a12b34cd-1234-5678.mock.pstmn.io
- Save the environment.
4. अपनी पहली मॉक रिक्वेस्ट भेजें
- मॉक सर्वर कलेक्शन के अंदर POST /api/v2/logs खोलें।
- ऊपरी-दाएँ मेनू में डेटा पाइपलाइन एनवायरनमेंट सक्रिय है, यह पुष्टि करें।
- Send पर क्लिक करें।
मॉक सर्वर एक सिम्युलेटेड 202 Accepted प्रतिक्रिया देता है, जो वास्तविक
Datadog प्रतिक्रिया की नकल करता है:
HTTP/1.1 202 Accepted
नोट: असली Datadog Log Ingestion API बिना किसी रिस्पॉन्स बॉडी के
202 Acceptedलौटाता है। मॉक कलेक्शन टेस्टिंग के दौरान पठनीयता के लिए एक न्यूनतम JSON ऑब्जेक्ट लौटाता है:
{
"status": "accepted",
"message": "मॉक सर्वर द्वारा लॉग इवेंट प्राप्त हुआ।"
}
5. एक त्रुटि प्रतिक्रिया का परीक्षण करें
400 bad request प्रतिक्रिया का परीक्षण करने के लिए, अनुरोध बॉडी से message फ़ील्ड को हटा दें।
यह फ़ील्ड Datadog Log Ingestion API में आवश्यक है।
मॉक सर्वर निम्नलिखित JSON लौटाता है:
{
"errors": ["Invalid JSON"]
}
आप अनुरोध से DD-API-KEY हेडर को हटाकर 401 unauthorized प्रतिक्रिया का भी परीक्षण कर सकते हैं।
6. लाइव और मॉक परीक्षण के बीच स्विच करें
दोनों कलेक्शन एक ही एनवायरनमेंट फ़ाइल का उपयोग करते हैं। वास्तविक और मॉक परीक्षण के बीच स्विच करने के लिए, आप जिस कलेक्शन का उपयोग करते हैं उसे बदलें:
| लक्ष्य | कलेक्शन | बेस एड्रेस वेरिएबल |
|---|---|---|
| वास्तविक Datadog के साथ परीक्षण करें | DataPipeline-postman-collection.json | {{dd_site}} → datadoghq.com |
| स्थानीय रूप से या ऑफ़लाइन परीक्षण करें | DataPipeline-MockServer-Collection.json | {{mock_base_url}} → आपका मॉक पता |
यह दृष्टिकोण आपको अपने Datadog खाते में लाइव डेटा भेजने से पहले अनुरोध और प्रतिक्रिया स्वरूपों को सत्यापित करने की अनुमति देता है।
अनुरोध प्रवाह का दृश्यीकरण
- Mermaid (छवि)
- Mermaid (कोड)
- ASCII
sequenceDiagram
participant Dev as Postman (उपयोगकर्ता)
participant Mock as Postman मॉक सर्वर
participant Resp as मॉक प्रतिक्रिया
Dev->>Mock: POST /api/v2/logs
Note right of Dev: हेडर: DD-API-KEY, Content-Type
Note right of Dev: बॉडी: JSON लॉग एरे
Mock-->>Resp: सहेजे गए उदाहरणों के विरुद्ध मूल्यांकन करें
Resp-->>Dev: 202 Accepted या 400/401 त्रुटि लौटाएँ
+-----------------------+ +-----------------------+
| Postman | POST /api/v2/logs | मॉक सर्वर |
| (क्लाइंट) | --------------------> | |
| | | उदाहरणों के विरुद्ध |
| - DD-API-KEY हेडर | | अनुरोध का मूल्यांकन |
| - JSON लॉग बॉडी | <-------------------- | करें |
| | 202 / 400 / 401 | |
+-----------------------+ +-----------------------+
यह क्यों मायने रखता है
यह मॉक सर्वर सेटअप उसी सत्यापन पैटर्न को प्रदर्शित करता है जिसका उपयोग आप एक वास्तविक एपीआई एकीकरण को विकसित या प्रलेखित करते समय करते हैं:
- लाइव ट्रैफ़िक भेजने से पहले रिक्वेस्ट की संरचना और आवश्यक हेडर (
DD-API-KEY,Content-Type) को सत्यापित करें। - JSON पेलोड का मिलान अपेक्षित स्कीमा से होता है—लॉग ऑब्जेक्ट्स की एक श्रृंखला, जिनमें से प्रत्येक में एक
messageफ़ील्ड होता है। - त्रुटि प्रबंधन का परीक्षण करें (
400,401,429) बिना API कोटा का उपयोग किए या प्रोडक्शन लॉग इंडेक्स को दूषित किए। - एक स्थिर, पुन: उत्पन्न करने योग्य एंडपॉइंट के विरुद्ध दस्तावेज़ीकरण के उदाहरण विकसित करें और सत्यापित करें।
गैलीलियो सॉफ़्टवेयर डेवलपमेंट किट (SDK) का दस्तावेज़ीकरण करते समय भी यही पैटर्न लागू होता है। आप प्रोडक्शन में बढ़ाने से पहले एक dev लॉग स्ट्रीम में इंस्ट्रूमेंट किए गए फ़ंक्शनों का परीक्षण करते हैं, यह सुनिश्चित करते हुए कि वास्तविक उपयोगकर्ता ट्रैफ़िक के प्रवाहित होने से पहले आप मूल्यांकन मेट्रिक्स को सही ढंग से कॉन्फ़िगर करें।