我最近安装了 arbtt,它似乎是一个有趣的、基于规则的自动时间跟踪器。 http://arbtt.nomeata.de/#what
我已经让它大部分工作了,但是在收集统计数据 30 分钟左右后,我最终得到了以下错误。
Processing data [=>......................................................................................................................................................................................] 1%
arbtt-stats: Prelude.(!!): index too large
有没有人对我可以解决这个问题的方法有任何建议,或者更好的是,解决它?我对用于创建规则的编码语言有 0 经验(我相信是 Haskell)。到目前为止,我所做的只是尽可能地遵循文档。
此错误最终使该工具无法使用,因为它收集数据的时间不超过 30 分钟。要修复它,我必须删除日志并从头开始。我主要对拥有一个可定制的、基于规则的时间跟踪器的概念感兴趣,但我绝不会依赖于使用 arbtt。
根据下面的评论,我在下面提供了更多信息。
当我尝试运行 arbtt-recover 时,我得到一长串看起来像这样的错误。所有这些似乎都与 Unsupported TimeLogEntry 有关。
Trying at position 1726098.
Failed to read value at position 1726098:
Unsupported TimeLogEntry version tag 0
至于配置文件,这是我目前所拥有的。
$idle > 30 ==> tag inactive,
-- A rule that matches on a list of strings
current window $program == ["Chrome", "Firefox"] ==> tag Web,
current window $program == ["skype"] ==> tag Skype,
current window $program == ["jetbrains-phpstorm"] ==> tag PhpStorm,
( current window $title =~ m!Inbox! ||
current window $title =~ m!Outlook! ) ==> tag Emails,
( current window $title =~ m!AdWords! ||
current window $title =~ m!Analytics! ) ==> tag Adwords,
它继续进行,但我相当有信心我对所有其他行都遵循了相同的语法。其余的行遵循相同的格式,但对我来说是项目/客户特定的。如果需要,我很乐意包含文件的其余部分。