Skip to content
Snippets Groups Projects
machineInfo.ts 578 B
Newer Older
Aya Morisawa's avatar
Aya Morisawa committed
import * as os from 'os';
import Logger from './logger';

Aya Morisawa's avatar
Aya Morisawa committed
export default class {
	static show(): void {
Aya Morisawa's avatar
Aya Morisawa committed
		const totalmem = (os.totalmem() / 1024 / 1024 / 1024).toFixed(1);
		const freemem = (os.freemem() / 1024 / 1024 / 1024).toFixed(1);
		let logger = new Logger('Machine');
Aya Morisawa's avatar
Aya Morisawa committed
		logger.info(`Hostname: ${os.hostname()}`);
		logger.info(`Platform: ${process.platform}`);
		logger.info(`Architecture: ${process.arch}`);
		logger.info(`Node.js: ${process.version}`);
Aya Morisawa's avatar
Aya Morisawa committed
		logger.info(`CPU: ${os.cpus().length}core`);
		logger.info(`MEM: ${totalmem}GB (available: ${freemem}GB)`);
	}
}