Skip to content

Manual Dump

BlueShank edited this page Sep 1, 2026 · 2 revisions

Sometimes you want a report right now without waiting for a crash or freeze, for example the server feels sluggish and you want to see what the game thread is doing.
An external process can force a capture without touching the game.
The report is written just like a freeze report (game-thread stack, Lua traces, modules, diagnostics) and lands in the crash folder with a dump type.

Requires CRASHCAPTURE_MANUAL_DUMP (on by default), see Configuration.

Linux

Send SIGUSR1 to the server process:

kill -USR1 <pid>
# or, if it's the only srcds_linux on the box:
pkill -USR1 srcds_linux

Note that on Linux this claims SIGUSR1.
If another component in your process already uses that signal, the plugin chains to it after capturing, but you can turn the dump trigger off with manual_dump.

Windows

Signal the per-pid named event Local\CrashCapture_Dump_<pid>:

HANDLE h = OpenEventA(EVENT_MODIFY_STATE, FALSE, "Local\\CrashCapture_Dump_1234");
SetEvent(h);
CloseHandle(h);

From Lua

If you require to dump via lua, simply call crashcapture.dump(), this will generate in-place of where this was called from:

crashcapture.dump()

Third-party binary modules can also request dumps through the C API (cc->dump(reason)).

Clone this wiki locally