Debugging

Control Log Verbosity Per Category at Launch

Drowning in log noise or missing critical messages? The -LogCmds launch argument lets you set verbosity per log category without recompiling, from silencing entire subsystems to enabling Verbose output for one specific category.

loggingverbositylaunch-argsdebugginglogcmds

Unreal's log system has hundreds of categories, each with its own verbosity level. The -LogCmds argument overrides them at launch, which is much faster than editing DefaultEngine.ini or recompiling.

Syntax

bash
-LogCmds="LogCategoryName Verbosity, AnotherCategory Verbosity"

Practical Examples

bash
# Enable verbose for Level Snapshots
-LogCmds="LogLevelSnapshots Verbose"

# Enable verbose for media playback debugging
-LogCmds="LogImgMedia Verbose, LogElectraPlayer Verbose, LogElectraPlayerPlugin Verbose"

# Silence a noisy category
-LogCmds="LogNetDormancy NoLogging"

# Multiple categories in one argument
-LogCmds="LogLevelSnapshots Verbose, LogImgMedia Verbose, LogNetDormancy NoLogging"

Verbosity Levels (lowest to highest)

  • NoLogging: suppress all output from this category
  • Fatal: only fatal errors
  • Error: errors and fatals
  • Warning: warnings, errors, and fatals
  • Display: important info (default for most categories)
  • Log: general log messages
  • Verbose: detailed trace output
  • VeryVerbose: maximum detail (very noisy)

Setting Verbosity at Runtime

You can also change verbosity live from the Unreal console without restarting:

bash
Log LogLevelSnapshots Verbose
Log LogImgMedia VeryVerbose
To find the correct category name, search the source code for DEFINE_LOG_CATEGORY or look at existing log output. The category name appears in brackets before each message.