Select any text and click on the icon to listen!

अतुल गवांडे

मनुष्य के चिकित्सीय इतिहास में संक्रमण को समाप्त या कम करने में हाथ धोने के महत्व का वर्णन करता है यह लेख। समझ में आता है कि यह एक आसान-सा दिखने वाला कदम उठाने में हमें कितना लम्बा समय लगा और किस-किस तरह के विरोध का सामना करना पड़ा।  स्वाभाविक  और  बेहद  ज़रूरी  होने  के  बावजूद  आज  भी अस्पतालों में इस लाज़िमी कदम में हम अक्सर चूक कर जाते हैं, जो कई मरीज़ों के लिए जानलेवा साबित हो सकता है।
इस  लेख  का  फोकस  ज़रूर  बैक्टीरिया-जनित  संक्रमण  हैं, परन्तु वायरस-जनित संक्रमण के लिए भी यह लेख और यह उपाय उतना ही मौजूँ है - जैसा कि आज सार्स-कोव-2 वायरस की महामारी के दौर में स्पष्ट है कि इसका फैलाव रोकना है तो तीन महत्वपूर्ण उपायों - मुँह-नाक ढँककर रखना, हाथ धोना और शारीरिक दूरी बनाए रखना - में से यह एक है।

दिसम्बर के एक सामान्य दिन मैंने संक्रामक रोग विशेषज्ञ डेबोराह योकोइ (Deborah Yokoe) और सूक्ष्म जीवविज्ञानी सूज़न मैरिनो (Susan Marino) के साथ अपने अस्पताल का दौरा किया। ये दोनों हमारे अस्पताल की संक्रमण-नियंत्रण इकाई में काम करती हैं। उनका और इस इकाई के तीन और लोगों का पूर्णकालिक काम है अस्पताल में संक्रमण को फैलने से रोकना। यह कोई चमक-दमक वाला काम नहीं है और न ही ये चमक-दमक वाले लोग हैं। योकोइ 45 साल की हैं, नर्म आवाज़ वाली, और गालों पर हिलकोरे वाली। खेल वाले जूते (स्नीकर) पहनकर काम पर आती हैं। मैरिनो 50 के दशक में हैं और स्वभाव से गम्भीर-संकोची हैं। परन्तु इन्होंने इंफ्लुएंज़ा की महामारी का सामना किया है, और लेजिनेयर्स रोग का, जानलेवा बैक्टीरियाई मेनिंजाइटिस का। और, कुछ ही महीने पहले, एक ऐसा केस जो मरीज़ के मस्तिष्क के बायोप्सी नतीजों के आधार पर, क्रूट्ज़फेल्ड जेकब रोग हो सकता है – एक दुःस्वप्न – न सिर्फ इसलिए कि यह लाइलाज और जानलेवा रोग है, परन्तु इसलिए भी क्योंकि प्रायन नामक जिस संक्रामक एजेंट की वजह से यह होता है, उसे सामान्य ताप-शुद्धीकरण (heat-sterilization) विधियों से मारा नहीं जा सकता। जब तक (टेस्ट के) नतीजे आए, न्यूरोसर्जन के मस्तिष्क की बायोप्सी के औज़ारों से रोग अन्य मरीज़ों तक भी पहुँच सकता था, परन्तु संक्रमण नियंत्रण टीम के सदस्यों ने वक्त रहते उन औज़ारों को ढूँढ़ निकाला और उनका रासायनिक स्टरलाइज़ेशन करवाया।

योकोइ और मैरिनो ने चेचक देखा है, प्लेग देखा है और रैबिट फीवर भी (जो एक ऐसे बैक्टीरिया के संक्रमण से होता है जो अस्पताल की प्रयोगशाला में बहुत ही अधिक छुतहा किस्म का होता है, और एक जैव-हथियार माना जाता है)। इन लोगों ने एक बार हैपेटाइटिस-ए की महामारी के स्रोत के रूप में किसी सामाजिक आयोजन में परोसी गई आइसक्रीम की पहचान करने के बाद पूरे देश से फ्रोज़ेन (जमी हुई) स्ट्रॉबेरी के फल वापस बुलवाने की शुरुआत करवाई थी। उन्होंने मुझे बताया कि हाल में अस्पताल में जो संक्रमण खुले घूम रहे हैं, वे हैं एक रोटावायरस (नॉरवॉक वायरस), स्यूडोमोनास बैक्टीरिया की कई किस्में (strains), एक महाप्रतिरोधी क्लेबसिएला, और आधुनिक अस्पतालों की सर्वव्यापी आफत और आतंक – प्रतिरोधी स्टेफायलोकोकस ऑरियस और एंटेरोकोकस फीकैलिस – जो अक्सर निमोनिया, चोट के घावों और खून के संक्रमण के कारण बनते हैं।

क्या न करना सबसे घातक है अस्पताल में?
(संयुक्त राष्ट्र के) रोग नियंत्रण एवं रोकथाम केन्द्र (CDC) के अनुसार, हर साल 20 लाख अमरीकियों को उस वक्त संक्रमण हो जाता है जब वे अस्पताल में होते हैं। इनमें से 90 हज़ार लोग मारे जाते हैं। योकोइ कहती हैं कि संक्रमण नियंत्रण टीम के काम का सबसे मुश्किल हिस्सा संक्रामकों की ढेर सारी किस्मों से निपटना नहीं है, न ही कभी-कभी मरीज़ों या अस्पताल-कर्मियों में उभरने वाली घबराहट का सामना करना है। बजाय इसके, उनकी सबसे बड़ी मुश्किल है मेरे जैसे डॉक्टरों से वह एक चीज़ मनवाना जो लगातार संक्रमणों के फैलाव को रोकता हैः अपने हाथ धोना। ऐसी बहुत कम ही चीज़ें हैं जो इन लोगों ने आज़माई नहीं हैं। (अस्पताल की इमारत की) सर्जरी के मामलों वाली मंज़िलों में – जहाँ मैं अपने मरीज़ों को भर्ती करता हूँ - इधर-उधर घूमते हुए योकोइ और मैरीनो ने मुझे वे हिदायती नोटिस दिखाए जो उन्होंने लगाए थे, वे हाथ धोने के सिंक बताए जिन्हें सही जगहों पर लगवाया था, और वे भी जो नए लगवाए गए थे। कुछ सिंक को उन्होंने स्वचालित बना दिया था। उन्होंने विशेष 5000 डॉलर कीमत के ‘सावधानी ठेले’ खरीदे थे जिनमें धोने वाली सभी चीज़ें, दस्ताने और गाउन बहुत ही सलीके से भण्डारित किए जा सकते थे और एक जगह से दूसरी जगह ले जाए जा सकते थे। उन्होंने अस्पताल की उन इकाइयों को फिल्म की टिकटें उपहार स्वरूप दी थीं जो सबसे अच्छे से नियमों का पालन कर रहे थे। उन्होंने स्वच्छता की प्रगति-रिपोर्टें बनाकर जारी की थीं। फिर भी, हमने अपने तौर-तरीके नहीं सुधारे थे।

हमारे अस्पताल के आँकड़े भी वही दिखाते हैं जो अन्य जगहों के अध्ययन बताते हैं – कि हम डॉक्टर और नर्सें जितनी बार हमें हाथ धोना चाहिए, उससे आधी बार या एक-तिहाई बार ही अपने हाथ धोते हैं। किसी नाक सुड़सुड़ाते मरीज़ से हाथ मिलाने के बाद, किसी की चोट से चिपकी पट्टी को निकालने के बाद, किसी की पसीने से तर छाती पर स्टेथोस्कोप लगाने के बाद, हम में से अधिकतर बस अपने सफेद कोट पर हाथ पोंछ लेते हैं और आगे बढ़ जाते हैं – अगले मरीज़ को देखने, चार्ट या फाइल में कुछ नोट लिखने या लंच के वक्त दो-चार निवाले खाने। शर्म की बात यह है कि इसमें कुछ भी नया नहीं है।

एक पगलेट जीनियस
1847 में, 28 साल की उम्र में, विएना के प्रसूति-विज्ञानी इग्नाज़ सेमेलवाएस (Ignaz Semmelweis) ने यह मशहूर निष्कर्ष निकाला था कि अपने हाथ बार-बार या अच्छी तरह से न धोने के कारण जच्चा माओं को जच्चगी के बाद आने वाले बुखार (प्रसूति बुखार) के लिए खुद डॉक्टर ही ज़िम्मेदार थे। एंटीबायोटिक के ज़माने से पहले (और इस बात के पहचाने जाने से पहले कि कीटाणु (germs) संक्रामक रोगों के वाहक होते हैं) जच्चगी के दौरान होने वाली मातृ-मृत्यु के लिए प्रसूति बुखार को ही प्रमुख कारक माना जाता था। यह एक बैक्टीरियाई संक्रमण है – सबसे आम है स्ट्रेपटोकोकाई से होने वाला संक्रमण, उसी बैक्टीरिया से जिससे गले में खराश होती है – जो बच्चे के जन्म के बाद योनिमार्ग से प्रवेश करके बच्चेदानी को संक्रमित कर देते हैं। सेमेलवाएस जिस अस्पताल में काम करते थे, वहाँ हर 3000 जच्चा माओं में से हर साल 600 या उससे ज़्यादा माएँ इस बुखार से दम तोड़ देती थीं – यानी 20 प्रतिशत मातृ-मृत्यु-दर। इसके बरअक्स, घर में बच्चे पैदा करने वाली महिलाओं में से केवल एक प्रतिशत की ही मौत होती थी। इससे सेमेलवाएस ने यह निष्कर्ष निकाला कि डॉक्टर खुद ही अपने मरीज़ों के बीच इस रोग को फैला रहे हैं। उन्होंने नियम बनाया कि उनके वॉर्ड के सभी डॉक्टर और नर्स दो मरीज़ों को जाँचने के बीच नाखून साफ करने के ब्रश से और क्लोरीन से हाथ साफ करें। जच्चगी के बाद की मातृ-मृत्यु-दर का आँकड़ा फौरन एक प्रतिशत पर ढुलक गया। लगता था कि इस बात के पक्के प्रमाण मिल गए थे कि डॉक्टर सेमेलवाएस सही हैं।

