mirror of
https://git.joinsharkey.org/Sharkey/Sharkey.git
synced 2024-11-14 09:33:09 +02:00
50 lines
1.8 KiB
TypeScript
50 lines
1.8 KiB
TypeScript
import FederationChart from './charts/classes/federation';
|
|
import NotesChart from './charts/classes/notes';
|
|
import UsersChart from './charts/classes/users';
|
|
import NetworkChart from './charts/classes/network';
|
|
import ActiveUsersChart from './charts/classes/active-users';
|
|
import InstanceChart from './charts/classes/instance';
|
|
import PerUserNotesChart from './charts/classes/per-user-notes';
|
|
import DriveChart from './charts/classes/drive';
|
|
import PerUserReactionsChart from './charts/classes/per-user-reactions';
|
|
import HashtagChart from './charts/classes/hashtag';
|
|
import PerUserFollowingChart from './charts/classes/per-user-following';
|
|
import PerUserDriveChart from './charts/classes/per-user-drive';
|
|
import { beforeShutdown } from '@/misc/before-shutdown';
|
|
|
|
export const federationChart = new FederationChart();
|
|
export const notesChart = new NotesChart();
|
|
export const usersChart = new UsersChart();
|
|
export const networkChart = new NetworkChart();
|
|
export const activeUsersChart = new ActiveUsersChart();
|
|
export const instanceChart = new InstanceChart();
|
|
export const perUserNotesChart = new PerUserNotesChart();
|
|
export const driveChart = new DriveChart();
|
|
export const perUserReactionsChart = new PerUserReactionsChart();
|
|
export const hashtagChart = new HashtagChart();
|
|
export const perUserFollowingChart = new PerUserFollowingChart();
|
|
export const perUserDriveChart = new PerUserDriveChart();
|
|
|
|
const charts = [
|
|
federationChart,
|
|
notesChart,
|
|
usersChart,
|
|
networkChart,
|
|
activeUsersChart,
|
|
instanceChart,
|
|
perUserNotesChart,
|
|
driveChart,
|
|
perUserReactionsChart,
|
|
hashtagChart,
|
|
perUserFollowingChart,
|
|
perUserDriveChart,
|
|
];
|
|
|
|
// 20分おきにメモリ情報をDBに書き込み
|
|
setInterval(() => {
|
|
for (const chart of charts) {
|
|
chart.save();
|
|
}
|
|
}, 1000 * 60 * 20);
|
|
|
|
beforeShutdown(() => Promise.all(charts.map(chart => chart.save())));
|