func (h *MetricsHooks) OnClose(sess *server.Session) error { _, authExtra, err := extractSession(sess) if err != nil { return err } err = h.client.AddEvent("CloseSession", &sessionCloseEvent{ Keen: keen.KeenProperties{ Timestamp: keen.Timestamp(sess.Start()), }, OS: authExtra.OS, ClientId: sess.Id(), User: authExtra.AuthToken, Version: authExtra.ClientVersion, Reason: "", // XXX Duration: time.Since(sess.Start()).Seconds(), }) if err != nil { h.Error("Failed to record CloseSession event: %v", err) } return nil }