MMM*_*roy 4 linux ubuntu haskell time-tracking arbtt
我最近安装了arbtt,这似乎是一个基于规则,基于规则的自动时间跟踪器. http://arbtt.nomeata.de/#what
我大部分时间都在工作,但收集统计数据大约30分钟后,我最终得到以下错误.
Processing data [=>......................................................................................................................................................................................] 1%
arbtt-stats: Prelude.(!!): index too large
Run Code Online (Sandbox Code Playgroud)
有没有人对我可以解决这个问题的方法有什么建议,或者更好的是,解决它?我对用于创建规则的编码语言有0次经验(我相信Haskell).我在这一点上所做的就是尽可能地遵循文档.
此错误最终导致该工具无用,因为它不会收集数据超过30分钟.要修复它,我必须删除日志并从头开始.我主要关注的是有一个可定制的,基于规则的时间跟踪器的概念,但我绝不会使用arbtt.
根据以下评论,我在下面提供了更多信息.
当我尝试运行arbtt-recover时,我得到了一长串错误,看起来像这样.所有这些似乎都与不受支持的TimeLogEntry相关.
Trying at position 1726098.
Failed to read value at position 1726098:
Unsupported TimeLogEntry version tag 0
Run Code Online (Sandbox Code Playgroud)
至于配置文件,这是我到目前为止.
$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,
Run Code Online (Sandbox Code Playgroud)
它继续下去,但我相当自信我对所有其他行都遵循相同的语法.其余的行遵循相同的格式,但对我来说是项目/客户端特定的.如果需要,我很乐意包含文件的其余部分.
正如评论中所讨论的:这是一个腐败的案例~/.arbtt/capture.log.你通常可以解决这个问题
arbtt-recover~/.arbtt/capture.log.recovered到~/.arbtt/capture.log.需要第二个手动步骤以避免意外删除过多数据.您可以arbtt-stats通过传递使用恢复的文件来测试恢复的文件是否更好--logfile=~/.arbtt/capture.log.recovered.
例如,当存在不正常的关闭或其他未确定的原因时,会发生数据损坏.但是日志文件格式即使在损坏之后(例如,部分写入一个样本),也会正确地写入更多样本并且应该被拾取arbtt-recover,因此您不会丢失多个样本.
| 归档时间: |
|
| 查看次数: |
205 次 |
| 最近记录: |