Helix Core is now P4. Product user interfaces will be updated soon. Learn more >>

P4 CLI Documentation | 2026.1

# P4DEBUG

Set debug levels or configurables that affect P4 Server or proxies running as Windows services.

## Usage notes

Used by Client? | Used by Server? | Command-Line Alternative | Can be set in P4CONFIG file?
--- | --- | --- | ---
No | Yes | None | No

### Server restart

- Changes to `P4DEBUG` settings take effect when the server or proxy is restarted.

- Changes to some configurables take effect when the server or proxy is restarted. See the "Server restart required?" column of the tables of the Configurables reference.

### Proxy

The proxy does not set debugging by default, but the options can be set on the command line and in `P4DEBUG`.

Setting server debug levels on a P4 Server (`p4d`) by using `P4DEBUG` has no effect on the debug level of P4 Proxy (`p4p`) processes or downstream replicas or edge servers.

## Value if not explicitly set

Operating System | Value
--- | ---
All | `P4DEBUG` does not exist until it is explicitly set.

## Examples

The `P4DEBUG` environment variable can hold values for multiple arguments in a comma-separated string:

Linux and macOS | Note
--- | ---
`export P4DEBUG="server=3"` |
`export P4DEBUG="server=3,track=1"` | Can hold values for multiple arguments in a comma-separated string.
`unset P4DEBUG` |

P4 Server or proxies running as Windows services do not support setting debug levels or configurables on the command line used to start the service. However, administrators at Windows sites can use p4 set with `P4DEBUG` for debug levels or configurables:

Windows | Note
--- | ---
`p4 set P4DEBUG="server=3"` |
`p4 set P4DEBUG="server=3,track=1"` | Can hold values for multiple arguments in a comma-separated string.
`p4 set P4DEBUG=` | unsets `P4DEBUG`

See also Using P4LOG in the P4 Server Administration Documentation.

Your search for returned results