7.3.66. thread_dump

7.3.66.1. 概要

バージョン 11.1.1 で追加.

注釈

現在このコマンドはWindowsでのみ動作します。

thread_dump は次の機能を提供します。

  • thread_dump は、以下のように、このコマンドを実行した時点の全てのスレッドのバックトレースをNOTICEレベルのログとして記録します。

    例えば、 thread_dump は、以下のようにバックトレースをログに記録します。

    2021-12-22 11:10:33.518000|n| -- Thread 00008052 --
    2021-12-22 11:10:33.582000|n| (unknown):0:0: ZwGetContextThread(): <ntdll>: <C:\Windows\SYSTEM32\ntdll.dll>
    2021-12-22 11:10:33.591000|n| (unknown):0:0: ??_C@_0BA@PIIKBMGH@grn_thread_dump@(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.591000|n| (unknown):0:0: ??_C@_0CC@GMBIJECC@D?3?2a?2groonga?2groonga?2lib?2thread@(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.591000|n| (unknown):0:0: (unknown)(): <(unknown)>: <(unknown)>
    2021-12-22 11:10:33.591000|n| (unknown):0:0: (unknown)(): <(unknown)>: <(unknown)>
    2021-12-22 11:10:33.591000|n| (unknown):0:0: (unknown)(): <(unknown)>: <(unknown)>
    2021-12-22 11:10:33.591000|n| (unknown):0:0: ??_C@_0BG@NHAMHJPM@?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9?9@(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.592000|n| D:\a\groonga\groonga\lib\thread.c:148:0: grn_thread_dump(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.593000|n| D:\a\groonga\groonga\lib\proc\proc_thread.c:87:0: command_thread_dump(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.593000|n| D:\a\groonga\groonga\lib\expr.c:1624:0: grn_proc_call(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.594000|n| D:\a\groonga\groonga\lib\command.c:193:0: grn_command_run(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.594000|n| D:\a\groonga\groonga\lib\expr.c:1660:0: grn_expr_exec(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.594000|n| D:\a\groonga\groonga\lib\ctx.c:1716:0: grn_ctx_qe_exec(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.597000|n| D:\a\groonga\groonga\lib\ctx.c:1828:0: grn_ctx_send(): <libgroonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\libgroonga.dll>
    2021-12-22 11:10:33.597000|n| D:\a\groonga\groonga\src\groonga.c:574:0: do_alone(): <groonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\groonga.exe>
    2021-12-22 11:10:33.597000|n| D:\a\groonga\groonga\src\groonga.c:4652:22: main(): <groonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\groonga.exe>
    2021-12-22 11:10:33.601000|n| d:\a01\_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288:34: __scrt_common_main_seh(): <groonga>: <C:\Users\aaa\groonga-11.1.1-8988854-x64-vs2019-with-vcruntime\bin\groonga.exe>
    2021-12-22 11:10:33.601000|n| (unknown):0:0: BaseThreadInitThunk(): <KERNEL32>: <C:\Windows\System32\KERNEL32.DLL>
    2021-12-22 11:10:33.601000|n| (unknown):0:0: RtlUserThreadStart(): <ntdll>: <C:\Windows\SYSTEM32\ntdll.dll>
    2021-12-22 11:10:33.603000|n| ---------------------
    2021-12-22 11:10:33.603000|n| -- Thread 00007860 --
    2021-12-22 11:10:33.607000|n| (unknown):0:0: NtWaitForWorkViaWorkerFactory(): <ntdll>: <C:\Windows\SYSTEM32\ntdll.dll>
    2021-12-22 11:10:33.610000|n| (unknown):0:0: TpReleaseCleanupGroupMembers(): <ntdll>: <C:\Windows\SYSTEM32\ntdll.dll>
    2021-12-22 11:10:33.610000|n| (unknown):0:0: BaseThreadInitThunk(): <KERNEL32>: <C:\Windows\System32\KERNEL32.DLL>
    2021-12-22 11:10:33.610000|n| (unknown):0:0: RtlUserThreadStart(): <ntdll>: <C:\Windows\SYSTEM32\ntdll.dll>
    2021-12-22 11:10:33.611000|n| ---------------------
    

7.3.66.2. 構文

このコマンドに引数はありません:

thread_dump

7.3.66.3. 使い方

このコマンドを実行した時点の全てのスレッドのバックトレースをNOTICEレベルのログとして取得できます。

実行例:

thread_dump
# [[0, 1337566253.89858, 0.000355720520019531], true]

7.3.66.4. 引数

このセクションではすべての引数について説明します。

7.3.66.4.1. 必須引数

必須の引数はありません。

7.3.66.4.2. 省略可能引数

省略可能な引数はありません。

7.3.66.5. 戻り値

このコマンドが成功したときは以下のようにボディは true になります:

[HEADER, true]

thread_dump が失敗すると、エラーの詳細は HEADER に含まれます。

HEADER については 出力形式 を参照してください。