RequestFinishedInfo.Metrics

abstract class RequestFinishedInfo.Metrics


किसी एक अनुरोध के लिए इकट्ठा की गई मेट्रिक. इनमें से ज़्यादातर मेट्रिक, अनुरोध के पूरे समय के दौरान होने वाले इवेंट के टाइमस्टैंप होते हैं. इनका इस्तेमाल, परफ़ॉर्मेंस की जांच करने के लिए ज़्यादा जानकारी वाली टाइमलाइन बनाने के लिए किया जा सकता है.

इवेंट इस क्रम में होते हैं:

  1. request start
  2. DNS start
  3. DNS end
  4. connect start
  5. SSL start
  6. SSL end
  7. connect end
  8. sending start
  9. sending end
  10. response start
  11. request end
शुरू होने के समय को उस समय के तौर पर रिपोर्ट किया जाता है जब इवेंट पर अनुरोध ब्लॉक होना शुरू हुआ था. न कि उस समय के तौर पर जब इवेंट असल में हुआ था. हालांकि, पुश स्टार्ट और पुश एंड के मामले में ऐसा नहीं होता. अगर कोई मेट्रिक काम की नहीं है या उपलब्ध नहीं है, तो शुरू और खत्म होने का समय null होगा. ऐसा तब भी होता है, जब कोई अनुरोध उस चरण तक पहुंचने से पहले ही पूरा हो जाता है. अगर किसी इवेंट को ब्लॉक करने में कोई समय नहीं लगा है, तो शुरू और खत्म होने का समय एक ही होगा.

अगर अनुरोध के दौरान सिस्टम क्लॉक में बदलाव किया जाता है, तो हो सकता है कि java.util.Date की कुछ वैल्यू उससे मेल न खाएं. टाइमस्टैंप को ऐसी घड़ी का इस्तेमाल करके रिकॉर्ड किया जाता है जो कभी पीछे नहीं चलती. अनुरोध शुरू होने के समय, सिस्टम क्लॉक के हिसाब से सभी टाइमस्टैंप सही हैं. साथ ही, दो टाइमस्टैंप के बीच का अंतर निकालने पर, इवेंट के बीच का सही अंतर मिलेगा. इस प्रॉपर्टी को बनाए रखने के लिए, अनुरोध शुरू होने के अलावा अन्य इवेंट के टाइमस्टैंप, सिस्टम क्लॉक से मेल नहीं खाते.

टाइमिंग से जुड़ी ज़्यादातर मेट्रिक, LoadTimingInfo से ली जाती हैं. इसमें और की जानकारी होती है.

खास जानकारी

सार्वजनिक कंस्ट्रक्टर

सार्वजनिक फ़ंक्शन

abstract Date?

कनेक्शन बनने के बाद का समय दिखाता है.

abstract Date?

कनेक्शन शुरू होने का समय दिखाता है.

abstract Date?

यह फ़ंक्शन, डीएनएस लुकअप पूरा होने का समय दिखाता है.

abstract Date?

यह फ़ंक्शन, डीएनएस लुकअप शुरू होने का समय दिखाता है.

abstract Date?

यह कुकी, उस समय की जानकारी देती है जब HTTP/2 सर्वर पुश का आखिरी बाइट मिला था.

abstract Date?

यह कुकी, उस समय की जानकारी देती है जब एचटीटीपी/2 सर्वर पुश की पहली बाइट मिली थी.

abstract Long?

यह फ़ंक्शन, नेटवर्क ट्रांसपोर्ट लेयर पर मिले कुल बाइट दिखाता है. अगर यह डेटा इकट्ठा नहीं किया जाता है, तो null दिखाता है.

abstract Date?

अनुरोध पूरा होने का समय दिखाता है.

abstract Date?

अनुरोध शुरू होने का समय दिखाता है.

abstract Date?

जवाब के हेडर के आखिर में मिले समय की जानकारी देता है.

abstract Date?

अनुरोध भेजने की प्रोसेस पूरी होने का समय दिखाता है.

abstract Date?

अनुरोध भेजने की प्रोसेस शुरू होने का समय दिखाता है.

abstract Long?

यह फ़ंक्शन, नेटवर्क ट्रांसपोर्ट लेयर पर भेजे गए कुल बाइट दिखाता है. अगर यह डेटा इकट्ठा नहीं किया जाता है, तो null दिखाता है.

abstract Boolean

इससे यह पता चलता है कि सॉकेट का इस्तेमाल पिछले अनुरोध में किया गया था या नहीं.

abstract Date?

