lib/metrics/platforms/generic/stats.js (22 lines of code) (raw):

/* * Copyright Elasticsearch B.V. and other contributors where applicable. * Licensed under the BSD 2-Clause License; you may not use this file except in * compliance with the BSD 2-Clause License. */ 'use strict'; const processCpu = require('./process-cpu'); class Stats { constructor() { this.stats = { 'system.process.cpu.total.norm.pct': 0, 'system.process.cpu.system.norm.pct': 0, 'system.process.cpu.user.norm.pct': 0, }; } toJSON() { return this.stats; } collect(cb) { const cpu = processCpu(); this.stats['system.process.cpu.total.norm.pct'] = cpu.total; this.stats['system.process.cpu.system.norm.pct'] = cpu.system; this.stats['system.process.cpu.user.norm.pct'] = cpu.user; if (cb) process.nextTick(cb); } } module.exports = Stats;