Thyme自动追踪使用应用程序的时间
Thyme 可以自动追踪你使用应用程序的时间。
特性:
简单的命令行界面:
每 30s 记录一次你使用的应用
$ while true; do thyme track -o thyme.json; sleep 30s; done;
在新窗口创建图表以显示应用使用时间
$ thyme show -i thyme.json -w stats > thyme.html
安装:
安装 Go:
$ go get -u github.com/sourcegraph/thyme/cmd/thyme
按照 thyme.dep 打印的说明
$ thyme dep
校验 thyme
$ thyme track
使用示例
var trackCmd TrackCmd
func (c *TrackCmd) Execute(args []string) error {
t, err := getTracker()
if err != nil {
return err
}
snap, err := t.Snap()
if err != nil {
return err
}
if c.Out == "" {
out, err := json.MarshalIndent(snap, "", " ")
if err != nil {
return err
}
fmt.Println(string(out))
} else {
var stream thyme.Stream
if _, err := os.Stat(c.Out); err == nil {
if err := func() error {
f, err := os.Open(c.Out)
if err != nil {
return err
}
defer f.Close()
if err := json.NewDecoder(f).Decode(&stream); err != nil {
return err
}
return nil
}(); err != nil {
return err
}
} else if !os.IsNotExist(err) {
return err
}
stream.Snapshots = append(stream.Snapshots, snap)
f, err := os.Create(c.Out)
if err != nil {
return err
}
if err := json.NewEncoder(f).Encode(stream); err != nil {
return err
}
}
return nil
}评论