यह कुकी, एसएसएल हैंडशेक पूरा होने का समय दिखाती है.

abstract Date?

यह कुकी, एसएसएल हैंडशेक शुरू होने का समय दिखाती है.

abstract Long?

यह कुकी, अनुरोध शुरू होने और पूरा होने के बीच का समय (मिलीसेकंड में) दिखाती है. इसमें अनुरोध के पूरा न होने या रद्द होने का समय भी शामिल होता है. अगर यह जानकारी इकट्ठा नहीं की जाती है, तो null दिखता है.

abstract Long?

अनुरोध शुरू होने और जवाब के हेडर के पहले बाइट के बीच का समय, मिलीसेकंड में दिखाता है. अगर यह डेटा इकट्ठा नहीं किया गया है, तो null दिखाता है.

सार्वजनिक कंस्ट्रक्टर

मेट्रिक

Metrics()

सार्वजनिक फ़ंक्शन

getConnectEnd

abstract fun getConnectEnd(): Date?

कनेक्शन बनने के बाद का समय दिखाता है.

रिटर्न
Date?

java.util.Date यह कुकी, कनेक्शन कब पूरा हुआ, यह दिखाती है. यह टीसीपी कनेक्शन के बन जाने और एचटीटीपीएस का इस्तेमाल करने पर, एसएसएल हैंडशेक के पूरा होने के बाद सेट होती है. QUIC 0-RTT के लिए, यह हैंडशेक की पुष्टि होने का समय दिखाता है. यह getSendingStart के बाद हो सकता है. अगर सॉकेट का दोबारा इस्तेमाल किया गया हो, तो null (getSocketReused देखें).

getConnectStart

abstract fun getConnectStart(): Date?

कनेक्शन शुरू होने का समय दिखाता है.

रिटर्न
Date?

java.util.Date से पता चलता है कि कनेक्शन कब शुरू हुआ. आम तौर पर, यह डीएनएस रिज़ॉल्यूशन के खत्म होने के बाद शुरू होता है. अगर सॉकेट का दोबारा इस्तेमाल किया गया हो, तो null (getSocketReused देखें).

getDnsEnd

abstract fun getDnsEnd(): Date?

डीएनएस लुकअप पूरा होने का समय दिखाता है. यह और getDnsStart, दोनों ही नॉन-नल वैल्यू दिखाएंगे. इससे कोई फ़र्क़ नहीं पड़ता कि नतीजा डीएनएस सर्वर से मिला है या लोकल कैश मेमोरी से.

रिटर्न
Date?

java.util.Date से पता चलता है कि डीएनएस लुकअप कब पूरा हुआ. अगर सॉकेट का दोबारा इस्तेमाल किया गया हो, तो null (getSocketReused देखें).

getDnsStart

abstract fun getDnsStart(): Date?

यह फ़ंक्शन, डीएनएस लुकअप शुरू होने का समय दिखाता है. यह और getDnsEnd, दोनों ही नॉन-नल वैल्यू दिखाएंगे. इससे कोई फ़र्क़ नहीं पड़ता कि नतीजा डीएनएस सर्वर से मिला है या लोकल कैश मेमोरी से.

रिटर्न
Date?

java.util.Date से पता चलता है कि डीएनएस लुकअप कब शुरू हुआ. अगर सॉकेट का दोबारा इस्तेमाल किया गया हो, तो null (getSocketReused देखें).

getPushEnd

abstract fun getPushEnd(): Date?

यह कुकी, उस समय की जानकारी देती है जब HTTP/2 सर्वर पुश का आखिरी बाइट मिला था.

रिटर्न
Date?

java.util.Date से पता चलता है कि HTTP/2 सर्वर पुश का आखिरी बाइट कब मिला. null अगर सर्वर पुश का इस्तेमाल नहीं किया जाता है.

getPushStart

abstract fun getPushStart(): Date?

यह कुकी, उस समय की जानकारी देती है जब एचटीटीपी/2 सर्वर पुश की पहली बाइट मिली थी.

रिटर्न
Date?

java.util.Date से पता चलता है कि एचटीटीपी/2 सर्वर पुश का पहला बाइट कब मिला. null अगर सर्वर पुश का इस्तेमाल नहीं किया जाता है.

getReceivedByteCount

abstract fun getReceivedByteCount(): Long?

यह फ़ंक्शन, नेटवर्क ट्रांसपोर्ट लेयर पर मिले कुल बाइट दिखाता है. अगर यह डेटा इकट्ठा नहीं किया जाता है, तो null दिखाता है. बाइट की संख्या में, पिछले रीडायरेक्ट शामिल नहीं होते.

