الانتقال إلى المحتوى الرئيسي
يمكنك استخدام الدوال الموضحة في هذا الفصل لاستبطان ELF وDWARF لأغراض تحليل أداء الاستعلامات.
هذه الدوال بطيئة وقد تترتب عليها اعتبارات أمنية.
لكي تعمل دوال الاستبطان بشكل صحيح:
  • ثبّت الحزمة clickhouse-common-static-dbg.
  • اضبط الإعداد allow_introspection_functions على القيمة 1. لأسباب أمنية، تكون دوال الاستبطان معطّلة افتراضيًا.
يحفظ ClickHouse تقارير Profiler في جدول النظام trace_log. تأكد من إعداد الجدول وProfiler بشكل صحيح.

addressToLine

أُضيف في: v20.1.0 يحوّل عنوانًا في الذاكرة الافتراضية داخل عملية خادم ClickHouse إلى اسم ملف ورقم سطر في الشيفرة المصدرية لـ ClickHouse.
هذه الدالة بطيئة وقد تترتب عليها اعتبارات أمنية.
لتمكين دالة الاستبطان هذه: البنية
الوسيطات
  • address_of_binary_instruction — عنوان التعليمة في عملية قيد التشغيل. UInt64
القيمة المعادة تعيد اسم ملف الشيفرة المصدرية ورقم السطر، مفصولين بنقطتين، على سبيل المثال: /build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:199. وتعيد اسم ملف تنفيذي إذا تعذر العثور على معلومات تصحيح الأخطاء، أو سلسلة فارغة إذا كان العنوان غير صالح. String أمثلة اختيار السلسلة الأولى من جدول النظام trace_log
Query
Response
الحصول على اسم ملف الشيفرة المصدرية ورقم السطر لعنوانٍ واحد
Query
Response
تطبيق function على أثر المكدس بالكامل
Query
Response

addressToLineWithInlines

أُضيفت في: v22.2.0 تشبه addressToLine، لكنها تُرجع Array تحتوي على جميع الدوال المضمّنة inline. ولذلك، فهي أبطأ من addressToLine. لتمكين دالة الاستبطان هذه: البنية
الوسائط
  • address_of_binary_instruction — عنوان تعليمة في عملية قيد التشغيل. UInt64
القيمة المعادة تعيد مصفوفةً يكون عنصرها الأول اسم ملف الشيفرة المصدرية ورقم السطر، مفصولين بنقطتين. أما العنصر الثاني والثالث وهكذا، فيسرد أسماء ملفات الشيفرة المصدرية للدوال المضمّنة وأرقام الأسطر وأسماء الدوال. إذا تعذر العثور على معلومات التصحيح، فستُعاد مصفوفة تحتوي على عنصر واحد يساوي اسم الملف التنفيذي. أما إذا كان العنوان غير صالح، فستُعاد مصفوفة فارغة. Array(String) أمثلة تطبيق الدالة على عنوان
Query
Response
تطبيق الدالة على أثر المكدس بالكامل
Query
Response

addressToSymbol

استُحدث في: v20.1.0 يحوّل عنوانًا في الذاكرة الافتراضية داخل عملية خادم ClickHouse إلى رمز من ملفات الكائنات الخاصة بـ ClickHouse. الصيغة
المعاملات
  • address_of_binary_instruction — عنوان التعليمة ضمن عملية قيد التشغيل. UInt64
القيمة المُعادة تُرجِع الرمز من ملفات الكائن الخاصة بـ ClickHouse، أو سلسلة فارغة إذا كان العنوان غير صالح. String أمثلة تحديد السلسلة الأولى من جدول النظام trace_log
Query
Response
الحصول على رمز لعنوان واحد
Query
Response
تطبيق الدالة على أثر المكدس بالكامل
Query
Response

demangle

أُضيف في: v20.1.0 يحوّل رمزًا إلى اسم دالة في C++. وعادةً ما تُرجِع هذا الرمز الدالة addressToSymbol. البنية
الوسائط
  • symbol — رمز من ملف كائن. String
القيمة المُعادة يُعيد اسم دالة C++، أو سلسلة نصية فارغة إذا لم يكن الرمز صالحًا. String أمثلة استرجاع أول سلسلة نصية من جدول النظام trace_log
Query
Response
الحصول على اسم دالة من عنوان واحد
Query
Response
تطبيق function على كامل أثر المكدس
Query
Response

isMergeTreePartCoveredBy

استُحدثت في: v25.6.0 دالة تتحقق مما إذا كان الجزء في الوسيط الأول مشمولًا بالجزء في الوسيط الثاني. البنية
المعاملات
  • nested_part — اسم الجزء المتداخل المتوقع. String
  • covering_part — اسم الجزء المُغطّي المتوقع. String
القيمة المعادة تُرجع 1 إذا كان يغطيه، وإلا 0. UInt8 أمثلة مثال أساسي
Query
Response

logTrace

أُضيف في: v20.12.0 يُصدر رسالة trace log في server log لكل كتلة. البنية
الوسائط
  • message — الرسالة التي تُسجَّل في سجل الخادم. const String
القيمة المُعادة يعيد 0 دائمًا. UInt8 أمثلة مثال بسيط
Query
Response

mergeTreePartInfo

طُرحت في: v25.6.0 دالة تساعد على استخراج القيم المفيدة من اسم الجزء في MergeTree. الصيغة
المعاملات
  • part_name — اسم الجزء المراد فك ضغطه. String
القيمة المُعادة تُرجع قيمة من النوع Tuple مع أعمدة فرعية: partition_id, min_block, max_block, level, mutation. Tuple أمثلة مثال بسيط
Query
Response

tid

قُدِّمت في: v20.12.0 تعيد معرّف الخيط الذي تُعالَج فيه الكتلة الحالية. البنية
الوسائط
  • لا توجد.
القيمة المُعادة يعيد معرّف الخيط الحالي. UInt64 أمثلة مثال على الاستخدام
Query
Response
آخر تعديل في ٢٥ يونيو ٢٠٢٦