फिर भी, और जगहों पर डॉक्टरों के व्यवहार में बदलाव नहीं आया था। कुछ (समकालिक) डॉक्टर तो डॉक्टर सेमेलवाएस के दावों से अपमानित भी महसूस कर रहे थे। उनके लिए यह नामुमकिन था कि डॉक्टर खुद अपने मरीज़ के लिए जानलेवा बन जाएँ। अपने काम के लिए सराहना मिलना तो दूर, सेमेलवाएस की अन्ततः नौकरी ही चली गई।
डॉक्टरों के ज़िद्दीपन और अन्धेपन के मामले में सेमेलवाएस की कहानी सबूत क्रमांक-ए के रूप में हम तक पहुँची है। पर कहानी इससे भी ज़्यादा जटिल थी। दिक्कत यह थी कि उन्नीसवीं शताब्दी के डॉक्टरों के सामने प्रसूति बुखार के बारे में एक से ज़्यादा लगभग बराबर वज़नी स्पष्टीकरण मौजूद थे। मसलन, एक तगड़ा विश्वास यह था कि इसका कारण अस्पताल की दूषित हवा (miasmas of the air) है। और यह बात भी अजीब थी कि सेमेलवाएस अपने सिद्धान्त के पीछे के तर्क और स्पष्टीकरण के बारे में कुछ भी प्रकाशित करने से इन्कार करते रहे, और जानवरों पर विश्वसनीय प्रयोग करके अपने सिद्धान्त को साबित करने से भी।
बजाय इसके उन्होंने प्रमाण की माँगों को व्यक्तिगत अपमान की तरह लिया और अपने आलोचकों पर अत्यन्त खूंखार तरीके से (viciously) हमले किए। उनके सिद्धान्त पर सवाल उठाने वाले विएना विश्वविद्यालय के एक प्रसूती विशेषज्ञ को उन्होंने लिखा, “(और) आप, जनाब प्रोफेसर, इस कत्ल में हिस्सेदार रहे हैं।” वुर्ज़बर्ग के एक सहकर्मी को उन्होंने लिखा, “अगर आप, जनाब हॉफ्राथ, अगर आप मेरे सिद्धान्त को गलत साबित किए बगैर ही अपने विद्यार्थियों को (उसके विपरीत) पाठ पढ़ाते रहे, मैं ऊपरवाले और पूरी दुनिया को हाज़िर-नाज़िर कर यह घोषणा करता हूँ कि आप एक हत्यारे हैं और प्रसूती बुखार के इतिहास ने अगर आपको एक चिकित्सकीय नीरो की तरह याद रखा तो यह नाइन्साफी नहीं होगी।” उनका अपना स्टाफ ही उनके खिलाफ हो गया था। विएना में अपना पद खो देने के बाद वे पेस्ट नामक जगह पर चले गए। वहाँ भी वे सिंक के बाजू में खड़े हो जाते थे और जो भी अपने हाथ रगड़ना भूल जाए, उनको डाँट लगाते रहते थे। लोग उनके हाथ धोने की कवायद से जान-बूझकर कन्नी काटने लगे। कुछ तो उसमें व्यवधान पैदा करने में सक्रिय हो गए।

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

डेढ़ सौ साल में भी नहीं सीखा हमने
तथापि, डॉक्टरी प्लेग के एक सौ चालीस साल बाद आपको सोचना पड़ता है कि उन्हें रोकने के लिए शायद एक पागल की ही ज़रूरत है। गौर फरमाइए कि योकोइ और मैरिनो को किसका सामना करना पड़ता है। इन्सानी चमड़ी का कोई ऐसा भाग नहीं जो बैक्टीरिया से बचा हुआ हो। अकेले हथेली पर मौजूद बैक्टीरिया की गिनती करें तो हर वर्ग सेंटीमीटर में पाँच हज़ार से लेकर पचास लाख तक कॉलोनी बनाने वाली इकाइयाँ पाई जाती हैं। बालों, बगल और जाँघों के बीच की जगह पर आबादी का घनत्व इससे बहुत ज़्यादा होता है। हथेलियों की चमड़ी की सलवटें बैक्टीरियाई आबादी की 10 से 20 प्रतिशत को अपने में दबाए रखती हैं जो रगड़-रगड़कर साफ करने से भी नहीं हटती, और स्टरलाइज़ेशन भी असम्भव होता है। सबसे बुरी जगह नाखूनों के नीचे वाली है। इसलिए हाल के CDC के दिशानिर्देशों में कहा गया है कि अस्पताल के कर्मचारियों को अपने नाखून कटे रखना ज़रूरी है, उनकी लम्बाई एक-चौथाई इंच से अधिक नहीं हो सकती और वे कृत्रिम नाखून नहीं पहन सकते।

आम साबुन, संक्रमण-नाशक होने का काम मध्यम दर्जे का ही कर पाते हैं। उनमें मौजूद डिटर्जेंट ऊपरी धूल-मिट्टी-गन्दगी को तो साफ कर देते हैं, पर 15 सेकण्ड तक हाथ धोने पर बैक्टीरिया की मात्रा लगभग दसवें भाग (10 प्रतिशत) तक ही बचती है। सेमेलवाएस ने यह बात पहचान ली थी कि आम साबुन काफी नहीं है, और संक्रमण-रहित बनाने के लिए क्लोरीन का इस्तेमाल करने लगे थे। आज के बैक्टीरिया-रोधी साबुनों में क्लोरहेक्सीडीन जैसे रसायन रहते हैं जो रोगाणुओं की बाहरी झिल्ली और प्रोटीन कवच को भेद सकते हैं। पर सही साबुन हो तब भी सही तरीके से हाथ धोने के लिए एक नियत पद्धति का कड़ाई से पालन करना होता है। पहले आप को अपनी घड़ी, अँगूठियाँ और बाकी ज़ेवरात (जो कि बैक्टीरिया के गढ़ बनने के लिए बदनाम हैं) उतारना होता है। फिर आपको कुनकुने गर्म पानी में हाथों को भिगोना होता है। फिर साबुन लगाकर झाग को हथेलियों और बाहों के निचले एक-तिहाई हिस्से पर 15 से 30 सेकण्ड तक (साबुन के पैकेट पर लिखे अनुसार) मलते रहें। फिर 30 सेकण्ड तक झाग को अच्छी तरह धो डालें। साफ और सूखे डिस्पोज़ेबल तौलिए से हाथों को अच्छे से सुखाकर पोंछ लें। फिर तौलिए की मदद से नल को बन्द कर दें। हर बार किसी नए मरीज़ से सम्पर्क में आने के बाद इस पूरे चक्र को दोहराएँ।

लगभग कोई भी इस पद्धति को अमल में नहीं लाता है। यह असम्भव लगता है। सुबह के राउंड लेते हुए हमारे रेसिडेंट डॉक्टर हर मंज़िल पर 20-20 मरीज़ों को देखते हैं। हमारी गहन चिकित्सा इकाई (intensive care unit) में काम करने वाली नर्स लगभग इतनी ही संख्या में मरीज़ों की देखभाल करती हैं जिसके बीच में हाथ धोने की ज़रूरत होती है। अगर आप इस पूरे हाथ धुलाई के चक्र को प्रति मरीज़ एक मिनट पर भी ले आएँ, तब भी पूरे स्टाफ का लगभग एक-तिहाई समय हाथ धोने में लगेगा।

आसान विकल्प, परन्तु फिर भी ...
बार-बार हाथ धोने से त्वचा में परेशानी (खुजली आदि) भी हो सकती है। इससे डरमाटाइटिस (dermatitis) जैसी बीमारी भी हो सकती है जो खुद बैक्टीरिया को बढ़ाती है। साबुन से कम परेशान करने वाले एल्कोहॉल वाले जेल (gel) यूरोप में कई सालों से प्रचलन में हैं परन्तु अमरीका में ये अभी हाल में ही इस्तेमाल में आए हैं। इनके इस्तेमाल में समय भी कम लगता है – बस 15 से 20 सेकण्ड में जेल को हथेलियों और उँगलियों पर अच्छे-से मला जा सकता है और हवा उसे सुखा देती है। इस तरह के जेल या हैंडवॉश की बोतलें हर बेड के पास रखी जा सकती हैं और सिंक की ज़रूरत नहीं पड़ती है। और 50 से 95 प्रतिशत तक एल्कोहॉल वाले जेल बैक्टीरिया को मारने में भी अधिक सक्षम होते हैं। (यहाँ रोचक बात यह है कि 100 फीसदी एल्कोहॉल से काम नहीं बनता है। सूक्षमजीवी प्रोटीन की प्रकृति को बदलने के लिए एल्कोहॉल के साथ थोड़ा पानी मिला होना ज़रूरी होता है।)
फिर भी योकोई को उस 60 फीसदी एल्कोहॉल वाले जेल को, जिसे हमने हाल में अपनाया है, हमारे स्टाफ द्वारा स्वीकार करवाने में एक साल से ज़्यादा लग गया। इसके इस्तेमाल को सबसे पहले यह कहकर रोका गया कि इससे इमारत में अस्वास्थ्यकर हवा भर जाएगी (जो कि नहीं हुआ)। फिर, प्रमाणों के विपरीत जाकर भी, ये चिन्ताएँ जताई जाने लगीं कि इससे त्वचा में तकलीफ बढ़ जाएगी। तो ग्वारपाठा (aloe vera) युक्त एक जेल लाया गया। लोगों ने गन्ध की शिकायत की। इसलिए ग्वारपाठा रहित व्यवस्था की गई। फिर कुछ नर्सों ने उसका इस्तेमाल करने से मना कर दिया क्योंकि एक अफवाह फैल गई थी कि इससे उर्वर क्षमता कम हो जाती है। अफवाहों पर लगाम तभी लग पाई जब संक्रमण नियंत्रण इकाई ने इस बात के सबूत उपलब्ध कराए कि इस तरह से हाथ साफ करने पर एल्कोहॉल शरीर में सोख नहीं लिया जाता है। साथ ही, अस्पताल के उर्वरता-विशेषज्ञ ने जेल के उपयोग का अनुमोदन किया।

