profile ConVars
Every variable and command in the profile namespace that a Rust dedicated server lists, 39 in all, with the help text it printed and the value we read. How to set them is on the ConVar overview.
Recorded on Rust build 25582902, . Values are what that server returned, which is not always the default.
39 entries
Variables 29
| ConVar | Value | Description |
|---|---|---|
| profile.command_lagspike_threshold | 40 | |
| profile.exportintervals | 1800 | (Generated) Interval in seconds between automatic exports of server profiler data to disk; lower values provide more frequent snapshots at a higher I/O cost |
| profile.immediatemodeenabled | False | (Generated) When enabled, the server native profiler runs in immediate mode, capturing every frame rather than sampling; more accurate but higher overhead |
| profile.notifyonmainalloccount | 0 | (Generated) Main-thread allocation count threshold per tick for profiler notifications; 0 = disabled; helps isolate main-thread GC pressure |
| profile.notifyonmainmemkb | 0 | (Generated) Main-thread memory usage threshold in kilobytes for profiler notifications; 0 = disabled |
| profile.notifyontotalalloccount | 16000 | (Generated) Allocation count threshold (per profiler tick) above which the native continuous profiler fires a notification; useful for detecting unexpected allocation spikes |
| profile.notifyontotalmemkb | 12288 | (Generated) Total managed memory threshold in kilobytes above which the native profiler fires a notification; helps detect memory leaks during long server runs |
| profile.notifyonworkeralloccount | 0 | (Generated) Worker-thread allocation count threshold per tick for profiler notifications; 0 = disabled; helps detect background task GC pressure |
| profile.notifyonworkermemkb | 0 | (Generated) Worker-thread memory usage threshold in kilobytes for profiler notifications; 0 = disabled |
| profile.profiling_entities | 0 | 0 = off, 1 = spawn/kill, 2 = spawn/kill per entity, 3 = count every '5 min' |
| profile.profiling_entity_count_interval | 300 | How frequently to count all entities across the server |
| profile.profiling_fixed_invokes | 0 | 0 = off, 1 = stats per frame, 2 = stats per method |
| profile.profiling_invokes | 0 | 0 = off, 1 = stats per frame, 2 = stats per method |
| profile.profiling_lagspikes | False | Record inbound RPC & ConsoleCommands that cause lag spikes |
| profile.profiling_packets | False | Record type of packets inbound/outbound per frame |
| profile.profiling_ping | 0 | Raknet statistics, 0 = off, 2 = per connection |
| profile.profiling_ping_interval | 1 | How often to flush raknet stats per second |
| profile.profiling_ping_per_frame | 30 | |
| profile.profiling_rcon | 0 | 0 = off, 1 = count per frame, 2 = connection attempts, 3 = messages |
| profile.profiling_rcon_message_length | 512 | Clamp the length of logged RCON messages to prevent the profiler from being flooded with large messages |
| profile.profiling_work_queue | False | Record execution time of ObjectWorkQueues per frame |
| profile.quiet | False | Controls whether perfsnapshot commands emit chat messages |
| profile.rcon_lagspike_threshold | 40 | |
| profile.rpc_lagspike_threshold | 40 | |
| profile.runtime_profiling | 0 | 0 = off, 1 = basic, 2 = everything. This will reset all profiling convars, however they can be modified afterwards |
| profile.runtime_profiling_interval | 60 | |
| profile.runtime_profiling_persist | False | Enable to allow runtime profiling to persist across restarts |
| profile.runtime_profiling_pool_flush_interval | 300 | How often to flush pooling stats in seconds |
| profile.runtime_profiling_pooling | 0 | 0 = off, 1 = flush every 5 minutes |
Commands 10
| Command | Description |
|---|---|
| profile.countsyncmoveentities | (Generated) Counts and prints all entities that use synchronous movement updates grouped by prefab, helping identify expensive per-frame entity movers |
| profile.dump_profile_recorders | (Generated) Dumps all available Unity Profiler recorder handles to CSV format showing name, category, unit type, and flags; useful for discovering available performance metrics |
| profile.flush_analytics | (Generated) Flushes any buffered analytics events immediately to the analytics backend rather than waiting for the next scheduled flush |
| profile.perfsnapshot | profile.perfsnapshot [delay=15, int] [name='Profile', str, no extension, max 32chars] [frames=10, int, max 10] [debug=false, dumps a binary snapshot as well] Will produce a JSON perf snapshot of <frames> that can be viewed in Perfetto or similar tools |
| profile.perfsnapshot_stream | profile.perfsnapshot_stream [name='Profile', str, no extension, max 32chars] [MainCap=32, int, max 256, buffer size for Main thread in Megabytes] [WorkerCap=8, int, max 256, buffer size for each Worker thread in Megabytes] [debug=false, dumps a binary snapshot as well] Will stream <mainCap>MB worth of data and generate a JSON snapshot that can be viewed in Perfetto or similar tools |
| profile.resetexportinterval | (Generated) Resets the profiler export interval timer, causing the next export to happen after a full ExportIntervalS from now |
| profile.start | (Generated) Starts recording a Unity Profiler binary log to a timestamped file in the profile/ folder; requires ENABLE_PROFILER build flag |
| profile.stop | (Generated) Stops the active Unity Profiler binary log recording and finalises the file |
| profile.stopwatchingallocs | Stops tracking of allocations |
| profile.watchallocs | Params: [Name = 'Allocs'] [maxStackDepth = 16]. Starts tracking of allocs, dumping a [Name].json.gz record once conditions are met |
Back to the list of all namespaces.
Skip the manual work: install the Panelra agent
Wipes, updates, restarts, plugins and crash alerts for your Rust servers, from one dashboard. One install command on your Linux host, no inbound ports for the agent.
Free during the open beta. Pricing will be announced before the beta ends.