p4 logparse

Parse a structured log file and return log data.

Syntax conventions

p4 [g-opts] logparse [-e] [-T fields...] [-F filter] [-s offset] [-m max] logfile


The p4 logparse command parses the indicated structured logfile and returns the log data in tagged format.

Structured logs differ from the basic error log (P4LOG) and audit log (P4AUDIT). To read the basic error log, use the p4 logtail command.

Valid names for structured log files:


All loggable events (commands, errors, audit, etc.)


Audit events (audit, purge)


Information about user login attempts.


Command events (command start, command compute, command end)


Error events (errors-failed, errors-fatal)


Server events (startup, shutdown, checkpoint, journal rotation, etc.)


Major events that occur during replica integrity checking.

ldapsync.csv Activity of p4 ldapsync


Log the full network route of authenticated client connections. Errors related to net.mimcheck are also logged against the related hop.


Command tracking (track-usage, track-rpc, track-db)


Trigger events.


User events, with one record every time a user runs p4 logappend

To enable structured logging, set the serverlog.file.n configurable(s) to the name of the file. For example:

$ p4 configure set serverlog.file.2=commands.csv
$ p4 configure set serverlog.file.3=errors.csv
$ p4 configure set serverlog.file.5=audit.csv

Numbers provided for the configurables do not have to be consecutive. A given number cannot exceed 500, so the following assignment returns an error:

$ p4 configure set serverlog.file.666=commands.csv

Structured log files are automatically rotated on checkpoint, journal creation, overflow of associated serverlog.maxmb.n limit (if configured), and the p4 logrotate command.



Display special characters as hex-encodings.

-F filter

Limit output to records that match the filter pattern.

-m max

Limit the number of lines returned.

-s f_offset

Start parsing at the given file offset as returned in the f_offset field.

-T fields...

Limit displayed fields to those listed.


See Global options.

Usage Notes

Can File Arguments Use Revision Specifier? Can File Arguments Use Revision Range? Minimal Access Level Required





To match the contents of a particular field, use the field=word syntax. Logical operators & (AND), | (OR), ^ (not), and () (grouping) can

also be used. Spaces are treated as a low-precedence AND operator

OR (|) operator to get the event type and date for both user bruno and user admin:

p4 logparse -T 'f_user f_eventtype f_date' -F 'f_user=bruno | f_user=admin' errors.csv

AND (&) operator, NOT (^) operator to get event type and date while excluding the user admin:

p4 logparse -T 'f_user f_eventtype f_date' -F 'f_eventtype=4 & ^f_user=admin ' errors.csv

The ^ operator can be used only in conjunction with the & or space operators.

wildcard (*) operator matches anything, so mar* will match mary, maria, mark, marcy, marcus:

p4 logparse -T 'f_user f_eventtype f_date' -F 'f_user=mar*' errors.csv

Related Commands

To add entries to the log so that p4 logparse can find them.

p4 logappend

Describe the schema of structured log record types. p4 logschema