आखिरकार जेल के व्यापक उपयोग के बाद हाथों की स्वच्छता के अनुपालन की दर में काफी सुधार आया – यह लगभग 40 फीसदी से 70 फीसदी हो गया। लेकिन – और यह परेशानी वाली बात थी – अस्पताल के संक्रमण की दर रत्ती भर भी कम नहीं हुई। हमारा 70 प्रतिशत अनुपालन किसी काम का नहीं था। अगर 30 प्रतिशत बार लोग अपने हाथ न धोएँ, तो इससे ही संक्रमणों के फैलने की प्रचुर सम्भावनाएँ बनी रहती हैं। वाकई, (इस दौर में भी) प्रतिरोधी स्टैफायलोकोकस और एंटेरोकोकस संक्रमणों की दरें लगातार बढ़ती रहीं। योकोइ इसकी हर दिन की तालिकाएँ देखती हैं। कुछ दिन पहले मैंने उनसे चेक किया, और पाया कि हमारे अस्पताल में भर्ती 700 मरीज़ों में से 63 में एम.आर.एस.ए. (MRSA – यानी मिथायलीन प्रतिरोधी स्टैफायलोकोकस ऑरियस) की कॉलोनियाँ या संक्रमण पाया गया था। और 22 अन्यों को वी.आर.ई. (VRE – वैंकोमाइसीन प्रतिरोधी एंटेरोकोकस) हो गया था। बदकिस्मती से, अमरीकी अस्पतालों में संक्रमण की यही आम दर है।  

योकोइ और मैरिनो के प्रयास
महाप्रतिरोधी (super resistant) बैक्टीरिया के कारण बढ़ते संक्रमण की दरें दुनियाभर में आम हो चली हैं। VRE का पहला हमला 1988 में हुआ था, जब इंग्लैण्ड की एक डायलिसिस इकाई में यह फैल गया था। 1990 तक आते-आते बैक्टीरिया विदेशों तक पहुँच गया था, और अमरीका में गहन चिकित्सा इकाई के मरीज़ों में से हर एक हज़ार पर 4 मरीज़ इससे संक्रमित हुए थे। चौंकाने वाली बात यह थी कि 1997 तक तो गहन चिकित्सा इकाई के 23 फीसदी मरीज़ इससे संक्रमित होने लगे थे।

सन् 2003 में जब चीन में SARS (अत्यधिक तीव्र श्वास सम्बन्धी लक्षण) कोरोना वायरस ने अपना असर दिखाया और जब चन्द हफ्तों में ही वह दुनिया भर के दो दर्जन देशों के लाखों लोगों तक पहुँच गया, तब उसे फैलाने वाले प्रमुख कारक थे स्वास्थ्य-कर्मियों के हाथ। तब क्या होगा अगर (या यों कहें कि जब) कोई इससे भी खतरनाक सूक्ष्मजीव प्रकट हो – जैसे कि बर्ड-फ्लू, या कोई और भी सक्रिय और संक्रामक बैक्टीरिया? योकोइ कहती हैं, “तब तो तबाही मच जाएगी।” ऐसा लगने लगा है कि हाथ धोने के बारे में सेमेलवाएस जैसे पागलपन से कम कुछ भी नाकाफी है। योकोइ, मैरिनो और उनके सहकर्मियों ने इन दिनों अलग-अलग मंज़िलों पर औपचारिक निरीक्षण शुरू कर दिया है। उन्होंने मुझे दिखाया कि वे किसी शल्य चिकित्सा गहन देखभाल इकाई में क्या करती हैं। वे अचानक, बिन बताए वहाँ पहुँच जाती हैं। वे सीधे ही मरीज़ों के कमरों में जाती हैं। लावारिस पड़ी दवा या पट्टी की, गन्दे टॉयलेटों की, टपकते नलों की, जेल के खाली पड़े डिब्बों की, ठसाठस भरे सुई के डिब्बों की, दस्तानों और गाउन की कमी आदि की चेकिंग करती हैं। वे देखती हैं कि क्या मरीज़ की पट्टी बदलते या केथीटर (पेशाब की थैली वाली नली) लगाते हुए नर्स हाथों में दस्ताने पहनती हैं कि नहीं। ये दोनों ही संक्रमण के गढ़ हो सकते हैं। और फिर वे ये भी देखती हैं कि क्या सभी लोग मरीज़ के सम्पर्क में आने से पहले हाथ साफ कर रहे हैं कि नहीं। दोनों में से कोई भी लोगों से सीधे बात करने से नहीं घबराती हैं, हालाँकि, वे यह काम नरमी से करती हैं। (“क्या आप हाथों पर जेल लगाना भूल गए हैं?” – यह उनका पसन्दीदा वाक्य है।)

स्टाफ के लोग उन्हें पहचानने लगे हैं। मैंने एक बार देखा कि एक दस्ताने और गाउन पहनी नर्स ने मरीज़ के कमरे से बाहर आते ही मरीज़ के चार्ट को उठा लिया (जिसे गन्दे हाथों से छूना मना है), फिर मैरिनो को देखकर एकदम रुक-सी गई। “मैंने कमरे में कुछ भी नहीं छुआ! मैं साफ हूँ,” उसने जल्दी-से कहा।
योकोइ और मैरिनो अपने काम के इस हिस्से से नफरत करती हैं। वे संक्रमण पुलिस नहीं बनना चाहती हैं। न तो यह मज़ेदार है, और न ही इस तरह से उनका काम प्रभावी हो पाता है। (अस्पताल की इमारत में) 12 मंज़िल हैं और हर मंज़िल पर 4-4 मरीज़ों के इलाके (विंग) हैं। इतने बड़े तामझाम में वे उस तरह से निगरानी नहीं कर सकतीं जिस तरह से सेमेलवाएस करते थे – अपने अस्पताल के एकमात्र सिंक के पास त्यौरियाँ चढ़ाकर खड़े होकर। और जिस तरह उनके स्टाफ ने उनका विरोध किया था, वही खतरा ये दोनों भी मोल लेती हैं – स्टाफ के विद्रोह का। पर इसके अलावा उपाय ही क्या है?

मैंने अस्पताल संक्रमण और संक्रमण नियंत्रण जर्नल तथा अस्पताल एपिडेमियोलॉजी जर्नल के पुराने अंकों को उलट-पलटकर देखा। ये दोनों ही इस क्षेत्र की अग्रणी पत्रिकाएँ हैं। इनमें छपे सारे लेख हमारे गन्द फैलाने के तरीकों को बदलने के असफल प्रयोगों की दुखभरी दास्तानों से पटे पड़े थे। हमेशा से ही इस समस्या के लिए जो हल उम्मीद देता रहा है, वह है साबुन या हैंडवॉश – जो हमारी त्वचा को घण्टों तक संक्रमण-मुक्त बनाए रखेगा और हमें अच्छा होने में मदद करेगा। पर कोई ऐसा मिला ही नहीं। इस परिस्थिति के कारण एक विशेषज्ञ ने – कुछ-कुछ मज़ाक में ही – कहा है कि इसका सबसे बेहतरीन उपाय यह है कि हाथ धोने की बात ही छोड़ दें और साथ ही मरीज़ों को छूना भी बिलकुल बन्द कर दें। हम हमेशा किसी ऐसी जादू की छड़ी वाले हल की तलाश में रहते हैं जो बहुत आसान हो। जो एक झटके में समस्या को सुलझा दे। पर ज़िन्दगी में कम ही चीज़ें होती हैं जो इस तरह काम करती हैं। इसकी बजाय, कामयाबी के लिए ज़रूरी होता है कि सैकड़ों छोटे-छोटे कदम सही दिशा में काम करें – एक के बाद एक, बिना किसी गफलत के, बिना नागा के, सबकी भागीदारी के साथ।

