मैं वास्तविक दुनिया लोड परीक्षण करने के लिए अपाचे एक्सेस लॉग को अपने सर्वर पर कैसे पुनः चला सकता हूं?


13

मैंने HTTP सर्वरों को लोड-टेस्टिंग के लिए देखा ? लेकिन मैं यह नहीं देख सकता था कि उन उपकरणों में से किसी में अपने मौजूदा लॉग को कैसे फिर से खेलना है। मेरे पास एक बग है जो केवल कुछ लोड संचालन के तहत होता है जो मेरे मौजूदा जेमीटर और एबी परीक्षण सामान को पुन: पेश नहीं कर सकता है।

मैं बस उपकरण access_logs देना चाहता हूँ और यह उन्हें वापस खेल रहा है, या तो तेज या उसी गति से।

जवाबों:


14

आप Jmeter के एक्सेस लॉग सैम्पलर घटक का उपयोग कर सकते हैं ।

इस पीडीएफ में इसका उपयोग करने के लिए एक छोटा ट्यूटोरियल है ।


3
मैंने यह कोशिश की और जाहिर है कि मुझे एक मूर्ख होना चाहिए क्योंकि मैं इसे अच्छी तरह से काम नहीं कर सका। मैंने pomthon
Stewart Robinson

चूँकि मूल लिंक मृत है, यहाँ
आर्काइव.ऑर्ग

ठीक है, अगर कुछ अन्य लोगों ने पाया, तो इस स्क्रिप्ट में थ्रेडिंग की समस्या है। एक बदलना पड़ सकता है threadके साथ lib threadinglib ( stackoverflow.com/questions/19558401/... )
Walty Yeung

1

मान लें कि आपके एक्सेस लॉग में आपके द्वारा प्राप्त सभी GET अनुरोध हैं, और आपको लॉग में टाइमस्टैम्प के रिज़ॉल्यूशन की सीमा पर किए गए अनुरोधों से कोई आपत्ति नहीं है, $ SCRIPTING_LANGUAGE की लगभग 10 लाइनें ट्रिक को करना चाहिए। POST, कूकीज, HTTP ऑर्थोरिटी, और अधिक सूक्ष्म समय एक और अधिक दिलचस्प व्यायाम है।


-1

इसके लिए एक प्रोग्राम की आवश्यकता होगी, जैसे कि लोड-टेस्टिंग ऐप, जो http लॉग रिप्ले का समर्थन करता है। ऐसा ही एक ऐप है HTTPerf ( https://github.com/httperf/httperf )।

Https://www.igvita.com/2008/09/30/load-testing-with-log-repl/ पर कैसा-कैसे लेख है


1
यह एक बेहतर स्पष्टीकरण होगा यदि इसमें वास्तविक स्पष्टीकरण शामिल है। बस एक बाहरी वेब साइट से जुड़ने को यहां हतोत्साहित किया जाता है, क्योंकि वेब साइटें अक्सर गायब हो सकती हैं।
माइकल हैम्पटन

-2

मैं कुछ अलग तरह से करता। मुझे आपका प्रश्न समझ में आ रहा है, लेकिन यदि आप अपने सर्वर को लोड करते हुए देख रहे हैं, तो आप 'ab' टूल को देखना चाहेंगे। यह अपाचे के अधिकांश प्रतिष्ठानों के साथ आता है। चल रहा है:

ab -c 15 -n 1000 http://site.name/

एक बार में 15 अनुरोध करते हुए 1000 अनुरोध करेंगे। मुझे पता है कि यह वही नहीं है जो आपकी तलाश में है, और यह केवल आपके द्वारा दिए गए पते को क्वेरी करेगा। यदि आपको लोड करने की आवश्यकता है तो यह एक त्वरित तरीका है और इसे करने का सरल तरीका है, और यह आपको डिबगिंग के लिए संभावित रूप से बहुत उपयोगी आंकड़े देगा।


यदि प्रश्न कहता है "मेरे पास एक बग है [...] एबी परीक्षण [...] पुन: पेश नहीं कर सकता है", तो आप एबी का उपयोग करने का सुझाव क्यों देंगे?
Womble

मुझे याद आया कि एबी उपकरण में सूचीबद्ध है। : p मुझे यह कहना पसंद था कि यह एक संपादन था, लेकिन मैं ईमानदारी से खुद पर यकीन नहीं कर रहा हूं।
ट्रू डिडैलिटी

-2

आप अपना खुद का विकास क्यों नहीं करते? लॉग प्राप्त करें; इसे पार्स करें। URI प्राप्त करें। कर्ल कॉल करें। आप इसे php में लिख सकते हैं और इसे concurrency के लिए apache में चला सकते हैं।

यदि आपके लॉग जीजी प्रारूप में हैं, तो एक zcat करें, रीडलॉग सुविधा का उपयोग करें। जो URL देगा। अब URL को हिट करने के लिए phpCurl का उपयोग करें। उच्च थ्रूपुट के लिए इसे अपाचे में चलाएं (इसे लोड करने के लिए एब का उपयोग करें)।


1
फिर मेरे पास परीक्षण लोड करने के लिए दो आवेदन होंगे। वह मुड़ जाएगा।
स्टीवर्ट रॉबिन्सन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.