Skip to content

Commit 1adb4ae

Browse files
authored
refact(map-metrics): collect map metrics on event instead of job (#250)
1 parent b1709ad commit 1adb4ae

13 files changed

Lines changed: 145 additions & 262 deletions
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import type { Knex } from "knex";
2+
3+
4+
export async function up(knex: Knex): Promise<void> {
5+
await knex.schema.alterTable("server_status_metrics", (table) => {
6+
table.dropColumn("server_id");
7+
});
8+
}
9+
10+
11+
export async function down(knex: Knex): Promise<void> {
12+
await knex.schema.alterTable("server_status_metrics", (table) => {
13+
table.string("server_id").notNullable();
14+
});
15+
}
16+

packages/core/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ export * from './src/services/StatusUpdater';
3636
export * from './src/services/TF2ServerReadinessService';
3737

3838
// Use cases
39-
export * from './src/usecase/CollectServerMetrics';
4039
export * from './src/usecase/ConsumeCreditsFromRunningServers';
4140
export * from './src/usecase/CreateCreditsPurchaseOrder';
4241
export * from './src/usecase/CreateServerForUser';
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
export type ServerStatusMetric = {
22
id?: number;
3-
serverId: string;
43
map: string;
54
timestamp: Date;
65
};

packages/core/src/usecase/CollectServerMetrics.test.ts

Lines changed: 0 additions & 144 deletions
This file was deleted.

packages/core/src/usecase/CollectServerMetrics.ts

Lines changed: 0 additions & 64 deletions
This file was deleted.

packages/entrypoints/src/discordBot.ts

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { TerminateEmptyServers } from "@tf2qs/core";
1212
import { TerminateLongRunningServers } from "@tf2qs/core";
1313
import { TerminatePendingServers } from "@tf2qs/core";
1414
import { TerminateServersWithoutCredit } from "@tf2qs/core";
15-
import { CollectServerMetrics } from "@tf2qs/core";
1615
import { AWSCostProvider } from "@tf2qs/providers";
1716
import { OracleCostProvider } from "@tf2qs/providers";
1817
import { DefaultCostProvider } from "@tf2qs/providers";
@@ -45,7 +44,7 @@ import { defaultConfigManager } from "@tf2qs/providers";
4544
import { logger } from "@tf2qs/telemetry";
4645
import { createCommands } from "./commands";
4746
import { initializeExpress } from "./http/express";
48-
import { scheduleConsumeCreditsRoutine, scheduleMonthlyUsageReportRoutine, schedulePendingServerCleanupRoutine, scheduleServerCleanupRoutine, scheduleTerminateLongRunningServerRoutine, scheduleServerMetricsCollectionRoutine } from "./jobs";
47+
import { scheduleConsumeCreditsRoutine, scheduleMonthlyUsageReportRoutine, schedulePendingServerCleanupRoutine, scheduleServerCleanupRoutine, scheduleTerminateLongRunningServerRoutine } from "./jobs";
4948
import { scheduleTerminateServersWithoutCreditRoutine } from "./jobs/TerminateServersWithoutCreditRoutine";
5049
import { startSrcdsCommandListener } from "./udp/srcdsCommandListener";
5150

@@ -279,15 +278,6 @@ export async function startDiscordBot() {
279278
discordClient: client,
280279
})
281280

282-
scheduleServerMetricsCollectionRoutine({
283-
collectServerMetrics: new CollectServerMetrics({
284-
serverRepository,
285-
serverStatusMetricsRepository,
286-
serverCommander,
287-
}),
288-
eventLogger,
289-
})
290-
291281
// Slash commands
292282
const commands = Object.values(discordCommands).map(command => command.definition)
293283

@@ -378,7 +368,8 @@ export async function startDiscordBot() {
378368
userRepository,
379369
eventLogger,
380370
backgroundTaskQueue,
381-
playerConnectionHistoryRepository
371+
playerConnectionHistoryRepository,
372+
serverStatusMetricsRepository
382373
});
383374

384375
initializeExpress({})

packages/entrypoints/src/jobs/ServerMetricsCollectionRoutine.ts

Lines changed: 0 additions & 36 deletions
This file was deleted.

packages/entrypoints/src/jobs/index.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,4 @@ export * from "./ServerCleanupRoutine"
22
export * from "./ConsumeCreditsRoutine";
33
export * from "./PendingServerCleanupRoutine";
44
export * from "./TerminateLongRunningServerRoutine";
5-
export * from "./MonthlyUsageReportRoutine";
6-
export * from "./ServerMetricsCollectionRoutine";
5+
export * from "./MonthlyUsageReportRoutine";

0 commit comments

Comments
 (0)