दोहरी मानसिकता - ऑपरेशन कक्ष के अन्दर और बाहर
हम डॉक्टरी काम को अकेले किया जाना वाला एक बौद्धिक काम समझते हैं। पर चिकित्सा के काम को ठीक-से करना कठिन निदान देना कम और सभी को हाथ धुलवाने को बाध्य करना ही अधिक है। यह देखना चौंकाने वाला है कि शल्य चिकित्सा (ऑपरेशन) कक्ष की कहानी लिस्टर के बाद से सेमेलवाएस के समय से कितनी फर्क है। ऑपरेशन कक्ष में किसी को यह बहाना करने की भी छूट नहीं होती कि साफ-सफाई की प्रक्रिया की 90 फीसदी अनुपालना ही काफी है। अगर एक भी डॉक्टर या नर्स ऑपरेशन टेबल पर आने से पहले पूरी तरह से खुद की धुलाई-सफाई न करे, तो हम आतंकित हो जाते हैं – और अगर उस मरीज़ को कुछ ही दिनों बाद कोई संक्रमण हो जाए, तो हमें कोई हैरानी नहीं होती। लिस्टर के बाद से हम अपनी अपेक्षाओं में और आगे निकल आए हैं। अब हम संक्रमण-मुक्त किए गए दस्ताने और गाउन पहनते हैं, मुँह पर मास्क लगाते हैं और बालों को टोपी में कैद रखते हैं। हम मरीज़ की चमड़ी पर एंटीसैप्टिक मलते हैं और संक्रमण-मुक्त कपड़े बिछाते हैं। हम अपने औज़ारों को ताप-भाप-स्टेरलाइज़र से संक्रमण-मुक्त करते हैं, और अगर औज़ार ऑटोक्लेव के तापमान को सहन करने लायक न हों तो उनका रासायनिक स्टरलाइज़ेशन किया जाता है।

एंटीसेप्सिस (यानी संक्रमण के कारण घावों के पकने और पस बनने को रोकना) की खातिर हमने ऑपरेशन कक्ष की लगभग हर बारीकी को फिर से ईजाद किया है। यहाँ तक कि हमने (ऑपरेशन) टीम में एक अतिरिक्त व्यक्ति तक रखा है। इन्हें हम सरकुलेटिंग नर्स कहते हैं और इनका मुख्य काम होता है कि (ऑपरेशन की) टीम को एंटीसेप्टिक बनाए रखें। जब भी किसी ऐसे औज़ार की ज़रूरत होती है जिसकी दरकार का पहले से पता नहीं था, तो पूरी टीम उतनी देर तक रुकी नहीं रह सकती कि उनमें से एक सफाई के सुरक्षा घेरे से बाहर जाकर वह औज़ार ले, फिर खुद की सफाई करे और फिर वापस आए। इसीलिए सरकुलेटर को ईजाद किया गया। सरकुलेटर उन अतिरिक्त स्पंजों और औज़ारों को लाते हैं, फोन कॉल उठाते हैं, कागज़ी काम करते हैं, जब मदद की ज़रूरत हो तो वह मुहैया कराते हैं। और हर बार जब वे यह काम करते हैं, तो न सिर्फ वे बाकियों के काम को आसान बना देते हैं, वे मरीज़ को संक्रमण से बचाए भी रखते हैं। सरकुलेटरों के होने मात्र से हर मामले में संक्रमण-रहितता प्राथमिकता बन जाती है। हमारे अस्पतालों में महामारियाँ फैलने से रोकने में समस्या अज्ञान की नहीं है – क्या करें, इसकी जानकारी की कमी नहीं है। यह जानकारी के आधार पर अनुपालन की समस्या है –  समस्या जानकारी को सही तरीके से काम में लागू करने की है।

पर अनुपालन को सुनिश्चित करना कठिन है। ऑपरेशन कक्ष की स्वच्छता के प्रति सतर्कता और नुकताचीनी 140 साल बाद भी अस्पताल के ऑपरेशन कक्ष के दोहरे दरवाज़ों के बाहर क्यों नहीं पहुँच पाई है, यह एक रहस्य है। वे लोग जो ऑपरेशन कक्ष में सबसे ज़्यादा ध्यान रखते हैं, अक्सर वही लोग अस्पताल के वार्डों में सबसे कम सावधानी बरतते हैं। मैं यह बात जानता हूँ क्योंकि मैंने पाया है कि मैं भी उनमें से एक हूँ। आम तौर पर मैं अपने हाथ धोने को लेकर उतना ही चौकस ऑपरेशन कक्ष के अन्दर रहता हूँ जितना कि मैं बाहर रहता हूँ। और मैं यह काम बखूबी कर लेता हूँ, अगर मैं खुद ही यह बात आपको बताऊँ तो। पर फिर मैं (सुखाने के लिए) उन पर फूँकता हूँ। यह लगभग हर दिन होता है। मैं मरीज़ के कमरे में दाखिल होता हूँ, और मैं सोच रहा हूँ कि मरीज़ को उसके ऑपरेशन के बारे में मुझे क्या बताना है, या उसके परिवार के बारे में सोचता हूँ, जो सम्भवतः वहाँ उसे घेरकर खड़े हों और काफी चिन्तित हों, या किसी जूनियर डॉक्टर द्वारा बताए किसी मज़ेदार लतीफे के बारे में, और मैं पूरी तरह भूल जाता हूँ कि मुझे वह जेल को थोड़ा-सा अपने हाथों पर लेकर मल लेना है। चाहे कितने ही नोटिस दीवार पर वहाँ चस्पा किए गए हों, मैं भूल जाता हूँ। कभी-कभी मुझे यह बात याद रहती है, पर जब तक मैं जेल की बोतल देखूँ, मरीज़ अपना हाथ मेरी ओर बढ़ा देते हैं और मुझे लगता है कि आगे बढ़कर उसका हाथ न थाम लेना बहुत अजीब होगा। कभी-कभी तो मैं यह तक सोच लेता हूँ कि, भाड़ में जाए – मुझे देर हो रही है, मुझे जल्दी-से काम की ओर बढ़ना है, और मैं बस इस एक बार क्या करता हूँ, उससे क्या फर्क पड़ता है।

एक सफल परन्तु सीमित प्रयास
कुछ साल पहले पॉल ओ’नील, जो (अमरीका के) राजकोष के सचिव और एलकोआ नाम की अल्युमिनियम बनाने वाली कम्पनी के सी.ई.ओ. (मुख्य कार्यपालक अधिकारी) हैं, पिट्सबर्ग, पेनसिलवेनिया की एक स्थानीय स्वास्थ्य सेवा पहल के प्रमुख बनने को राज़ी हुए। और उन्होंने अपनी सबसे अधिक प्राथमिकता वाले कामों में अस्पताल के संक्रमणों की समस्या को सुलझाना शामिल किया। यह दिखाने के लिए कि यह समस्या सुलझाई जा सकती है, उन्होंने पीटर पेरियाह नामक एक युवा औद्योगिक इंजीनियर को पिट्सबर्ग के एक पुराने अस्पताल की एकमात्र 40 बिस्तर वाली सर्जिकल इकाई में रखा। जब वे उस इकाई के स्टाफ से मिले, एक डॉक्टर ने उन्हें बताया, “पीटर हमसे यह नहीं पूछते कि आप हाथ क्यों नहीं धो लेते?” वे पूछते हैं, “आप हाथ क्यों नहीं धो सकते?” ज़्यादातर मामलों में जवाब समय के बारे में होता। तो एक इंजीनियर होने के नाते वे उन चीज़ों को दुरुस्त करने में जुट गए जो स्टाफ के समय को खा जाते थे। उन्होंने एक बिलकुल-समय-पर वाली (सामग्री की) सप्लाई व्यवस्था बनाई जिसमें न केवल दस्ताने और गाउन बिस्तर के एकदम पास मिल जाते थे, बल्कि रूई और टेप और ऐसी हर चीज़ जो स्टाफ को कभी भी लग सकती थी और जिसे लेने बार-बार अन्दर-बाहर होना पड़ता था। बार-बार हर किसी से हर दो मरीज़ की जाँच के बीच में स्टेथोस्कोप की सफाई करवाने की जगह – स्टेथोस्कोप जो संक्रमण फैलाने के लिए बदनाम हैं – उन्होंने हर मरीज़ के कमरे में स्टेथोस्कोप टाँगने के लिए एक निश्चित जगह बना दी।
उन्होंने ऐसे दर्जनों सरल बदलावों को अमल में लाने में मदद की जिससे संक्रमण के फैलने के मौके कम हो सकें और स्टाफ के लिए साफ-सफाई कायम रखने की कठिनाई भी दूर हो सके। दूसरे शब्दों में कहें तो उन्होंने अस्पताल के हर कमरे को ऑपरेशन कक्ष के जैसा बना दिया। उन्होंने यह भी व्यवस्था की कि भर्ती के समय हर मरीज़ की नाक से स्वैब लेकर उसका कल्चर किया जाए – भले ही मरीज़ संक्रमित लगे या नहीं। इस तरह से स्टाफ को पता चल जाता था कि किस मरीज़ के शरीर में प्रतिरोधी बैक्टीरिया मौजूद हैं और वे उनके लिए अधिक कारगर सावधानियाँ काम में ला सकते थे। इस रणनीति को कभी—कभी “खोजो और खत्म करो” (search and destroy) कहा जाता है।

MRSA – जो अस्पताल जनित संक्रमणों में सबसे ज़्यादा मौतों का कारण बनता है – लगभग 90 फीसदी कम हो गया। पहले इससे संक्रमित मरीज़ों की संख्या 4 से 6 प्रतिमाह हुआ करती थी, अब साल भर में इतने मरीज़ MRSA से संक्रमित होते हैं। बहरहाल, दो साल बाद भी, हौसलाअफज़ाही और उपदेश-नसीहतों के बावजूद – ये विचार अस्पताल की केवल एक और इकाई तक फैले। बाकी की इकाइयों में पेरियाह नहीं थे। और जब वे किसी और काम से उस मूल इकाई से चले गए, तो वहाँ भी अनुपालन के आँकड़े गिरने लगे। ओ’नील ने प्रगति न होने के कारण निराशा और कुण्ठा के चलते स्वास्थ्य सेवा पहल के प्रमुख का पद छोड़ दिया। बुनियादी रूप से कुछ भी नहीं बदला था। लेकिन, कुछ बदल सकता है, यह भरोसा भी मरा नहीं था।

