MCPcopy Create free account
hub / github.com/Mnexa-AI/e2a / RecordUsageEvent

Method RecordUsageEvent

internal/usage/store.go:41–57  ·  view source on GitHub ↗
(ctx context.Context, event *UsageEvent)

Source from the content-addressed store, hash-verified

39}
40
41func (s *Store) RecordUsageEvent(ctx context.Context, event *UsageEvent) error {
42 if event.ID == "" {
43 event.ID = generateBillingID()
44 }
45 if event.CreatedAt.IsZero() {
46 event.CreatedAt = time.Now()
47 }
48 if event.EventType == "" {
49 event.EventType = "message"
50 }
51 _, err := s.pool.Exec(ctx,
52 `INSERT INTO usage_events (id, user_id, agent_id, domain, direction, event_type, created_at)
53 VALUES ($1, $2, $3, $4, $5, $6, $7)`,
54 event.ID, event.UserID, event.AgentID, event.Domain, event.Direction, event.EventType, event.CreatedAt,
55 )
56 return err
57}
58
59func (s *Store) GetUsageSummary(ctx context.Context, userID, bucketDate string) (*UsageSummary, error) {
60 sum := &UsageSummary{}

Callers 1

RecordAndCheckMethod · 0.80

Implementers 1

Storeinternal/identity/store.go

Calls 2

generateBillingIDFunction · 0.85
ExecMethod · 0.65

Tested by

no test coverage detected