????
Current Path : /usr/lib/python3.6/site-packages/glances/outputs/static/js/components/ |
Current File : //usr/lib/python3.6/site-packages/glances/outputs/static/js/components/plugin-cpu.vue |
<template> <section id="cpu" class="plugin"> <div class="row"> <div class="col-sm-24 col-md-12 col-lg-8"> <div class="table"> <div class="table-row"> <div class="table-cell text-left title">CPU</div> <div class="table-cell">{{ total }}%</div> </div> <div class="table-row"> <div class="table-cell text-left">user:</div> <div class="table-cell" :class="getDecoration('user')">{{ user }}%</div> </div> <div class="table-row"> <div class="table-cell text-left">system:</div> <div class="table-cell" :class="getDecoration('system')">{{ system }}%</div> </div> <div class="table-row" v-show="iowait != undefined"> <div class="table-cell text-left">iowait:</div> <div class="table-cell" :class="getDecoration('iowait')">{{ iowait }}%</div> </div> <div class="table-row" v-show="iowait == undefined && dpc != undefined"> <div class="table-cell text-left">dpc:</div> <div class="table-cell" :class="getDecoration('dpc')">{{ dpc }}%</div> </div> </div> </div> <div class="hidden-xs hidden-sm col-md-12 col-lg-8"> <div class="table"> <div class="table-row"> <div class="table-cell text-left">idle:</div> <div class="table-cell">{{ idle }}%</div> </div> <div class="table-row" v-show="irq != undefined"> <div class="table-cell text-left">irq:</div> <div class="table-cell">{{ irq }}%</div> </div> <!-- If no irq, display interrupts --> <div class="table-row" v-show="irq == undefined"> <div class="table-cell text-left">inter:</div> <div class="table-cell"> {{ interrupts }} </div> </div> <div class="table-row" v-show="nice != undefined"> <div class="table-cell text-left">nice:</div> <div class="table-cell">{{ nice }}%</div> </div> <!-- If no nice, display ctx_switches --> <div class="table-row" v-if="nice == undefined && ctx_switches"> <div class="table-cell text-left">ctx_sw:</div> <div class="table-cell" :class="getDecoration('ctx_switches')"> {{ ctx_switches }} </div> </div> <div class="table-row" v-show="steal != undefined"> <div class="table-cell text-left">steal:</div> <div class="table-cell" :class="getDecoration('steal')">{{ steal }}%</div> </div> <div class="table-row" v-if="!isLinux && syscalls"> <div class="table-cell text-left">syscal:</div> <div class="table-cell"> {{ syscalls }} </div> </div> </div> </div> <div class="hidden-xs hidden-sm hidden-md col-lg-8"> <div class="table"> <!-- If not already display instead of nice, then display ctx_switches --> <div class="table-row" v-if="nice != undefined && ctx_switches"> <div class="table-cell text-left">ctx_sw:</div> <div class="table-cell" :class="getDecoration('ctx_switches')"> {{ ctx_switches }} </div> </div> <!-- If not already display instead of irq, then display interrupts --> <div class="table-row" v-if="irq != undefined && interrupts"> <div class="table-cell text-left">inter:</div> <div class="table-cell"> {{ interrupts }} </div> </div> <div class="table-row" v-if="!isWindows && !isSunOS && soft_interrupts"> <div class="table-cell text-left">sw_int:</div> <div class="table-cell"> {{ soft_interrupts }} </div> </div> </div> </div> </div> </section> </template> <script> export default { props: { data: { type: Object } }, computed: { stats() { return this.data.stats['cpu']; }, view() { return this.data.views['cpu']; }, isLinux() { return this.data.isLinux; }, isSunOS() { return this.data.isSunOS; }, isWindows() { return this.data.isWindows; }, total() { return this.stats.total; }, user() { return this.stats.user; }, system() { return this.stats.system; }, idle() { return this.stats.idle; }, nice() { return this.stats.nice; }, irq() { return this.stats.irq; }, iowait() { return this.stats.iowait; }, dpc() { return this.stats.dpc; }, steal() { return this.stats.steal; }, ctx_switches() { const { stats } = this; return stats.ctx_switches ? Math.floor(stats.ctx_switches / stats.time_since_update) : null; }, interrupts() { const { stats } = this; return stats.interrupts ? Math.floor(stats.interrupts / stats.time_since_update) : null; }, soft_interrupts() { const { stats } = this; return stats.soft_interrupts ? Math.floor(stats.soft_interrupts / stats.time_since_update) : null; }, syscalls() { const { stats } = this; return stats.syscalls ? Math.floor(stats.syscalls / stats.time_since_update) : null; } }, methods: { getDecoration(value) { if (this.view[value] === undefined) { return; } return this.view[value].decoration.toLowerCase(); } } }; </script>