अपाचे की पहुंच लॉग को समझना


134

मेरे एक्सेस लॉग से इस पंक्ति की प्रत्येक चीज़ का क्या अर्थ है?

127.0.0.1 - - [05 / फ़रवरी / 2012: 17: 11: 55 +0000] "GET / HTTP / 1.1" 200 140 "-" "मोज़िला / 5.0 (विंडोज NT 6.1; WOW64) AppleWebKit / 535.19 (KHTML, like; गेको) क्रोम / 18.0.1025.5 सफारी / 535.19 "

जवाबों:


237

आप संयुक्त लॉग प्रारूप का उपयोग कर रहे हैं ।

LogFormat "% h% l% u% t \"% r \ "%> s% b \"% {Referer} i \ "\"% {उपयोगकर्ता-एजेंट} i \ "" संयुक्त

  • % h दूरस्थ होस्ट है (यानी क्लाइंट IP)
  • % l पहचानकर्ता द्वारा निर्धारित उपयोगकर्ता की पहचान है (आमतौर पर विश्वसनीय नहीं होने के बाद से उपयोग किया जाता है)
  • % u, HTTP प्रमाणीकरण द्वारा निर्धारित उपयोगकर्ता नाम है
  • % t अनुरोध प्राप्त होने का समय है।
  • % r क्लाइंट से रिक्वेस्ट लाइन है। ("GET / HTTP / 1.0")
  • %> s सर्वर से क्लाइंट (200, 404 आदि) के लिए भेजा गया स्थिति कोड है
  • % b ग्राहक की प्रतिक्रिया का आकार है (बाइट्स में)
  • रेफ़र HTTP अनुरोध (पृष्ठ का URL जिसमें से यह अनुरोध आरंभ किया गया था) से संबंधित रेफ़र हैडर यदि कोई मौजूद है, और "-"अन्यथा।
  • उपयोगकर्ता-एजेंट ब्राउज़र पहचान स्ट्रिंग है।

फ़ॉर्मेटर्स की पूरी (?) सूची यहां पाई जा सकती है । प्रलेखन का एक ही खंड अन्य सामान्य लॉग प्रारूपों को भी सूचीबद्ध करता है; जिन पाठकों के लॉग इस तरह से नहीं दिखते हैं वे पा सकते हैं कि पैटर्न उनके अपाचे कॉन्फ़िगरेशन को वहां सूचीबद्ध किया गया है।


मैं सोच रहा हूं कि उपयोगकर्ता-एजेंट के बाद आखिरी में संख्या का आंकड़ा (19) क्या हो सकता है।
ivanceras

2
@ivanceras 535.19वेबकिट संस्करण का उपयोग किया जाता है, इसलिए यह उपयोगकर्ता एजेंट स्ट्रिंग का एक हिस्सा है (और इसे उपयोगकर्ता एजेंट वाले उद्धरणों के अंदर भी रखा गया है)
Joachim Isaksson

4
मेरे पास उपयोगकर्ता-एजेंट के बाद 4 अतिरिक्त क्षेत्र हैं, जैसे: ... "मोज़िला / 5.0 (विंडोज एनटी 5.1; आरवी: 16.0) गेको / 20100101 फ़ायरफ़ॉक्स / 16.0" 369 74500 - 567 वे क्या संकेत देते हैं?
मेरा खाता_राम

9

मैं भी लॉग के 200 140 अनुभाग के बाद "-" का अर्थ है कि स्टैंड के नीचे नहीं है

यह मूल्य जोकर द्वारा वर्णित के रूप में संदर्भित करने वाले से मेल खाती है। यदि आप हालांकि एक डैश देखते हैं, तो इसका मतलब है कि इसके साथ शुरू करने के लिए कोई संदर्भ मूल्य नहीं था (उदाहरण के लिए, उपयोगकर्ता सीधे एक विशिष्ट गंतव्य पर गया, जैसे कि उसने अपने ब्राउज़र में एक URL टाइप किया है)


7

और " मोज़िला / 5.0 (विंडोज NT 6.1; WOW64) AppleWebKit / 535.19 (KHTML, जैसे गेको) क्रोम / 18.0.1025.5 सफारी / 535.19 " का क्या अर्थ है?