एक अलग तरह की कोशिश
जोन लॉएड, एक शल्यचिकित्सक जिन्होंने इस पहल में पेरियाह की मदद की थी, इस बात पर सोच-विचार करते रहे कि क्या किया जा सकता है। और उनकी नज़र एक लेख पर पड़ी जो विएतनाम में बच्चों में कुपोषण को कम करने की सेव द चिल्ड्रेन (Save the Children) की एक परियोजना पर था। लॉएड को लगा कि इस कहानी में पिट्सबर्ग के लिए एक पाठ था। टफ्ट्स विश्वविद्यालय के पोषण विशेषज्ञ जेरी स्टरनिन और उनकी पत्नी, मोनीक द्वारा चलाए जा रहे एक कुपोषण निवारण कार्यक्रम ने कुपोषित बच्चों के गाँवों में बाहर से समस्या के समाधान लाने की बात छोड़ दी थी। यह तरीका बार-बार असफल रहा था। हालाँकि, कुपोषण कम करने के तरीकों की जानकारी काफी समय से स्थापित थी – ज़्यादा पौष्टिक भोजन उगाना और बच्चों को प्रभावी तरीके से खिलाना – पर अधिकतर लोग, सिर्फ बाहर वालों के कहने पर, ऐसी आधारभूत बातों में बदलाव लाने को तैयार नहीं थे कि वे अपने बच्चों को क्या खाना खिलाएँ और कब खिलाएँ।

इसलिए स्टरनिन दम्पती ने अन्दरवालों से ही हल ढुँढ़वाने पर ज़ोर दिया। उन्होंने ग्रामीणों के छोटे समूहों को यह पता लगाने को कहा कि उनमें से किसके बच्चे सबसे तन्दुरुस्त थे, किन लोगों ने, स्टरनिनों की भाषा में, सामान्य प्रथा की वजह से सकारात्मक विचलन (positive deviance) दिखाया था। तब गाँववासियों ने उन माँओं के घर में जाकर देखा कि वे दरअसल ठीक क्या-क्या करती थीं। बस, उतना ही क्रान्तिकारी था। गाँववासियों को पता चला कि गरीबी के बावजूद, उनके बीच भी हृष्टपुष्ट बच्चे थे और उनकी माएँ स्थानीय रूप से मान्य सूझबूझ को तोड़ रही थीं – हर तरह से। जैसे, वे अपने बच्चों को तब भी स्तनपान करवा रही थीं जब उन्हें दस्त लगे हों, दिन भर में बच्चों को 1-2 बार ढेर सारा दूध पिलाने की बजाय कई बार थोड़ा-थोड़ा दूध पिला रही थीं, बच्चों के चावल में रतालु के पत्ते उबालकर दे रही थीं – इस बात के बावजूद कि इसे एक निम्नवर्गीय भोजन माना जाता था। और ये विचार फैलने लगे, वे अपने पाँव जमाने लगे। प्रोजेक्ट के तहत नतीजों को मापा जाने लगा और गाँववालों के देखने के लिए इन सकारात्मक नतीजों को गाँव में चस्पा कर दिया जाता था ताकि सभी इन्हें देख पाएँ। दो साल में हर उस गाँव में जहाँ स्टरनिन दम्पति गया था, कुपोषण 65 फीसदी से 85 फीसदी तक कम हो गया।

लॉएड को सकारात्मक विचलन वाला विचार जँच गया। इसके लिए लोगों को अपनी आदतों को बदलने को कहने की बजाय जिस चीज़ में वे अच्छे थे, उन्हें उसी पर काम करने को कहा जाता था। मार्च 2005 तक उन्होंने और पेरियाह ने मिलकर अस्पताल के नेतृत्व को संक्रमणों से जूझने में सकारात्मक विचलन पद्धति को अपनाने के लिए राज़ी कर लिया था। लॉएड ने तो स्टरनिन दम्पती को भी उनके साथ काम करने को मना लिया। साथ मिलकर उन लोगों ने हर स्तर के स्वास्थ्य सेवा कर्मियों के साथ आधे-आधे घण्टे की छोटी समूह चर्चाएँ (small group discussions) कीं। इनमें भोजन व्यवस्था वाले लोग, गार्ड, नर्स, डॉक्टर, स्वयं मरीज़ – सभी शामिल थे। हर बैठक की शुरुआत टीम इस बात से करती थी, सार में, “हम यहाँ अस्पताल-जनित संक्रमण की समस्या के कारण इकट्ठा हुए हैं। और हम जानना चाहते हैं कि इसके बारे में आप क्या जानते हैं कि इसका हल कैसे  जाए।” कोई आदेश नहीं, कोई चार्ट नहीं, न ही विशेषज्ञों की राय कि ऐसे में क्या करना चाहिए। जेरी स्टरनिन कहते हैं, “अगर हमारे पास (अपने लिए) कोई मंत्रवाक्य था, तो वह यह कि – हमें किसी समस्या को सुलझाने की कोशिश नहीं करनी है।”

विचार उमड़ते आए। लोगों ने उन जगहों के बारे में बताया जहाँ हैंड-जेल की बोतलें नहीं रखी हैं, गाउन और दस्ताने कम न पड़ें उसके उपाय बताए, उन नर्सों के बारे में बताया जो हर हालत में हाथ धो ही लेती थीं और अपने मरीज़ों को भी प्रेरित कर पाती थीं कि वे अपने हाथ धोते रहें। कई लोगों ने कहा कि ऐसा पहली बार हो रहा था कि कोई उनसे पूछे कि क्या करना है। (व्यवहार के) चलन बदलने लगे। जब 40 नए हैंड-जेल की बोतलें आईं तो स्टाफ के लोगों ने उन्हें सबसे उपयुक्त जगह पर रखने की ज़िम्मेदारी खुद ले ली। जो नर्स डॉक्टर के हाथ न धोने पर पहले कभी कुछ नहीं बोलती थीं, अन्य नर्सों को ऐसा करते देख, खुद भी वैसा करने लगीं। थेरेपी उपचार देने वाले 8 सदस्यों को लगता था कि हर मरीज़ के लिए दस्ताने पहनना हास्यास्पद है। उनके 2 सहकर्मियों ने उनको मना लिया कि ऐसा करना कोई बड़ी बात नहीं है, पर करना है।
कोई भी विचार बिलकुल नए नहीं थे। स्टरनिन कहते हैं, “आठवीं समूह चर्चा के बाद से हम वही-वही बातें सुनने लगे। पर हम फिर भी लगे रहे, अगर वह समूह नम्बर 33 हो तब भी, क्योंकि यह पहली बार हो रहा था कि इन लोगों की बात सुनी जा रही थी। पहली बार उन्हें खुद के लिए नवाचार करने का मौका मिल रहा था।” टीम ने यह सुनिश्चित किया कि लोगों के विचारों और छोटी-छोटी कामयाबियों का प्रचार-प्रसार अस्पताल की वेबसाइट और न्यूज़लैटर के ज़रिए लगातार होता रहे। साथ ही, टीम ने बारीकी-से निगरानी रखने की भी व्यवस्था की। हर मरीज़ के नाक का स्वैब उसके भर्ती होते समय और अस्पताल से छुट्टी मिलते समय लिया जाने लगा। हर महीने वे अस्पताल की इकाई-दर-इकाई के नतीजे जारी करते रहे। प्रयोग के एक साल बाद – और इस क्षेत्र में प्रगति न होने के कई सालों बाद – पूरे अस्पताल में घाव के MRSA संक्रमण की दर शून्य पर आ गई। हाल ही में रॉबर्ट वुड जॉनसन फाउण्डेशन और ज्यूइश हेल्थकेयर फाउण्डेशन ने इस प्रयोग को देश के 10 और अस्पतालों में लागू करने के लिए कई लाख डॉलर का एक प्रयास शुरू किया है।
लॉएड चेताते हैं कि यह देखना बाकी है कि पिट्सबर्ग के नतीजे टिकेंगे कि नहीं। यह भी देखना बाकी है कि क्या इस कामयाबी को देश भर में दोहराया जा सकता है। पर और तो किसी भी चीज़ ने काम नहीं किया। और इस सदी में किसी समस्या के हल के लिए यही सबसे आकर्षक विचार है।

