PostgreSQL धीमी क्वेरी को लॉग फ़ाइल या तालिका में लॉग करने की अनुमति देता है। इन लॉग को पार्स करने से आपको आसानी से यह निर्धारित करने में मदद मिलेगी कि कौन से प्रश्न आपके डेटाबेस को धीमा कर रहे हैं। यहाँ PostgreSQL में धीमी क्वेरी लॉग को सक्षम करने के चरण दिए गए हैं। आप उनका उपयोग RDS, Redshift और अन्य PostgreSQL डेटाबेस में धीमी क्वेरी लॉग को सक्षम करने के लिए भी कर सकते हैं।
PostgreSQL में स्लो क्वेरी लॉग को कैसे इनेबल करें
आप केवल postgresql.conf में कुछ सेटिंग्स को संशोधित करके PostgreSQL में धीमी क्वेरी की पहचान कर सकते हैं फ़ाइल
टर्मिनल खोलें और अपने डेटाबेस के लिए postgresql.conf फ़ाइल का स्थान खोजने के लिए निम्न कमांड चलाएँ।
$ find / -name postgresql.conf
/etc/postgresql/9.1/main/postgresql.conf
बोनस पढ़ें :PostgreSQL भौतिकीकृत दृश्य
2. postgresql.conf खोलें
पाठ संपादक में postgresql.conf फ़ाइल खोलने के लिए निम्न आदेश चलाएँ
$ vi /etc/postgresql/9.1/main/postgresql.conf
बोनस पढ़ें :PostgreSQL में प्रति समूह अंतिम पंक्ति कैसे प्राप्त करें
3. PostgreSQL में धीमी क्वेरी लॉग सक्षम करें
निम्न पंक्ति खोजें
#log_min_duration_statement = -1
इसकी शुरुआत में # हटाकर इसे अनकम्मेंट करें। मिलीसेकंड में क्वेरी रनटाइम थ्रेशोल्ड के साथ -1 को भी बदलें। उदाहरण के लिए, यदि आप उन प्रश्नों को लॉग करना चाहते हैं जो चलने में 1 सेकंड से अधिक समय लेते हैं, तो -1 को 1000 से बदलें
log_min_duration_statement = 1000
फ़ाइल सहेजें और बाहर निकलें
निम्न पंक्ति भी देखें,
logging_collector = on
सुनिश्चित करें कि लॉगिंग_कलेक्टर चालू . पर सेट है ।
बोनस पढ़ें :PostgreSQL में हिस्टोग्राम कैसे बनाएं
4. धीमी क्वेरी लॉग ढूंढें
आपको postgresql.conf . में एक और वैरिएबल भी मिलेगा
log_directory = 'pg_log'
यह इंगित करता है कि PostgreSQL लॉग फ़ाइल /var/lib/pgsql/data/pg_log/
पर स्थित है।
5. PostgreSQL डेटाबेस को पुनरारंभ करें
PostgreSQL को पुनरारंभ करने के लिए निम्न आदेश चलाएँ
उबंटू/डेबियन
$ sudo systemctl restart postgresql
CentOS/Redhat
# /etc/init.d/postgresql restart
उम्मीद है, उपरोक्त लेख आपको PostgreSQL में धीमे प्रश्नों को लॉग करने में मदद करेगा।