This commit is contained in:
syuilo
2018-08-19 00:27:23 +09:00
parent 335200c31e
commit 0481de6629
17 changed files with 149 additions and 703 deletions

153
src/models/stats.ts Normal file
View File

@@ -0,0 +1,153 @@
import * as mongo from 'mongodb';
import db from '../db/mongodb';
const Stats = db.get<IStats>('stats');
Stats.createIndex({ date: -1 }, { unique: true });
export default Stats;
export interface IStats {
_id: mongo.ObjectID;
date: Date;
/**
* ユーザーに関する統計
*/
users: {
local: {
/**
* この日時点での、ローカルのユーザーの総計
*/
total: number;
/**
* ローカルのユーザー数の前日比
*/
diff: number;
};
remote: {
/**
* この日時点での、リモートのユーザーの総計
*/
total: number;
/**
* リモートのユーザー数の前日比
*/
diff: number;
};
};
/**
* 投稿に関する統計
*/
notes: {
local: {
/**
* この日時点での、ローカルの投稿の総計
*/
total: number;
/**
* ローカルの投稿数の前日比
*/
diff: number;
diffs: {
/**
* ローカルの通常の投稿数の前日比
*/
normal: number;
/**
* ローカルのリプライの投稿数の前日比
*/
reply: number;
/**
* ローカルのRenoteの投稿数の前日比
*/
renote: number;
};
};
remote: {
/**
* この日時点での、リモートの投稿の総計
*/
total: number;
/**
* リモートの投稿数の前日比
*/
diff: number;
diffs: {
/**
* リモートの通常の投稿数の前日比
*/
normal: number;
/**
* リモートのリプライの投稿数の前日比
*/
reply: number;
/**
* リモートのRenoteの投稿数の前日比
*/
renote: number;
};
};
};
/**
* ドライブ(のファイル)に関する統計
*/
drive: {
local: {
/**
* この日時点での、ローカルのドライブファイル数の総計
*/
totalCount: number;
/**
* この日時点での、ローカルのドライブファイルサイズの総計
*/
totalSize: number;
/**
* ローカルのドライブファイル数の前日比
*/
diffCount: number;
/**
* ローカルのドライブファイルサイズの前日比
*/
diffSize: number;
};
remote: {
/**
* この日時点での、リモートのドライブファイル数の総計
*/
totalCount: number;
/**
* この日時点での、リモートのドライブファイルサイズの総計
*/
totalSize: number;
/**
* リモートのドライブファイル数の前日比
*/
diffCount: number;
/**
* リモートのドライブファイルサイズの前日比
*/
diffSize: number;
};
};
}