Files
RootPanel/plugin/linux/view/monitor.jade
2014-10-17 02:22:05 +08:00

121 lines
4.0 KiB
Plaintext

extends ../../../core/view/layout
prepend header
title #{t('server_monitor')} | #{t('app.name')}
append header
link(rel='stylesheet', href='/plugin/linux/style/monitor.css')
block content
#content.container
.row
.col-md-4
.panel.panel-default
.panel-heading
h3.panel-title System
table.table
tbody
tr
td Hostname
td= system.hostname
tr
td System
td= system.system
tr
td CPU
td= system.cpu
tr
td Time
td= system.time
tr
td Uptime
td #{(system.uptime / 3600).toFixed(1)} hours
tr
td Loadavg
td= system.loadavg.join(', ')
tr
td Address
td= system.address.join(', ')
.col-md-8
.panel.panel-default
.panel-heading
h3.panel-title Memory & Storage
.panel-body
p Memory
.progress.multi-progress
.progress-bar.progress-bar-danger(role='progressbar', style='width: #{memory.used_per}%;')
span(title= '#{memory.used}M') #{memory.used_per}%
.progress-bar.progress-bar-info(role='progressbar', style='width: #{memory.cached_per}%;')
span(title= '#{memory.cached}M') #{memory.cached_per}%
.progress-bar.progress-bar-success(role='progressbar', style='width: #{memory.buffers_per}%;')
span(title= '#{memory.buffers}M') #{memory.buffers_per}%
.progress-bar.blank(role='progressbar', style='width: #{memory.free_per}%;')
span(title= '#{memory.free}M') #{memory.free_per}%
p SWAP
.progress.multi-progress
.progress-bar.progress-bar-warning(role='progressbar', style='width: #{memory.swap_used_per}%;')
span(title= '#{memory.swap_used_per}M') #{memory.swap_used_per}%
.progress-bar.blank(role='progressbar', style='width: #{memory.swap_free_per}%;')
span(title= '#{memory.swap_free}M') #{memory.swap_free_per}%
p Storage
.progress.multi-progress
.progress-bar.progress-bar-warning(role='progressbar', style='width: #{storage.used_per}%;')
span(title= '#{storage.used}G') #{storage.used_per}%
.progress-bar.blank(role='progressbar', style='width: #{storage.free_per}%;')
span(title= '#{storage.free}G') #{storage.free_per}%
.row
.panel.panel-default
.panel-heading
h3.panel-title Users
table.table.table-hover
thead
tr
th User
th Process
th CPU 1 Hour
th Memory 1 Hour
th Storage
tbody
for item in resources_usage
tr
td= item.username
td= item.process
td #{item.cpu}s
td #{item.memory.toFixed(1)}M
td #{(item.storage / 1024).toFixed(1)}M
.row
.panel.panel-default.process-list
.panel-heading
h3.panel-title Process
table.table.table-hover
thead
tr
th USER
th PID
th %CPU
th %MEM
th VSZ
th RSS
th TTY
th STAT
th START
th TIME
th COMMAND
tbody
for process in process_list
tr
td= process.user
td= process.pid
td= process.cpu_per
td= process.mem_per
td= process.vsz
td= process.rss
td= process.tty
td= process.stat
td= process.start
td= process.time
td!= _.escape(process.command).replace(/ /g, ' ')