পারফরম্যান্সের কারণে কোনও অ্যাপ্লিকেশন ডাটাবেসের বিরুদ্ধে যে সমস্ত এসকিউএল বিবৃতি দেয় তা পর্যালোচনা করার প্রক্রিয়ায় আমি আছি। পোস্টগ্রেএসকিউএল ডাটাবেস সার্ভার দ্বারা চালিত সমস্ত বিবৃতিগুলিতে লগ করার কি কোনও সহজ উপায় আছে? ধন্যবাদ।
পারফরম্যান্সের কারণে কোনও অ্যাপ্লিকেশন ডাটাবেসের বিরুদ্ধে যে সমস্ত এসকিউএল বিবৃতি দেয় তা পর্যালোচনা করার প্রক্রিয়ায় আমি আছি। পোস্টগ্রেএসকিউএল ডাটাবেস সার্ভার দ্বারা চালিত সমস্ত বিবৃতিগুলিতে লগ করার কি কোনও সহজ উপায় আছে? ধন্যবাদ।
উত্তর:
আপনি যে কনফিগার বিকল্পটি সন্ধান করছেন তা হ'ল log_statement = "all"
(যদি আপনি কেবল বিবৃতি চান), বা log_min_statement_duration = <some number>
আপনি যদি "ধীর" প্রশ্নের পরে থাকেন ("ধীর" কিছু মানের জন্য)। লগিং কনফিগারেশন সম্পর্কিত আরও তথ্যের জন্য http://www.postgresql.org/docs/current/static/runtime-config-logging.html দেখুন ।
explain analyze
কার্যকর করা টাইতে ধীর ক্যোয়ারী পাওয়ার একটি দুর্দান্ত বৈশিষ্ট্য রয়েছে , আপনি এটি দিয়ে পরীক্ষা শুরু করতে চাইতে পারেন 8.4 এখনও প্রকাশিত হয়নি তবে মৃত্যুদন্ড কার্যকর হওয়ার সময় এটি জেনে রাখা একটি দুর্দান্ত বিকল্প , যদি বিশ্লেষণটি ব্যাখ্যা করে আউটপুট ঠিক থাকে আপনি সম্ভবত I / O বা সিপিইউ সীমানা নিয়ে সমস্যা নিয়ে
auto_explain
মডিউল এই জন্য খুবই দরকারী। এটি কেবলমাত্র বিবৃতিগুলিতে লগইন করবে না, এটি কার্যকর করার পরিকল্পনাগুলি লগ করবে এবং এমনকি PL / PgSQL ফাংশনগুলির মধ্যে চালিত স্টেটমেন্টগুলি লগ করতে পারে। পারফরম্যান্স হিট মোটামুটি কম, যদি না আপনি বিশ্লেষণ সক্ষম করে থাকেন, সেক্ষেত্রে আপনি সমস্ত প্রশ্নের জন্য মোটামুটি টাইমিং ওভারহেড ব্যয় করেন।
দেখুন auto_explain
ডকুমেন্টেশনে।
auto_explain
, এটি তাদের আশীর্বাদপ্রাপ্ত মডিউলগুলির তালিকায় রয়েছে। ডকুমেন্টস দেখুন ডকস.আওএস.আমজোন
অবশ্যই, আপনি নিজের দ্বারা ধীরতম অনুসন্ধানগুলি সনাক্ত করতে পারেন, তবে আমি আপনাকে পিজিফৌইন - একটি পোস্টগ্রিজএসকিউএল লগ বিশ্লেষক ব্যবহার করার পরামর্শ দিচ্ছি । এটি ইনস্টল করা সহজ এবং সত্যই দরকারী।