الوصف
يحتوي هذا الجدول على معلومات عن خيوط تنفّذ الاستعلامات، مثل اسم الخيط، ووقت بدء الخيط، ومدة معالجة الاستعلام.
لبدء التسجيل:
- اضبط المَعلمات في قسم query_thread_log.
- عيّن log_query_threads إلى 1.
تُحدَّد فترة تفريغ البيانات في المَعلمة flush_interval_milliseconds ضمن قسم إعدادات الخادم query_thread_log. ولإجبار النظام على التفريغ، استخدم الاستعلام SYSTEM FLUSH LOGS.
لا يحذف ClickHouse البيانات من الجدول تلقائيًا. راجع المقدمة لمزيد من التفاصيل.
يمكنك استخدام الإعداد log_queries_probability) لتقليل عدد الاستعلامات المسجَّلة في جدول query_thread_log.
الأعمدة
hostname(LowCardinality(String)) — اسم مضيف الخادم الذي ينفّذ الاستعلام.event_date(Date) — التاريخ الذي أنهى فيه خيط التنفيذ تنفيذ الاستعلام.event_time(DateTime) — التاريخ والوقت اللذان أنهى فيهما خيط التنفيذ تنفيذ الاستعلام.event_time_microseconds(DateTime64(6)) — التاريخ والوقت اللذان أنهى فيهما خيط التنفيذ تنفيذ الاستعلام بدقة الميكروثانية.query_start_time(DateTime) — وقت بدء تنفيذ الاستعلام.query_start_time_microseconds(DateTime64(6)) — وقت بدء تنفيذ الاستعلام بدقة الميكروثانية.query_duration_ms(UInt64) — مدة تنفيذ الاستعلام.read_rows(UInt64) — عدد الصفوف المقروءة.read_bytes(UInt64) — عدد البايتات المقروءة.written_rows(UInt64) — في استعلامات INSERT، عدد الصفوف المكتوبة. وفي الاستعلامات الأخرى، تكون قيمة العمود 0.written_bytes(UInt64) — في استعلامات INSERT، عدد البايتات المكتوبة. وفي الاستعلامات الأخرى، تكون قيمة العمود 0.memory_usage(Int64) — الفرق بين مقدار الذاكرة المخصّصة والمحرّرة في سياق خيط التنفيذ هذا.peak_memory_usage(Int64) — الحد الأقصى للفرق بين مقدار الذاكرة المخصّصة والمحرّرة في سياق خيط التنفيذ هذا.thread_name(LowCardinality(String)) — اسم خيط التنفيذ.thread_id(UInt64) — المعرّف الداخلي لخيط التنفيذ.master_thread_id(UInt64) — المعرّف الأولي على مستوى نظام التشغيل لخيط التنفيذ الأولي.current_database(LowCardinality(String)) — اسم قاعدة البيانات الحالية.query(String) — سلسلة الاستعلام.normalized_query_hash(UInt64) — قيمة hash للاستعلام المُطبَّع، بعد إزالة الثوابت وما إلى ذلك.is_initial_query(UInt8) — ما إذا كان الاستعلام أوليًا. القيم الممكنة: 1 — استعلام أولي (على المستوى الأعلى)، 0 — استعلام فرعي بدأه استعلام آخر، بما في ذلك استعلامات التنفيذ الموزّع والاستعلامات الفرعية الداخلية.connection_address(IPv6) — عنوان IP للعميل الذي أُنشئ منه الاتصال. عند الاتصال عبر وكيل، سيكون هذا عنوان الوكيل.connection_port(UInt16) — منفذ العميل الذي أُنشئ منه الاتصال. عند الاتصال عبر وكيل، سيكون هذا منفذ الوكيل.user(LowCardinality(String)) — اسم المستخدم الذي بدأ الاستعلام الحالي.query_id(String) — معرّف الاستعلام.address(IPv6) — عنوان IP الذي استُخدم لإجراء الاستعلام. عند الاتصال عبر وكيل وتعيينauth_use_forwarded_address، سيكون هذا عنوان العميل بدلًا من عنوان الوكيل.port(UInt16) — منفذ العميل المستخدم لإجراء الاستعلام. عند الاتصال عبر وكيل وتعيينauth_use_forwarded_address، سيكون هذا منفذ العميل بدلًا من منفذ الوكيل.initial_user(LowCardinality(String)) — اسم المستخدم الذي شغّل الاستعلام الأولي ضمن سلسلة الاستعلام نفسها.initial_query_id(String) — معرّف الاستعلام الأولي ضمن سلسلة الاستعلام نفسها.initial_address(IPv6) — عنوان IP الذي انطلق منه الاستعلام الأولي ضمن سلسلة الاستعلام نفسها.initial_port(UInt16) — منفذ العميل الذي انطلق منه الاستعلام الأولي ضمن سلسلة الاستعلام نفسها.initial_query_start_time(DateTime) — وقت بدء الاستعلام الأولي ضمن سلسلة الاستعلام نفسها.initial_query_start_time_microseconds(DateTime64(6)) — وقت بدء الاستعلام الأولي ضمن سلسلة الاستعلام نفسها، بدقة الميكروثانية.authenticated_user(LowCardinality(String)) — اسم المستخدم الذي تمت المصادقة عليه في الجلسة.interface(UInt8) — الواجهة التي بدأ منها الاستعلام. القيم الممكنة: 1 — TCP، 2 — HTTP.is_secure(UInt8) — علامة توضّح ما إذا كان الاتصال آمنًا.os_user(LowCardinality(String)) — اسم مستخدم نظام التشغيل الذي يشغّل clickhouse-client.client_hostname(LowCardinality(String)) — اسم مضيف جهاز العميل الذي يعمل عليه clickhouse-client أو أي عميل TCP آخر.client_name(LowCardinality(String)) — اسم clickhouse-client أو أي عميل TCP آخر.client_agent(LowCardinality(String)) — وكيل البرمجة بالذكاء الاصطناعي الذي استدعى العميل (مثلclaude-codeوcursor) ويُكتشف من متغيرات البيئة. تكون القيمة فارغة إذا لم يُكتشف أي وكيل.client_revision(UInt32) — رقم المراجعة لـ clickhouse-client أو أي عميل TCP آخر.client_version_major(UInt32) — الإصدار الرئيسي لـ clickhouse-client أو أي عميل TCP آخر.client_version_minor(UInt32) — الإصدار الثانوي لـ clickhouse-client أو أي عميل TCP آخر.client_version_patch(UInt32) — مكوّن التصحيح من إصدار clickhouse-client أو أي عميل TCP آخر.script_query_number(UInt32) — رقم استعلام تسلسلي ضمن برنامج نصي متعدد الاستعلامات.script_line_number(UInt32) — رقم السطر في برنامج نصي متعدد الاستعلامات الذي يبدأ عنده الاستعلام الحالي.http_method(UInt8) — طريقة HTTP التي بدأ بها الاستعلام. القيم الممكنة: 0 - انطلق الاستعلام من واجهة TCP، 1 - استُخدمت طريقة GET، 2 - استُخدمت طريقة POST، 4 - استُخدمت طريقة PUT، 5 - استُخدمت طريقة DELETE، 6 - استُخدمت طريقة HEAD.http_user_agent(LowCardinality(String)) — ترويسة UserAgent المُمرَّرة في طلب HTTP.http_referer(String) — ترويسة HTTP Refererالمُمرَّرة في طلب HTTP (وتحتوي على عنوان كامل أو جزئي للصفحة التي تُجري الاستعلام).forwarded_for(String) — ترويسة HTTP X-Forwarded-Forالمُمرَّرة في طلب HTTP.quota_key(String) — 'مفتاح الحصة' المحدد في إعداد quotas.distributed_depth(UInt64) — عدد المرات التي جرى فيها تمرير الاستعلام بين الخوادم.revision(UInt32) — مراجعة ClickHouse.ProfileEvents(Map(LowCardinality(String), UInt64)) — أحداث ProfileEvents التي تقيس مقاييس مختلفة لخيط التنفيذ هذا. يمكن العثور على وصفها في الجدول system.events.
الأسماء المستعارة:
ProfileEvents.Names— اسم مستعار لـmapKeys(ProfileEvents).ProfileEvents.Values— اسم مستعار لـmapValues(ProfileEvents).
مثال
SELECT * FROM system.query_thread_log LIMIT 1 \GRow 1:
──────
hostname: clickhouse.eu-central1.internal
event_date: 2020-09-11
event_time: 2020-09-11 10:08:17
event_time_microseconds: 2020-09-11 10:08:17.134042
query_start_time: 2020-09-11 10:08:17
query_start_time_microseconds: 2020-09-11 10:08:17.063150
query_duration_ms: 70
read_rows: 0
read_bytes: 0
written_rows: 1
written_bytes: 12
memory_usage: 4300844
peak_memory_usage: 4300844
thread_name: TCPHandler
thread_id: 638133
master_thread_id: 638133
query: INSERT INTO test1 VALUES
is_initial_query: 1
user: default
query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
address: ::ffff:127.0.0.1
port: 33452
initial_user: default
initial_query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
initial_address: ::ffff:127.0.0.1
initial_port: 33452
interface: 1
os_user: bharatnc
client_hostname: tower
client_name: ClickHouse
client_revision: 54437
client_version_major: 20
client_version_minor: 7
client_version_patch: 2
http_method: 0
http_user_agent:
quota_key:
revision: 54440
ProfileEvents: {'Query':1,'SelectQuery':1,'ReadCompressedBytes':36,'CompressedReadBufferBlocks':1,'CompressedReadBufferBytes':10,'IOBufferAllocs':1,'IOBufferAllocBytes':89,'ContextLock':15,'RWLockAcquiredReadLocks':1}انظر أيضًا
- system.query_log — وصف لجدول النظام
query_logالذي يحتوي على معلومات عامة عن تنفيذ الاستعلامات. - system.query_views_log — يحتوي هذا الجدول على معلومات عن كل عرض يُنفَّذ أثناء الاستعلام.