qlop(1)

NAME
qlop - emerge log analyzer

SYNOPSIS
qlop [opts] <pkgname>

DESCRIPTION
qlop reads from $EMERGE_LOG_DIR/emerge.log and tries to extract information about merges, unmerges and syncs. It can calculate average merge times or just list them. When given no arguments or just -v, qlop acts as if -slumt was given and thus lists the time taken for all occurrances of merges, unmerges and sync operations found in the log for the last emerge(1) action performed by Portage.

By default, packages are printed as CATEGORY/PN. Use -v to print the package version and revision numbers, e.g. CATEGORY/PF. Note that when using this option, averages (-a) are reported per version instead of per package.

The non-option arguments to qlop can be any valid atoms. Multiple can be given to match. Since all of these are treated as atoms, version specifications can be used such as <bash-5. This allows to zoom in further on specific packages.

After version 0.74 of portage-utils, qlop was changed considerably to be more consistent and more advanced. Most notably, this has changed default date output and command line flags. Instead of reporting the time the operation finished, qlop now reports the time the operation started. The behaviour of the old -g flag is best matched by the new -t flag. Similar, the old -t flag is matched by the new -a flag.

OPTIONS

-c, --summary
    Show a grand total for averages. This option implies -a. Useful to compute time it takes to recompile all packages or a set of packages (e.g. world).

-t, --time
    Show the time it took to merge, unmerge or sync.

-a, --average
    Calculate average merge, unmerge or sync time. This is the average time for all occurrences found respecting any date limits.

-p, --predict
    Print prediction of time it takes to complete action.

-H, --human
    Print elapssed time in human readable format. This form uses minutes, hours and days instead of just seconds.

-M, --machine
    Print start/elapsed time as seconds with no formatting.

-m, --merge
    Show merge history.

-u, --unmerge
    Show unmerge history.

-U, --autoclean
    Show autoclean unmerge history.

-s, --sync
    Show sync history.

-E, --emerge
    Immitate emerge(1) output, as if emerge -pv had been run. This produces a list of packages that were installed (N), upgraded (U), downgraded (UD), re-installed (R) or unmerged (D). The list always includes the version numbers, and for up/downgrades the previous version is listed between square brackets after the package. When -v is used, the emerge invocations are printed as well, to really show what happened. When concurrent merges are present in the displayed timeframe, the output will be hard to read. This is a limitation of the emerge.log format. It is possible to combine this flag with the -d flag, in which case the default behaviour of displaying the last merge (-l) is disabled.

-e, --endtime
    Report time at which the operation finished (iso started).

-r, --running
    Print operations currently in progress. An ETA is calculated based on the average for the operation. If the elapsed exceeds the average, the ETA is calculated against the longest time observed for the operation. The -v flag will display which mode is currently used. If the elapsed time also exceeds the longest time observed, or no previous occurrences for the operation exist, unknown is printed. When combined with -t the elapsed time is also displayed.

-d <arg>, --date <arg>
    Limit the selection of packages to the date given, or to the range of dates if this argument is given twice. The --date option can take a few forms.

    NUMBER <day|week|month|year>[s] [ago]
        Relative time, specifying NUMBER days, weeks, months or years, for example 3 days ago.

    today
        Alias for 0 days ago.

    yesterday
        Alias for 1 day ago.

    YYYY-MM-DD
        Big-endian date, with components separated by hyphens, starting with year, followed by month and day of month.

    YYYY-MM-DDThh:mm:ss
        As before, but hours, minutes and seconds added. This is the same format qlop prints for timestamps.

    SSSSSSSSS or @SSSSSSSSS
        Seconds since 1970-01-01 00:00:00 +0000 (UTC), the UNIX epoch.

    FORMAT|DATE
        Use FORMAT as input for strptime(3) to parse DATE.

-l, --lastmerge
    Limit selection to last Portage emerge action. This option is a dynamic version of -d, and hence both cannot be used together.

-f <arg>, --logfile <arg>
    Read emerge logfile instead of $EMERGE_LOG_DIR/emerge.log.

-w <arg>, --atoms <arg>
    Read package atoms to report from file.

-F <arg>, --format <arg>
    Print matched atom using given format string.

--root <arg>
    Set the ROOT env var.

-v, --verbose
    Print package versions and revisions (PF) instead of package (PN).

-q, --quiet
    Omit printing of timestamps and operation symbols, can be used to generate a flat list of atoms, e.g. -qml to print the package names merged in the last emerge operation.

-C, --nocolor
    Don't output color.

--color
    Force color in output.

-h, --help
    Print this help and exit.

-V, --version
    Print version and exit.

REPORTING BUGS
Please report bugs via http://bugs.gentoo.org/
Product: Portage Development; Component: Tools

AUTHORS
Ned Ludd <solar@gentoo.org>
Mike Frysinger <vapier@gentoo.org>
Fabian Groffen <grobian@gentoo.org>

SEE ALSO
q(1), qatom(1), qcheck(1), qdepends(1), qfile(1), qgrep(1), qkeyword(1), qlist(1), qmanifest(1), qmerge(1), qpkg(1), qsearch(1), qsize(1), qtbz2(1), qtegrity(1), quse(1), qwhich(1), qxpak(1)