प्लैटफ़ॉर्म का लॉग इकट्ठा करने की सुविधा

Google Health API, Cloud Logging के साथ इंटिग्रेट होता है. इससे तीसरे पक्ष के क्लाइंट को वेबहुक सूचनाओं की डिलीवरी की स्थिति और नतीजों के बारे में ज़्यादा जानकारी मिलती है. इस लॉगिंग इंटिग्रेशन की मदद से, क्लाइंट अपने रजिस्टर किए गए एंडपॉइंट पर डेटा की डिलीवरी की निगरानी कर सकते हैं, उसकी समस्या हल कर सकते हैं, और उसकी विश्वसनीयता की पुष्टि कर सकते हैं.

खास जानकारी

जब Google Health प्लैटफ़ॉर्म पर, काम का उपयोगकर्ता का डेटा बदलता है, तो प्लैटफ़ॉर्म, तीसरे पक्ष के क्लाइंट के पहले से रजिस्टर किए गए एंडपॉइंट पर एचटीटीपी अनुरोध के तौर पर वेबहुक सूचना भेजता है. प्लैटफ़ॉर्म लॉगिंग, डिलीवरी की इन कोशिशों की लेन-देन की जानकारी कैप्चर करता है. इसमें एचटीटीपी स्टेटस कोड, हेडर, और रिस्पॉन्स पेलोड शामिल होते हैं. साथ ही, यह जानकारी अपने-आप क्लाइंट के Google Cloud प्रोजेक्ट पर भेज दी जाती है.

Cloud Logging के लॉग एंट्री के बारे में ज़्यादा जानने के लिए, Cloud Logging प्लैटफ़ॉर्म के लॉग एंट्री से जुड़ा दस्तावेज़ देखें.

मॉनिटर किया गया रिसॉर्स

Cloud Logging में, लॉग एंट्री को मॉनिटर किए गए रिसॉर्स के तहत ग्रुप किया जाता है. Google Health API के लिए, वेबहुक सूचना की लॉग एंट्री, सदस्य के हर इंस्टेंस के रिसॉर्स टाइप से जुड़ी होती हैं:

  • रिसॉर्स टाइप: health.googleapis.com/Subscriber

हर लॉग एंट्री को लेबल किया जाता है, ताकि प्रभावित सदस्य के इंस्टेंस की यूनीक पहचान की जा सके. इसके लिए, इन लेबल का इस्तेमाल किया जाता है:

  • resource_container: Google Cloud प्रोजेक्ट आईडी (या संगठन का आईडी या फ़ोल्डर आईडी), जिसके पास सदस्य के रिसॉर्स का मालिकाना हक है.
  • subscriber_id: सदस्य के बनने पर, क्लाइंट की ओर से असाइन किया गया यूनीक सदस्य आईडी.
  • स्थान: इसे global पर सेट किया जाता है, क्योंकि सदस्य की परिभाषाएं, इलाके के हिसाब से अलग-अलग नहीं होती हैं.

इन लेबल की मदद से, Google Cloud Console के लॉग एक्सप्लोरर में, किसी एक सदस्य के लिए खास तौर पर लॉग एंट्री के बारे में क्वेरी की जा सकती है और उन्हें फ़िल्टर किया जा सकता है.

लॉग का स्ट्रक्चर और जानकारी

  • लॉग का नाम: projects/<PROJECT_ID>/logs/health.googleapis.com%2Fwebhook_notification
  • पेलोड टाइप: इसमें WebhookNotificationCloudLog स्ट्रक्चर शामिल होता है. इसमें डिलीवरी की कोशिश की google.rpc.HttpResponse की जानकारी रैप की जाती है.
  • लॉग के लेबल:
    • dataType: सदस्यता से जुड़ा डेटा टाइप. उदाहरण के लिए, NUTRITION, SLEEP.

लॉग एंट्री फ़िल्टर करना

क्वेरी का इस्तेमाल करके, लॉग एक्सप्लोरर में वेबहुक की लॉग एंट्री फ़िल्टर की जा सकती हैं. उदाहरण के लिए, वेबहुक की डिलीवरी से जुड़ी सभी लॉग एंट्री ढूंढने के लिए:

resource.type="health.googleapis.com/Subscriber"
logName="projects/<PROJECT_ID>/logs/health.googleapis.com%2Fwebhook_notification"

अपनी खोज को किसी खास सदस्य या डेटा टाइप तक सीमित करने के लिए, फ़िल्टर करने के अन्य मानदंड जोड़े जा सकते हैं:

resource.labels.subscriber_id="YOUR_SUBSCRIBER_ID"
labels.dataType="SLEEP"