उपसंहार
योकोइ और मैरिनो के साथ मेरे दौरे के दौरान हम अस्पताल की एक साधारण इकाई से गुज़र रहे थे। और मुझे चीज़ें वैसी नज़र आने लगीं, जैसा वे देखती हैं। मरीज़ों के कमरों से थेरेपी उपचार देने वाले, नर्स, मरीज़ की देखभाल करने वाले स्टाफ के लोग, पोषण विशेषज्ञ, रेसिडेंट डॉक्टर, मेडिकल के विद्यार्थी – सभी आ-जा रहे थे। इनमें से कुछ हाथ धोने में निपुण थे। कुछ नहीं थे। योकोई ने दिखाया कि 8 कमरों में से 3 में चटक पीले सावधानी के नोटिस लगे थे – क्योंकि इनमें जो मरीज़ थे उन्हें MRSA या VRE हो गया था। बस, तभी मुझे खयाल में आया कि हम उस मंज़िल पर थे जहाँ मेरा भी एक मरीज़ भर्ती था। वो चटक पीले नोटिसों में से एक उसके दरवाज़े पर टँगा था। वे 62 साल के एक बुज़ुर्ग थे जो लगभग 3 हफ्ते से अस्पताल में भर्ती थे। किसी दूसरे अस्पताल से वे सदमे की स्थिति में यहाँ लाए गए थे जहाँ उनका ऑपरेशन बिगड़ गया था। मैंने फौरन आपात स्थिति में उनकी स्पीनेक्टॉमी की थी। फिर जब खून का बहाव नहीं रुका तो एक और ऑपरेशन करना पड़ा था। उनके पेट का घाव खुला हुआ था और वे खा नहीं सकते थे। उन्हें शिराओं के ज़रिए (intravenous) पोषक आहार दिया जा रहा था। पर वे ठीक हो रहे थे। भर्ती होने के 3 दिन बाद उन्हें गहन चिकित्सा इकाई से बाहर लाया गया था। प्रतिरोधी बैक्टीरिया के लिए उनकी शुरुआती निगरानी जाँचों के नतीजे एकदम निगेटिव थे। पर भर्ती के दस दिन बाद फिर से की गई जाँचों में MRSA और VRE, दोनों के नतीजे पॉज़िटिव आए। इसके कुछ दिनों बाद उन्हें बुखार आने लगा – 102 डिग्री तक। उनका रक्तचाप गिरने लगा, दिल की धड़कन तेज़ होने लगीं। उन्हें सेप्सिस हो गया था। उनका सेंट्रल लाइन – पोषण के लिए उनकी जीवनरेखा – संक्रमित हो गई थी, और हमें उसे निकालना पड़ा। उस क्षण तक जब मैं उनके कमरे के दरवाज़े पर लगे उस पीले नोटिस को देख रहा था, यह बात मुझे सूझी नहीं थी कि ऐसा हो सकता है कि मैंने ही उन्हें वह संक्रमण दिया हो। पर सच्चाई यही है कि ऐसा हो सकता है। हम में से किसी एक ने तो निश्चित ही ऐसा किया है।


अतुल गवांडे: दुनिया के प्रतिष्ठित डॉक्टरों में से एक हैं। आप 2006 के मैकआर्थर फैलो और एक सर्जन हैं। हार्वर्ड मेडिकल स्कूल में एसोसिएट प्रोफेसर के पद पर और बोस्टन के ब्रिघम अस्पताल में कार्यरत हैं। इसके साथ हीन्यूयॉर्कर पत्रिका के नियमित लेखक भी हैं।
अँग्रेज़ी से अनुवाद: टुलटुल बिस्वास: एकलव्य, भोपाल में कार्यरत। कई सालों तक बच्चों के सहज जीवन पर आधारित किताबें, पत्रिकाएँ और अन्य पठन सामग्री बनाने में अहम भूमिका निभाई। इन दिनों शिक्षक शिक्षा, प्रसार और पैरवी का काम कर रही हैं।
यह लेख अतुल गवांडे की किताब ‘Better: A Surgeon's Notes on Performance' से साभार।

