home | help
ARBTT-STATS(1)		       Program references		  ARBTT-STATS(1)

NAME
     arbtt-stats - generate statistics from the arbtt data samples

SYNOPSIS
     arbtt-stats [OPTION...]

DESCRIPTION
     arbtt-stats  reads  the  samples that were recorded so far by arbtt-capture
     from the log file, filters them according to the users  specifications  and
     generates one or more reports from the data.

     When run without any options, --total-time is assumed.

     The  order  in which filters (--exclude, --only, --also-inactive and --fil-
     ter) and reports are passed to the program is irrelevant: All filters given
     on the command line are active for all reports.

OPTIONS
     -h, -?, --help
	 shows a short summary of the available options, and exists.

     -V, --version
	 shows the version number, and exists.

     --logfile FILE
	 logfile to use instead of ~/.arbtt/capture.log

     --categorizefile
	 categorize file to use instead of ~/.arbtt/categorize.cfg

   Filtering options
     -x TAG, --exclude TAG
	 Ignore any data samples that have been assigned this tag  or  category.
	 To  distinguish tags and categories, the latter have to be entered fol-
	 lowed by a colon. Can be given more than once.

     -o TAG, --only TAG
	 Ignore any data samples that have not been assigned this tag.	To  dis-
	 tinguish tags and categories, the latter have to be entered followed by
	 a colon. Can be given more than once.

     --also-inactive
	 by  default,  arbtt-stats  ignores any samples which have been assigned
	 the tag inactive. This flag disables this behaviour.

     -f CONDITION, --filter CONDITION
	 Only consider samples matching the given condition, which  follows  the
	 same  syntax as in categorize.cfg (Nonterminal Cond in the formal gram-
	 mar specification found in the user guide).

   Report options
     -m PERCENTAGE, --min-percentage PERCENTAGE
	 Ignore tags whose percentage is less than the value specified here. De-
	 fault percentage: 1%.

     --output-exclude TAG
	 Skip this tag or category when printing statistics.  Only  affects  the
	 reports  --total-time	and  --category.  To  distinguish tags and cate-
	 gories, the latter have to be entered followed by a colon. Can be given
	 more than once.

     --output-only TAG
	 Prints statistics only for the specified tag or category. Only  affects
	 the  reports --total-time and --category. To distinguish tags and cate-
	 gories, the latter have to be entered followed by a colon. Can be given
	 more than once.

     --output-format FORMAT
	 Specify the report output format, may be one of: text, csv (comma-sepa-
	 rated values), tsv (TAB-separated values). Default format: text.

   Reports
     -i, --information
	 Various bits of information about the recorded data, such as total time
	 recorded, number of records etc. In this report, "time recorded" is the
	 sum of all samples, including inactive and those that are  disabled  by
	 the  filter,  while  "time selected" is the sum of the samples that are
	 matched by the given filters.

     -t, --total-time
	 For all tags, print the part of the selected time with this tag applied
	 to, both as an absolute value and a percentage of the selected time.

     -c CATEGORY, --category CATEGORY
	 For the given category, give the textual equivalent of a pie chart: For
	 each possible value of the category, including one for "no tag of  this
	 category  present",  give the absolute time and fraction. Entries which
	 are not displayed because of the  option  --min-percentage  are  aggre-
	 gated.

     --each-category
	 This  is  just  a  shortcut for a series of --category options, one for
	 each category found in the data.

     --intervals [TAG|CATEGORY:]
	 This report lists all periods of consecutive time intervals  where  the
	 given tag has been applied to, or where the given category has the same
	 value.

	 To  distinguish tags and categories, the latter have to be entered fol-
	 lowed by a colon.

	 This report will give wrong results if an activity has been carried out
	 at the end of a session and right at the beginning, as the intermediate
	 time is thought to be	part  of  the  interval.  Inactive  times  while
	 arbtt-capture is running will separate the results as expected.

     --for-each PERIOD
	 This  is  not a report of its own, but causes the selected report to be
	 executed for each of the given PERIOD (which can be  minute,  hour,day,
	 month or year) where there exist selected samples. All the reports will
	 then  be  printed one after another or, in the case of CSV output, with
	 an additional column.

	 Note that if this option is enabled, samples that are filtered out  are
	 completely  ignored  (to avoid empty reports for periods with only fil-
	 tered samples). Therefore, the --information report will print the num-
	 bers for the samples selected also for the totals.

EXAMPLES
     Some useful examples of what you can do with arbtt-stats are provided here:

	 # Only consider the time when I was programming in Haskell
	 arbtt-stats -o Editing-Haskell

	 # Tell me what evolution folders I spend my time in when I actually do
	 # work with e-Mail
	 arbtt-stats -o Program:evolution -c Evo-Folder

	 # Generate statistics about the last hour
	 arbtt-stats -f '$sampleage < 1:00'

FILES
     ~/.arbtt/capture.log
	 binary file, storing the arbtt data samples

     ~/.arbtt/categorize.cfg
	 specification of the arbtt categorizer syntax. A  detailed  description
	 is  given  in	the  section  called  "Configuring the arbtt categorizer
	 (arbtt-stats)"

SEE ALSO
     See the arbtt manual for more information and the arbtt hackage page[1] for
     newer versions of arbtt.

AUTHORS
     Joachim Breitner <mail@joachim-breitner.de>
	 Main author of arbtt

     Sergey Astanin <s.astanin@gmail.com>
	 Contributor

     Martin Kiefel <mk@nopw.de>
	 Contributor

     Muharem Hrnjadovic <muharem@linux.com>
	 Contributor

     Markus Hauck <markus1189@gmail.com>
	 Contributor

     Thomasz Mi"Asko <tomasz.miasko@gmail.com>
	 Contributor

     Waldir Pimenta <waldyrious@gmail.com>
	 Documentation writer

     Gwern Branwen <gwern@gwern.net>
	 Documentation writer

     Paolo G. Giarrusso <p.giarrusso@gmail.com>
	 Contributor

     Michal J. Gajda <migamake@migamake.com>
	 Contributor

NOTES
      1. arbtt hackage page
	 http://hackage.haskell.org/package/arbtt

arbtt manual			   08/29/2026			  ARBTT-STATS(1)

home | help