説明
LLVM の XRay 機能を使用するインストルメンテーションポイントが格納されます。
カラム
id(UInt32) — インストルメンテーションポイントの IDfunction_id(Int32) — ELF バイナリの xray_instr_map セクションで関数に割り当てられた ID。function_name(LowCardinality(String)) — 関数のインストルメントに使用される名前。handler(LowCardinality(String)) — 関数のインストルメンテーションポイントにパッチ適用されたハンドラー。entry_type(Enum8('Entry' = 0, 'Exit' = 1, 'EntryAndExit' = 2)) — パッチのエントリタイプ。symbol(LowCardinality(String)) — 完全なデマングル済みのシンボル名。arguments(Array(Dynamic)) — ハンドラー呼び出しの引数。
例
SELECT * FROM system.instrumentation FORMAT Vertical;Row 1:
──────
id: 0
function_id: 231280
function_name: QueryMetricLog::startQuery
handler: log
entry_type: Entry
symbol: DB::QueryMetricLog::startQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>>, unsigned long)
arguments: ['test']
Row 2:
──────
id: 1
function_id: 231280
function_name: QueryMetricLog::startQuery
handler: profile
entry_type: EntryAndExit
symbol: DB::QueryMetricLog::startQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>>, unsigned long)
arguments: []
Row 3:
──────
id: 2
function_id: 231280
function_name: QueryMetricLog::startQuery
handler: sleep
entry_type: Exit
symbol: DB::QueryMetricLog::startQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>>, unsigned long)
arguments: [0.3]
3 rows in set. Elapsed: 0.302 sec.関連項目
- SYSTEM INSTRUMENT — インストルメンテーションポイントを追加または削除します。
- system.trace_log — プロファイリングログを確認します。
- system.symbols — インストルメンテーションポイントの追加に使用するシンボルを確認します。