यह उपयोगकर्ता-एजेंट, ब्राउज़र पहचान स्ट्रिंग का मूल्य है।

इस कारण से, अधिकांश वेब ब्राउज़र उपयोगकर्ता-एजेंट स्ट्रिंग मान का उपयोग करते हैं:

मोज़िला / [संस्करण] ([सिस्टम और ब्राउज़र जानकारी]) [प्लेटफ़ॉर्म] ([प्लेटफ़ॉर्म विवरण]) [एक्सटेंशन]। उदाहरण के लिए, iPad पर Safari ने निम्नलिखित का उपयोग किया है:

मोज़िला / 5.0 (iPad; यू; सीपीयू ओएस 3_2_1 मैक ओएस एक्स की तरह; en-us) AppleWebKit / 531.21.10 (KHTML, जैसे गेको) मोबाइल / 7B405 इस स्ट्रिंग के घटक इस प्रकार हैं।

मोज़िला / 5.0: पहले मोज़िला रेंडरिंग इंजन के साथ संगतता का संकेत देता था। (iPad; यू; सीपीयू ओएस 3_2_1 जैसे मैक ओएस एक्स; एन-यू): सिस्टम का विवरण जिसमें ब्राउज़र चल रहा है। AppleWebKit / 531.21.10: ब्राउज़र जिस प्लेटफॉर्म का उपयोग करता है। (KHTML, Gecko की तरह): ब्राउज़र प्लेटफ़ॉर्म विवरण। मोबाइल / 7 बी 405: इसका उपयोग ब्राउज़र द्वारा विशिष्ट संवर्द्धन को इंगित करने के लिए किया जाता है जो सीधे ब्राउज़र में या तीसरे पक्ष के माध्यम से उपलब्ध होते हैं। इसका एक उदाहरण Microsoft लाइव मीटिंग है जो एक एक्सटेंशन को पंजीकृत करता है ताकि लाइव मीटिंग सेवा को पता चल सके कि सॉफ्टवेयर पहले से ही स्थापित है, जिसका अर्थ है कि यह मीटिंग्स में शामिल होने के लिए एक सुव्यवस्थित अनुभव प्रदान कर सकता है।

यह मान इस बात के लिए इस्तेमाल किया जाएगा कि एंड यूज़र द्वारा किस ब्राउज़र का उपयोग किया जा रहा है।

देखें


मेरे लोड संतुलित वातावरण पर, जिसमें एक अपाचे लोड बैलेंसर सर्वर के पीछे छिपे हुए 4 सेवारत नोड्स हैं। हाल ही में मुझे अनुपलब्धता के मुद्दे मिल रहे हैं। डिबगिंग के दौरान, मैंने अपने लोड बैलेंसर पर 504 स्टेटस के साथ एक्सेस लॉग पाया। जो इस तरह दिखता है। {इप पता} - - [दिनांक] "POST url http / 1.1" 504 247 "-" "-" अब मुझे संदेह है कि मेरे 4 एप्लिकेशन सर्वर नोड्स में से एक बार और फिर अन्य लोगों को टाइमआउट दे रहा है। लेकिन ये लॉग कोई सुराग नहीं देता है कि अनुरोध किस सर्वर को भेजा गया था और समय समाप्त हो गया था। मैं उस नोड का आईपी कैसे लॉग कर सकता हूं जिसके लिए एक अनुरोध भेजा जा रहा है।
प्रॉफसर

मैं निम्नलिखित विकल्पों पर जोर दूंगा a) सक्षम करें और लोड बैलेंसर लॉग को देखता है b) अपने प्रत्येक vm के लिए मेमोरी उपयोग, CPU, IO की जांच करें और देखें कि क्या वे सभी समान हैं। ग) किसी दिन में प्रत्येक vm के लिए अनुरोधों की संख्या की गणना करें। वे चारों ओर एक ही होना चाहिए। यदि लोड नहीं होता है तो बैलेंसर उस सर्वर को पिंग का जवाब नहीं दे सकता है और इसीलिए अनुरोध नहीं भेज रहा है।
vsingh
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.