| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | 
							- import { MongoInternals } from 'meteor/mongo';
 
- Meteor.methods({
 
-   getStatistics() {
 
-     const os = require('os');
 
-     const pjson = require('/package.json');
 
-     const statistics = {};
 
-     let wekanVersion = pjson.version;
 
-     wekanVersion = wekanVersion.replace('v', '');
 
-     statistics.version = wekanVersion;
 
-     statistics.os = {
 
-       type: os.type(),
 
-       platform: os.platform(),
 
-       arch: os.arch(),
 
-       release: os.release(),
 
-       uptime: os.uptime(),
 
-       loadavg: os.loadavg(),
 
-       totalmem: os.totalmem(),
 
-       freemem: os.freemem(),
 
-       cpus: os.cpus(),
 
-     };
 
-     let nodeVersion = process.version;
 
-     nodeVersion = nodeVersion.replace('v', '');
 
-     statistics.process = {
 
-       nodeVersion,
 
-       pid: process.pid,
 
-       uptime: process.uptime(),
 
-     };
 
-     // Remove beginning of Meteor release text METEOR@
 
-     let meteorVersion = Meteor.release;
 
-     meteorVersion = meteorVersion.replace('METEOR@', '');
 
-     statistics.meteor = {
 
-       meteorVersion,
 
-     };
 
-     // Thanks to RocketChat for MongoDB version detection !
 
-     // https://github.com/RocketChat/Rocket.Chat/blob/develop/app/utils/server/functions/getMongoInfo.js
 
-     let mongoVersion;
 
-     let mongoStorageEngine;
 
-     let mongoOplogEnabled;
 
-     try {
 
-       const { mongo } = MongoInternals.defaultRemoteCollectionDriver();
 
-       oplogEnabled = Boolean(
 
-         mongo._oplogHandle && mongo._oplogHandle.onOplogEntry,
 
-       );
 
-       const { version, storageEngine } = Promise.await(
 
-         mongo.db.command({ serverStatus: 1 }),
 
-       );
 
-       mongoVersion = version;
 
-       mongoStorageEngine = storageEngine.name;
 
-       mongoOplogEnabled = oplogEnabled;
 
-     } catch (e) {
 
-       try {
 
-         const { version } = Promise.await(mongo.db.command({ buildinfo: 1 }));
 
-         mongoVersion = version;
 
-         mongoStorageEngine = 'unknown';
 
-       } catch (e) {
 
-         mongoVersion = 'unknown';
 
-         mongoStorageEngine = 'unknown';
 
-       }
 
-     }
 
-     statistics.mongo = {
 
-       mongoVersion,
 
-       mongoStorageEngine,
 
-       mongoOplogEnabled,
 
-     };
 
-     return statistics;
 
-   },
 
- });
 
 
  |