@@ -43,7 +43,6 @@ import (
43
43
"github.com/coder/coder/v2/coderd/appearance"
44
44
"github.com/coder/coder/v2/coderd/audit"
45
45
"github.com/coder/coder/v2/coderd/awsidentity"
46
- "github.com/coder/coder/v2/coderd/batchstats"
47
46
"github.com/coder/coder/v2/coderd/database"
48
47
"github.com/coder/coder/v2/coderd/database/dbauthz"
49
48
"github.com/coder/coder/v2/coderd/database/dbrollup"
@@ -69,7 +68,6 @@ import (
69
68
"github.com/coder/coder/v2/coderd/util/slice"
70
69
"github.com/coder/coder/v2/coderd/workspaceapps"
71
70
"github.com/coder/coder/v2/coderd/workspacestats"
72
- "github.com/coder/coder/v2/coderd/workspaceusage"
73
71
"github.com/coder/coder/v2/codersdk"
74
72
"github.com/coder/coder/v2/codersdk/drpc"
75
73
"github.com/coder/coder/v2/codersdk/healthsdk"
@@ -189,7 +187,7 @@ type Options struct {
189
187
HTTPClient * http.Client
190
188
191
189
UpdateAgentMetrics func (ctx context.Context , labels prometheusmetrics.AgentMetricLabels , metrics []* agentproto.Stats_Metric )
192
- StatsBatcher * batchstats. Batcher
190
+ StatsBatcher * workspacestats. DBBatcher
193
191
194
192
WorkspaceAppsStatsCollectorOptions workspaceapps.StatsCollectorOptions
195
193
@@ -206,7 +204,7 @@ type Options struct {
206
204
// stats. This is used to provide insights in the WebUI.
207
205
DatabaseRolluper * dbrollup.Rolluper
208
206
// WorkspaceUsageTracker tracks workspace usage by the CLI.
209
- WorkspaceUsageTracker * workspaceusage. Tracker
207
+ WorkspaceUsageTracker * workspacestats. UsageTracker
210
208
}
211
209
212
210
// @title Coder API
@@ -384,8 +382,8 @@ func New(options *Options) *API {
384
382
}
385
383
386
384
if options .WorkspaceUsageTracker == nil {
387
- options .WorkspaceUsageTracker = workspaceusage . New (options .Database ,
388
- workspaceusage . WithLogger (options .Logger .Named ("workspace_usage_tracker" )),
385
+ options .WorkspaceUsageTracker = workspacestats . NewTracker (options .Database ,
386
+ workspacestats . TrackerWithLogger (options .Logger .Named ("workspace_usage_tracker" )),
389
387
)
390
388
}
391
389
@@ -434,8 +432,7 @@ func New(options *Options) *API {
434
432
options .Database ,
435
433
options .Pubsub ,
436
434
),
437
- dbRolluper : options .DatabaseRolluper ,
438
- workspaceUsageTracker : options .WorkspaceUsageTracker ,
435
+ dbRolluper : options .DatabaseRolluper ,
439
436
}
440
437
441
438
var customRoleHandler CustomRoleHandler = & agplCustomRoleHandler {}
@@ -557,6 +554,7 @@ func New(options *Options) *API {
557
554
Pubsub : options .Pubsub ,
558
555
TemplateScheduleStore : options .TemplateScheduleStore ,
559
556
StatsBatcher : options .StatsBatcher ,
557
+ UsageTracker : options .WorkspaceUsageTracker ,
560
558
UpdateAgentMetricsFn : options .UpdateAgentMetrics ,
561
559
AppStatBatchSize : workspaceapps .DefaultStatsDBReporterBatchSize ,
562
560
})
@@ -1301,8 +1299,7 @@ type API struct {
1301
1299
Acquirer * provisionerdserver.Acquirer
1302
1300
// dbRolluper rolls up template usage stats from raw agent and app
1303
1301
// stats. This is used to provide insights in the WebUI.
1304
- dbRolluper * dbrollup.Rolluper
1305
- workspaceUsageTracker * workspaceusage.Tracker
1302
+ dbRolluper * dbrollup.Rolluper
1306
1303
}
1307
1304
1308
1305
// Close waits for all WebSocket connections to drain before returning.
@@ -1341,7 +1338,7 @@ func (api *API) Close() error {
1341
1338
_ = (* coordinator ).Close ()
1342
1339
}
1343
1340
_ = api .agentProvider .Close ()
1344
- api .workspaceUsageTracker .Close ()
1341
+ _ = api .statsReporter .Close ()
1345
1342
return nil
1346
1343
}
1347
1344
0 commit comments