diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2022-03-07 15:10:16 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2022-03-07 15:10:16 +0900 |
| commit | ec64b5ea0bddfbd628c4a86c321a6c1141b61e42 (patch) | |
| tree | 70668d32e65b403b65d47e694ebf7e32571380cd /packages/backend/src/services/chart | |
| parent | tweak client (diff) | |
| download | sharkey-ec64b5ea0bddfbd628c4a86c321a6c1141b61e42.tar.gz sharkey-ec64b5ea0bddfbd628c4a86c321a6c1141b61e42.tar.bz2 sharkey-ec64b5ea0bddfbd628c4a86c321a6c1141b61e42.zip | |
feat: add active to federation chart
Diffstat (limited to 'packages/backend/src/services/chart')
| -rw-r--r-- | packages/backend/src/services/chart/charts/entities/federation.ts | 1 | ||||
| -rw-r--r-- | packages/backend/src/services/chart/charts/federation.ts | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/packages/backend/src/services/chart/charts/entities/federation.ts b/packages/backend/src/services/chart/charts/entities/federation.ts index 9d2b860b10..c6d59b67f6 100644 --- a/packages/backend/src/services/chart/charts/entities/federation.ts +++ b/packages/backend/src/services/chart/charts/entities/federation.ts @@ -9,6 +9,7 @@ export const schema = { 'sub': { accumulate: true, range: 'small' }, 'pub': { accumulate: true, range: 'small' }, 'pubsub': { accumulate: true, range: 'small' }, + 'active': { accumulate: true, range: 'small' }, } as const; export const entity = Chart.schemaToEntity(name, schema); diff --git a/packages/backend/src/services/chart/charts/federation.ts b/packages/backend/src/services/chart/charts/federation.ts index 89670194de..2a28500ace 100644 --- a/packages/backend/src/services/chart/charts/federation.ts +++ b/packages/backend/src/services/chart/charts/federation.ts @@ -2,6 +2,7 @@ import Chart, { KVs } from '../core.js'; import { Followings, Instances } from '@/models/index.js'; import { name, schema } from './entities/federation.js'; import { fetchMeta } from '@/misc/fetch-meta.js'; +import { In, MoreThan, Not } from 'typeorm'; /** * フェデレーションに関するチャート @@ -28,7 +29,7 @@ export default class FederationChart extends Chart<typeof schema> { .select('f.followerHost') .where('f.followerHost IS NOT NULL'); - const [sub, pub, pubsub] = await Promise.all([ + const [sub, pub, pubsub, active] = await Promise.all([ Followings.createQueryBuilder('following') .select('COUNT(DISTINCT following.followeeHost)') .where('following.followeeHost IS NOT NULL') @@ -52,12 +53,18 @@ export default class FederationChart extends Chart<typeof schema> { .setParameters(pubsubSubQuery.getParameters()) .getRawOne() .then(x => parseInt(x.count, 10)), + Instances.count({ + host: Not(In(meta.blockedHosts)), + isSuspended: false, + lastCommunicatedAt: MoreThan(new Date(Date.now() - (1000 * 60 * 60 * 24 * 30))), + }), ]); return { 'sub': sub, 'pub': pub, 'pubsub': pubsub, + 'active': active, }; } |