getRequestEnd

abstract fun getRequestEnd(): Date?

अनुरोध पूरा होने का समय दिखाता है.

रिटर्न
Date?

java.util.Date से अनुरोध पूरा होने का समय पता चलता है.

getRequestStart

abstract fun getRequestStart(): Date?

अनुरोध शुरू होने का समय दिखाता है.

रिटर्न
Date?

java.util.Date दिखाता है कि नेटिव अनुरोध कब शुरू हुआ. यह टाइमस्टैंप, उस समय सिस्टम क्लॉक से मैच करेगा.

getResponseStart

abstract fun getResponseStart(): Date?

जवाब के हेडर के आखिर में मिले समय की जानकारी देता है.

रिटर्न
Date?

java.util.Date से पता चलता है कि रिस्पॉन्स हेडर कब खत्म हुए.

getSendingEnd

abstract fun getSendingEnd(): Date?

अनुरोध भेजने की प्रोसेस पूरी होने का समय दिखाता है.

रिटर्न
Date?

java.util.Date यह दिखाता है कि एचटीटीपी अनुरोध की बॉडी भेजने का काम कब पूरा हुआ. (अनुरोध के हेडर भेजने के बाद, अनुरोध का मुख्य हिस्सा भेजा जाता है.)

getSendingStart

abstract fun getSendingStart(): Date?

अनुरोध भेजने की प्रोसेस शुरू होने का समय दिखाता है.

रिटर्न
Date?

java.util.Date से पता चलता है कि एचटीटीपी अनुरोध के हेडर कब भेजे जाने शुरू हुए.

getSentByteCount

abstract fun getSentByteCount(): Long?

यह फ़ंक्शन, नेटवर्क ट्रांसपोर्ट लेयर पर भेजे गए कुल बाइट दिखाता है. अगर यह डेटा इकट्ठा नहीं किया जाता है, तो null दिखाता है.

getSocketReused

abstract fun getSocketReused(): Boolean

इससे यह पता चलता है कि सॉकेट का इस्तेमाल पिछले अनुरोध में किया गया था या नहीं. अगर एचटीटीपी/2 या QUIC में, स्ट्रीम को एक ही कनेक्शन में मल्टीप्लेक्स किया जाता है, तो पहली स्ट्रीम के बाद की सभी स्ट्रीम के लिए true दिखाता है.

रिटर्न
Boolean

क्या इस अनुरोध में, पिछले अनुरोध के सॉकेट का फिर से इस्तेमाल किया गया है. जब true, तो डीएनएस, कनेक्शन, और एसएसएल के समय null होगा.

getSslEnd

abstract fun getSslEnd(): Date?

यह कुकी, एसएसएल हैंडशेक पूरा होने का समय दिखाती है. QUIC के लिए, यह समय getConnectEnd के बराबर होगा.

रिटर्न
Date?

java.util.Date से पता चलता है कि एसएसएल हैंडशेक कब पूरा हुआ. null अगर एसएसएल का इस्तेमाल नहीं किया गया है या सॉकेट का फिर से इस्तेमाल किया गया है (getSocketReused देखें).

getSslStart

abstract fun getSslStart(): Date?

यह कुकी, एसएसएल हैंडशेक शुरू होने का समय दिखाती है. QUIC के लिए, यह समय getConnectStart के बराबर होगा.

रिटर्न
Date?

java.util.Date यह बताता है कि एसएसएल हैंडशेक कब शुरू हुआ. null अगर एसएसएल का इस्तेमाल नहीं किया गया है या सॉकेट का फिर से इस्तेमाल किया गया है (getSocketReused देखें).

getTotalTimeMs

abstract fun getTotalTimeMs(): Long?

यह कुकी, अनुरोध शुरू होने और पूरा होने के बीच का समय (मिलीसेकंड में) दिखाती है. इसमें अनुरोध के पूरा न होने या रद्द होने का समय भी शामिल होता है. अगर यह जानकारी इकट्ठा नहीं की जाती है, तो null दिखता है. TODO(mgersh): Remove once new API works http://crbug.com/629194

getTtfbMs

abstract fun getTtfbMs(): Long?

अनुरोध शुरू होने और जवाब के हेडर के पहले बाइट के बीच का समय, मिलीसेकंड में दिखाता है. अगर यह डेटा इकट्ठा नहीं किया गया है, तो null दिखाता है. TODO(mgersh): Remove once new API works http://crbug.com/629194