2009-07-16 6 views
33

मैं वर्तमान में निष्पादित प्रश्न देखने के लिए SELECT current_query FROM pg_stat_activity; का उपयोग कर रहा हूं, लेकिन मैंने देखा कि क्वेरी काटा गया है। वर्तमान में निष्पादित प्रश्न देखने के लिए कोई कामकाज या कोई अन्य तरीका है?pg_stat_activity में क्वेरी काटा गया है?

+0

1KB सीमा Postgres 9.5 में हटा दिया गया था लेने के लिए सेवा को पुनः आरंभ करने की आवश्यकता होगी देखें। यदि आप अपना डेटाबेस अपग्रेड करते हैं तो आप इसे हटा सकते हैं। –

उत्तर

1

मैं इस के लिए एक आसान समाधान लेकिन 2002 से इस पोस्ट से पता चलता है आप एक सेटिंग समायोजित करने और पुन: संयोजित करने की जरूरत है खोजने के लिए प्रतीत नहीं कर सकते हैं: http://osdir.com/ml/db.postgresql.sql/2002-05/msg00088.html

+0

हे, मुझे 2004 से इसी तरह का एक मिला। उम्मीद थी कि यह इन सभी वर्षों में बदल गया है। :( – ibz

+0

: ( –

1

तुम सिर्फ PostgreSQL (log_statement) में बयान लॉगिंग सक्षम कर सकते हैं और जांच लॉग

+0

वास्तव में, यदि SQL कथन एक सतत चल रहा कथन है तो क्या होगा? (ज़ोंबी पोस्टग्रेस प्रक्रिया) फिर, चूंकि यह कभी पूरा नहीं होता है, इसलिए आप केवल pg_stat_activity से SELECT current_query पूछताछ करके इसे रनटाइम देख पाएंगे; –

21

PostgreSQL 8.4 पैरामीटर "track_activity_query_size" जोड़ता है। मूल्य अभी भी छोटा कर दिया जाएगा, लेकिन आप किस लंबाई पर नियंत्रण कर सकते हैं।

5

चरम मामले में एक विकल्प प्रक्रिया को संलग्न करने और क्वेरी को प्रिंट करने के लिए जीडीबी डीबगर का उपयोग करना है।

http://darthanthony.wordpress.com/2012/10/11/viewing-running-postgres-queries-and-what-if-they-are-too-long/

gdb [path_to_postgres] [pid] 

printf "%s\n", debug_query_string 
6
ALTER SYSTEM SET track_activity_query_size = 16384; 

तुम अब भी उस प्रभाव

संबंधित मुद्दे

 संबंधित मुद्दे