Select and listen
14.492MBMemory Usage254msRequest Duration
Joomla! Version4.4.5
PHP Version8.1.31
Identityguest
Response200
Templatej51_maya
Database
Server
mysql
Version
8.0.40
Collation
utf8mb4_0900_ai_ci
Conn Collation
utf8mb4_0900_ai_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:56 [ "USER" => "eklavyaco" "HOME" => "/home/eklavyaco" "PATH_TRANSLATED" => "/home/eklav...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1743957397 "last" => 1743957397...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (541.98KB) (3.4ms)
  • afterInitialise (1.31MB) (35.52ms)
  • afterRoute (3.17MB) (18.78ms)
  • beforeRenderComponent com_content (73.16KB) (2.78ms)
  • Before Access::preloadComponents (all components) (34.2KB) (681μs)
  • After Access::preloadComponents (all components) (119.27KB) (1.52ms)
  • Before Access::preloadPermissions (com_content) (4.16KB) (29μs)
  • After Access::preloadPermissions (com_content) (3.54MB) (17.73ms)
  • Before Access::getAssetRules (id:4823 name:com_content.article.4089) (258.8KB) (271μs)
  • After Access::getAssetRules (id:4823 name:com_content.article.4089) (8.47KB) (216μs)
  • afterRenderComponent com_content (895.64KB) (37.18ms)
  • afterDispatch (2.28KB) (259μs)
  • beforeRenderRawModule mod_menu () (1.99MB) (57.53ms)
  • afterRenderRawModule mod_menu () (1.13MB) (14.06ms)
  • beforeRenderModule mod_menu () (696B) (30μs)
  • afterRenderModule mod_menu () (26.88KB) (291μs)
  • beforeRenderRawModule mod_menu () (24.38KB) (85μs)
  • afterRenderRawModule mod_menu () (26.45KB) (5.24ms)
  • beforeRenderModule mod_menu () (696B) (14μs)
  • afterRenderModule mod_menu () (26.27KB) (145μs)
  • beforeRenderRawModule mod_menu () (24.48KB) (83μs)
  • afterRenderRawModule mod_menu () (65.22KB) (230μs)
  • beforeRenderModule mod_menu () (696B) (8μs)
  • afterRenderModule mod_menu () (1.64KB) (116μs)
  • beforeRenderRawModule mod_menu (More) (19.64KB) (1.35ms)
  • afterRenderRawModule mod_menu (More) (12.04KB) (666μs)
  • beforeRenderModule mod_menu (More) (704B) (10μs)
  • afterRenderModule mod_menu (More) (12.94KB) (620μs)
  • beforeRenderRawModule mod_menu (Gallery) (16B) (108μs)
  • afterRenderRawModule mod_menu (Gallery) (13.38KB) (621μs)
  • beforeRenderModule mod_menu (Gallery) (704B) (9μs)
  • afterRenderModule mod_menu (Gallery) (2.98KB) (156μs)
  • beforeRenderRawModule mod_menu (Magazine) (32B) (81μs)
  • afterRenderRawModule mod_menu (Magazine) (21.47KB) (537μs)
  • beforeRenderModule mod_menu (Magazine) (704B) (8μs)
  • afterRenderModule mod_menu (Magazine) (12.3KB) (500μs)
  • beforeRenderRawModule mod_menu (Books) (32B) (83μs)
  • afterRenderRawModule mod_menu (Books) (26.94KB) (859μs)
  • beforeRenderModule mod_menu (Books) (704B) (11μs)
  • afterRenderModule mod_menu (Books) (12.18KB) (497μs)
  • beforeRenderRawModule mod_menu (Eklavya) (32B) (84μs)
  • afterRenderRawModule mod_menu (Eklavya) (53.14KB) (749μs)
  • beforeRenderModule mod_menu (Eklavya) (704B) (9μs)
  • afterRenderModule mod_menu (Eklavya) (12.05KB) (468μs)
  • beforeRenderRawModule mod_related_items (Related Articles) (1.89KB) (79μs)
  • afterRenderRawModule mod_related_items (Related Articles) (16.7KB) (1.63ms)
  • beforeRenderModule mod_related_items (Related Articles) (704B) (10μs)
  • afterRenderModule mod_related_items (Related Articles) (8.75KB) (414μs)
  • beforeRenderRawModule mod_articles_category (Articles) (7.7KB) (58μs)
  • Before Access::getAssetRules (id:8 name:com_content) (54.08KB) (1.75ms)
  • After Access::getAssetRules (id:8 name:com_content) (6.95KB) (67μs)
  • afterRenderRawModule mod_articles_category (Articles) (32.03KB) (6.52ms)
  • beforeRenderModule mod_articles_category (Articles) (704B) (11μs)
  • afterRenderModule mod_articles_category (Articles) (30.05KB) (551μs)
  • beforeRenderRawModule mod_search (Search module) (8.53KB) (121μs)
  • afterRenderRawModule mod_search (Search module) (2.59KB) (106μs)
  • beforeRenderModule mod_search (Search module) (720B) (4μs)
  • afterRenderModule mod_search (Search module) (1.26KB) (140μs)
  • beforeRenderRawModule mod_breadcrumbs (Breadcrumb) (2.41KB) (82μs)
  • afterRenderRawModule mod_breadcrumbs (Breadcrumb) (14.52KB) (3.6ms)
  • beforeRenderModule mod_breadcrumbs (Breadcrumb) (704B) (12μs)
  • afterRenderModule mod_breadcrumbs (Breadcrumb) (1.21KB) (184μs)
  • beforeRenderRawModule mod_menu (Search test Menu in content top) (1.95KB) (48μs)
  • afterRenderRawModule mod_menu (Search test Menu in content top) (15.65KB) (537μs)
  • beforeRenderModule mod_menu (Search test Menu in content top) (736B) (7μs)
  • afterRenderModule mod_menu (Search test Menu in content top) (12.23KB) (132μs)
  • beforeRenderRawModule mod_finder (search 22) (352B) (30μs)
  • afterRenderRawModule mod_finder (search 22) (237.79KB) (5.91ms)
  • beforeRenderModule mod_finder (search 22) (720B) (10μs)
  • afterRenderModule mod_finder (search 22) (1.23KB) (187μs)
  • beforeRenderRawModule mod_jfilters_filters (JFilters Filters) (672B) (38μs)
  • afterRenderRawModule mod_jfilters_filters (JFilters Filters) (253.09KB) (15.24ms)
  • beforeRenderModule mod_jfilters_filters (JFilters Filters) (736B) (15μs)
  • afterRenderModule mod_jfilters_filters (JFilters Filters) (1.23KB) (203μs)
  • beforeRenderRawModule mod_search (Search (Top)) (56B) (96μs)
  • afterRenderRawModule mod_search (Search (Top)) (944B) (38μs)
  • beforeRenderModule mod_search (Search (Top)) (720B) (2μs)
  • afterRenderModule mod_search (Search (Top)) (1.23KB) (70μs)
  • afterRender (415.33KB) (11.2ms)
  • 1 x beforeRenderRawModule mod_menu () (1.99MB) (22.64%)
    57.53ms
    1 x afterRenderComponent com_content (895.64KB) (14.63%)
    37.18ms
    1 x afterInitialise (1.31MB) (13.98%)
    35.52ms
    1 x afterRoute (3.17MB) (7.39%)
    18.78ms
    1 x After Access::preloadPermissions (com_content) (3.54MB) (6.98%)
    17.73ms
    1 x afterRenderRawModule mod_jfilters_filters (JFilters Filters) (253.09KB) (6%)
    15.24ms
    1 x afterRenderRawModule mod_menu () (1.13MB) (5.53%)
    14.06ms
    1 x afterRender (415.33KB) (4.41%)
    11.20ms
    1 x afterRenderRawModule mod_articles_category (Articles) (32.03KB) (2.57%)
    6.52ms
    1 x afterRenderRawModule mod_finder (search 22) (237.79KB) (2.33%)
    5.91ms
    1 x afterRenderRawModule mod_menu () (26.45KB) (2.06%)
    5.24ms
    1 x afterRenderRawModule mod_breadcrumbs (Breadcrumb) (14.52KB) (1.41%)
    3.60ms
    1 x afterLoad (541.98KB) (1.34%)
    3.40ms
    1 x beforeRenderComponent com_content (73.16KB) (1.09%)
    2.78ms
    1 x Before Access::getAssetRules (id:8 name:com_content) (54.08KB) (0.69%)
    1.75ms
    1 x afterRenderRawModule mod_related_items (Related Articles) (16.7KB) (0.64%)
    1.63ms
    1 x After Access::preloadComponents (all components) (119.27KB) (0.6%)
    1.52ms
    1 x beforeRenderRawModule mod_menu (More) (19.64KB) (0.53%)
    1.35ms
    1 x afterRenderRawModule mod_menu (Books) (26.94KB) (0.34%)
    859μs
    1 x afterRenderRawModule mod_menu (Eklavya) (53.14KB) (0.29%)
    749μs
    1 x Before Access::preloadComponents (all components) (34.2KB) (0.27%)
    681μs
    1 x afterRenderRawModule mod_menu (More) (12.04KB) (0.26%)
    666μs
    1 x afterRenderRawModule mod_menu (Gallery) (13.38KB) (0.24%)
    621μs
    1 x afterRenderModule mod_menu (More) (12.94KB) (0.24%)
    620μs
    1 x afterRenderModule mod_articles_category (Articles) (30.05KB) (0.22%)
    551μs
    1 x afterRenderRawModule mod_menu (Magazine) (21.47KB) (0.21%)
    537μs
    1 x afterRenderRawModule mod_menu (Search test Menu in content top) (15.65KB) (0.21%)
    537μs
    1 x afterRenderModule mod_menu (Magazine) (12.3KB) (0.2%)
    500μs
    1 x afterRenderModule mod_menu (Books) (12.18KB) (0.2%)
    497μs
    1 x afterRenderModule mod_menu (Eklavya) (12.05KB) (0.18%)
    468μs
    1 x afterRenderModule mod_related_items (Related Articles) (8.75KB) (0.16%)
    414μs
    1 x afterRenderModule mod_menu () (26.88KB) (0.11%)
    291μs
    1 x Before Access::getAssetRules (id:4823 name:com_content.article.4089) (258.8KB) (0.11%)
    271μs
    1 x afterDispatch (2.28KB) (0.1%)
    259μs
    1 x afterRenderRawModule mod_menu () (65.22KB) (0.09%)
    230μs
    1 x After Access::getAssetRules (id:4823 name:com_content.article.4089) (8.47KB) (0.09%)
    216μs
    1 x afterRenderModule mod_jfilters_filters (JFilters Filters) (1.23KB) (0.08%)
    203μs
    1 x afterRenderModule mod_finder (search 22) (1.23KB) (0.07%)
    187μs
    1 x afterRenderModule mod_breadcrumbs (Breadcrumb) (1.21KB) (0.07%)
    184μs
    1 x afterRenderModule mod_menu (Gallery) (2.98KB) (0.06%)
    156μs
    1 x afterRenderModule mod_menu () (26.27KB) (0.06%)
    145μs
    1 x afterRenderModule mod_search (Search module) (1.26KB) (0.06%)
    140μs
    1 x afterRenderModule mod_menu (Search test Menu in content top) (12.23KB) (0.05%)
    132μs
    1 x beforeRenderRawModule mod_search (Search module) (8.53KB) (0.05%)
    121μs
    1 x afterRenderModule mod_menu () (1.64KB) (0.05%)
    116μs
    1 x beforeRenderRawModule mod_menu (Gallery) (16B) (0.04%)
    108μs
    1 x afterRenderRawModule mod_search (Search module) (2.59KB) (0.04%)
    106μs
    1 x beforeRenderRawModule mod_search (Search (Top)) (56B) (0.04%)
    96μs
    1 x beforeRenderRawModule mod_menu () (24.38KB) (0.03%)
    85μs
    1 x beforeRenderRawModule mod_menu (Eklavya) (32B) (0.03%)
    84μs
    1 x beforeRenderRawModule mod_menu () (24.48KB) (0.03%)
    83μs
    1 x beforeRenderRawModule mod_menu (Books) (32B) (0.03%)
    83μs
    1 x beforeRenderRawModule mod_breadcrumbs (Breadcrumb) (2.41KB) (0.03%)
    82μs
    1 x beforeRenderRawModule mod_menu (Magazine) (32B) (0.03%)
    81μs
    1 x beforeRenderRawModule mod_related_items (Related Articles) (1.89KB) (0.03%)
    79μs
    1 x afterRenderModule mod_search (Search (Top)) (1.23KB) (0.03%)
    70μs
    1 x After Access::getAssetRules (id:8 name:com_content) (6.95KB) (0.03%)
    67μs
    1 x beforeRenderRawModule mod_articles_category (Articles) (7.7KB) (0.02%)
    58μs
    3 x beforeRenderModule mod_menu () (696B) (0.02%)
    52μs
    1 x beforeRenderRawModule mod_menu (Search test Menu in content top) (1.95KB) (0.02%)
    48μs
    1 x beforeRenderRawModule mod_jfilters_filters (JFilters Filters) (672B) (0.02%)
    38μs
    1 x afterRenderRawModule mod_search (Search (Top)) (944B) (0.02%)
    38μs
    1 x beforeRenderRawModule mod_finder (search 22) (352B) (0.01%)
    30μs
    1 x Before Access::preloadPermissions (com_content) (4.16KB) (0.01%)
    29μs
    1 x beforeRenderModule mod_jfilters_filters (JFilters Filters) (736B) (0.01%)
    15μs
    1 x beforeRenderModule mod_breadcrumbs (Breadcrumb) (704B) (0%)
    12μs
    1 x beforeRenderModule mod_menu (Books) (704B) (0%)
    11μs
    1 x beforeRenderModule mod_articles_category (Articles) (704B) (0%)
    11μs
    1 x beforeRenderModule mod_menu (More) (704B) (0%)
    10μs
    1 x beforeRenderModule mod_related_items (Related Articles) (704B) (0%)
    10μs
    1 x beforeRenderModule mod_finder (search 22) (720B) (0%)
    10μs
    1 x beforeRenderModule mod_menu (Gallery) (704B) (0%)
    9μs
    1 x beforeRenderModule mod_menu (Eklavya) (704B) (0%)
    9μs
    1 x beforeRenderModule mod_menu (Magazine) (704B) (0%)
    8μs
    1 x beforeRenderModule mod_menu (Search test Menu in content top) (736B) (0%)
    7μs
    1 x beforeRenderModule mod_search (Search module) (720B) (0%)
    4μs
    1 x beforeRenderModule mod_search (Search (Top)) (720B) (0%)
    2μs
143 statements were executed, 3 of which were duplicates, 140 unique64.34ms3.62MB
  • SELECT @@SESSION.sql_mode;187μs1.57KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `j4_session` WHERE `session_id` = ?148μs1.61KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `j4_session` WHERE `session_id` = :session_id LIMIT 1135μs1.61KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `j4_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)333μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `j4_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1755μs2.36KB/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `j4_viewlevels`230μs976B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `j4_usergroups` AS `a` LEFT JOIN `j4_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest692μs1.63KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `j4_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1) ORDER BY `ordering`1.39ms4.27KBParams/libraries/src/Plugin/PluginHelper.php:294Copy
  • SELECT * FROM j4_rsform_config223μs2.56KB/administrator/components/com_rsform/helpers/config.php:52Copy
  • SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component` FROM `j4_menu` AS `m` LEFT JOIN `j4_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE ( (`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2) ORDER BY `m`.`lft`4.59ms167.05KBParams/libraries/src/Menu/SiteMenu.php:166Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `j4_categories` AS `s` INNER JOIN `j4_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`5.73ms2.15MBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT * FROM `j4_languages` WHERE `published` = 1 ORDER BY `ordering` ASC277μs2.22KB/libraries/src/Language/LanguageHelper.php:142Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `j4_template_styles` AS `s` LEFT JOIN `j4_extensions` AS `e` ON `e`.`element` = `s`.`template` AND `e`.`type` = 'template' AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 0 AND `e`.`enabled` = 1459μs1.14KB/administrator/components/com_templates/src/Model/StyleModel.php:773Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `j4_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41,:preparedArray42,:preparedArray43,:preparedArray44,:preparedArray45,:preparedArray46,:preparedArray47)943μs8.12KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `j4_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 06.66ms345.8KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `j4_content`2.23ms2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `j4_content` SET `hits` = (`hits` + 1) WHERE `id` = '4089'4.7ms2.55KB/libraries/src/Table/Table.php:1325Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `j4_content` AS `a` INNER JOIN `j4_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `j4_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `j4_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `j4_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `j4_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)1.16ms168.63KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `j4_categories` AS `s` INNER JOIN `j4_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`3.22ms21.19KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `j4_contentitem_tag_map` AS `m` INNER JOIN `j4_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1)506μs5.2KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `j4_categories` AS `s` INNER JOIN `j4_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`3ms21.19KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM j4_fields AS a LEFT JOIN `j4_languages` AS l ON l.lang_code = a.language LEFT JOIN j4_users AS uc ON uc.id=a.checked_out LEFT JOIN j4_viewlevels AS ag ON ag.id = a.access LEFT JOIN j4_users AS ua ON ua.id = a.created_user_id LEFT JOIN j4_fields_groups AS g ON g.id = a.group_id LEFT JOIN `j4_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5)) AND `a`.`access` IN (:preparedArray6)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray7)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC686μs6.06KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `j4_categories` AS `s` INNER JOIN `j4_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`2.93ms21.19KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT m.id, m.title, m.module, m.position, m.content, m.showtitle, m.params,am.params AS extra, 0 AS menuid, m.publish_up, m.publish_down FROM j4_modules AS m LEFT JOIN j4_extensions AS e ON e.element = m.module AND e.client_id = m.client_id LEFT JOIN j4_advancedmodules as am ON am.module_id = m.id WHERE m.published = 1 AND e.enabled = 1 AND m.client_id = 0 ORDER BY m.position, m.ordering1.15ms50.67KB/plugins/system/advancedmodules/src/Helper.php:191Copy
  • SELECT m.condition_id,m.item_id FROM j4_conditions_map as m LEFT JOIN j4_conditions as c ON c.id = m.condition_id WHERE `m`.`extension` = 'com_advancedmodules' AND `c`.`published` = 1335μs1.75KB/administrator/components/com_conditions/src/Model/ItemModel.php:821Copy
  • SHOW FULL COLUMNS FROM `j4_conditions`749μs2.08KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '14'186μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 14157μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 14157μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 14 ORDER BY m.extension,m.item_id134μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT `id`,`title` AS `value` FROM `j4_modules`184μs3.38KB/administrator/components/com_conditions/src/Helper/Helper.php:184Copy
  • SHOW FULL COLUMNS FROM `j4_modules`808μs2.2KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • SELECT `id`,`published` AS `value` FROM `j4_modules`201μs14.38KB/administrator/components/com_conditions/src/Helper/Helper.php:184Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '15'155μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 15128μs1008B/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 15 ORDER BY m.extension,m.item_id128μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '16'123μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 16100μs1008B/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 16 ORDER BY m.extension,m.item_id105μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '18'121μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 18100μs1008B/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 18 ORDER BY m.extension,m.item_id119μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '23'103μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 23103μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 19102μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 23 ORDER BY m.extension,m.item_id106μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '24'112μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 24108μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 20111μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 24 ORDER BY m.extension,m.item_id107μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '25'104μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 25106μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 21113μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 25 ORDER BY m.extension,m.item_id107μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '53'107μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 53109μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 4597μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 53 ORDER BY m.extension,m.item_id118μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '29'107μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 2996μs1008B/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 29 ORDER BY m.extension,m.item_id121μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '31'100μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 31102μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 43103μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 31 ORDER BY m.extension,m.item_id125μs9.02KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '36'129μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 36105μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 31103μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 36 ORDER BY m.extension,m.item_id121μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '10'107μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 10102μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 10106μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 10 ORDER BY m.extension,m.item_id126μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '37'146μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 37117μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 32143μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 37 ORDER BY m.extension,m.item_id137μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '35'135μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 35143μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 30127μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 35 ORDER BY m.extension,m.item_id167μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '51'131μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 51122μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 41137μs1.16KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 51 ORDER BY m.extension,m.item_id129μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '54'130μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 54121μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 46105μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 54 ORDER BY m.extension,m.item_id121μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '7'174μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 7116μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 7121μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 7 ORDER BY m.extension,m.item_id173μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '45'121μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 45152μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 39134μs1.16KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 45 ORDER BY m.extension,m.item_id162μs1.11KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '50'167μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 50163μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 40161μs1.16KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 50 ORDER BY m.extension,m.item_id141μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '11'207μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 11118μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 11101μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 11 ORDER BY m.extension,m.item_id126μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '30'129μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 30120μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 25163μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 30 ORDER BY m.extension,m.item_id116μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '5'115μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 5187μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 5111μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 5 ORDER BY m.extension,m.item_id183μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '52'165μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 52125μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 42155μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 52 ORDER BY m.extension,m.item_id160μs1.02KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '4'122μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 4168μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 4178μs1.13KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 4 ORDER BY m.extension,m.item_id173μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '1'130μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 1128μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 1145μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 1 ORDER BY m.extension,m.item_id128μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT * FROM `j4_conditions` WHERE `id` = '2'207μs2.06KB/libraries/src/Table/Table.php:755Copy
  • SELECT * FROM j4_conditions_groups as g WHERE g.condition_id = 2186μs1KB/administrator/components/com_conditions/src/Model/ItemModel.php:1034Copy
  • SELECT * FROM j4_conditions_rules as r WHERE r.group_id = 2171μs1.14KB/administrator/components/com_conditions/src/Model/GroupModel.php:108Copy
  • SELECT m.extension,m.item_id,m.table,m.name_column FROM j4_conditions_map as m WHERE m.condition_id = 2 ORDER BY m.extension,m.item_id182μs17KB/administrator/components/com_conditions/src/Model/ItemModel.php:907Copy
  • SELECT a.params FROM j4_advancedmodules AS a WHERE a.module_id = 191101μs840B/plugins/system/advancedmodules/src/Helper.php:151Copy
  • SELECT a.params FROM j4_advancedmodules AS a WHERE a.module_id = 189104μs840B/plugins/system/advancedmodules/src/Helper.php:151Copy
  • SELECT a.params FROM j4_advancedmodules AS a WHERE a.module_id = 18892μs840B/plugins/system/advancedmodules/src/Helper.php:151Copy
  • SELECT a.params FROM j4_advancedmodules AS a WHERE a.module_id = 185103μs840B/plugins/system/advancedmodules/src/Helper.php:151Copy
  • SELECT `metakey` FROM `j4_content` WHERE `id` = :id220μs1.63KBParams/modules/mod_related_items/src/Helper/RelatedItemsHelper.php:88Copy
  • SELECT a.params FROM j4_advancedmodules AS a WHERE a.module_id = 22395μs840B/plugins/system/advancedmodules/src/Helper.php:151Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END AS `publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`metadata`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`featured`,`a`.`language`,LENGTH(`a`.`fulltext`) AS `readmore`,`a`.`ordering`,`fp`.`featured_up`,`fp`.`featured_down`,CASE WHEN `c`.`published` = 2 AND `a`.`state` > 0 THEN 2 WHEN `c`.`published` != 1 THEN 0 ELSE `a`.`state` END AS `state`,`c`.`title` AS `category_title`,`c`.`path` AS `category_route`,`c`.`access` AS `category_access`,`c`.`alias` AS `category_alias`,`c`.`language` AS `category_language`,`c`.`published`,`c`.`published` AS `parents_published`,`c`.`lft`,CASE WHEN `a`.`created_by_alias` > ' ' THEN `a`.`created_by_alias` ELSE `ua`.`name` END AS `author`,`ua`.`email` AS `author_email`,`uam`.`name` AS `modified_by_name`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,COALESCE(NULLIF(ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1), 0), 0) AS `rating`,COALESCE(NULLIF(`v`.`rating_count`, 0), 0) AS `rating_count` FROM `j4_content` AS `a` LEFT JOIN `j4_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `j4_users` AS `ua` ON `ua`.`id` = `a`.`created_by` LEFT JOIN `j4_users` AS `uam` ON `uam`.`id` = `a`.`modified_by` LEFT JOIN `j4_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `j4_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `j4_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE `a`.`access` IN (:preparedArray1) AND `c`.`access` IN (:preparedArray2) AND `c`.`published` = 1 AND `a`.`state` = :condition AND `a`.`catid` IN (:preparedArray3) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) ORDER BY a.ordering ASC3.47ms468.94KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT a.params FROM j4_advancedmodules AS a WHERE a.module_id = 22496μs840B/plugins/system/advancedmodules/src/Helper.php:151Copy
  • SELECT `name`,`element` FROM `j4_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1415μs1KB/administrator/components/com_finder/src/Helper/LanguageHelper.php:135Copy
  • SELECT `title` FROM `j4_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1)392μs936B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT a.id, a.parent_id, a.config_name, a.name, a.context, a.label, a.alias, a.display, a.state, a.access, a.root, a.ordering, a.checked_out, a.checked_out_time, a.created_time, a.updated_time, a.language,`a`.`attribs` AS `attributes` FROM `j4_jfilters_filters` AS `a` WHERE `a`.`access` IN (:preparedArray1) AND `a`.`state` IN (:preparedArray2,:preparedArray3) ORDER BY a.ordering ASC557μs4.52KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `j4_scheduler_tasks` AS `a` WHERE `a`.`state` = 1401μs1.68KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:466Copy
  • SELECT `session_id` FROM `j4_session` WHERE `session_id` = ?206μs1.63KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `j4_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?319μs912BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy