WeeklyUsage tracks cost per user, per project, per week. Each document represents one week bucket of usage.
| 25 | // WeeklyUsage tracks cost per user, per project, per week. |
| 26 | // Each document represents one week bucket of usage. |
| 27 | type WeeklyUsage struct { |
| 28 | ID bson.ObjectID `bson:"_id"` |
| 29 | UserID bson.ObjectID `bson:"user_id"` |
| 30 | ProjectID string `bson:"project_id"` |
| 31 | WeekBucket bson.DateTime `bson:"week_bucket"` // Timestamp truncated to the week (Monday) |
| 32 | SuccessCost float64 `bson:"success_cost"` // Cost in USD for successful requests |
| 33 | FailedCost float64 `bson:"failed_cost"` // Cost in USD for failed requests |
| 34 | UpdatedAt bson.DateTime `bson:"updated_at"` |
| 35 | } |
| 36 | |
| 37 | func (u WeeklyUsage) CollectionName() string { |
| 38 | return "weekly_usages" |
nothing calls this directly
no outgoing calls
no test coverage detected