mirror of https://github.com/tp4a/teleport
修正Windows平台日志磁盘空间显示可能不正确的问题。
parent
e6d3696f0d
commit
6700c818cb
|
@ -17,27 +17,32 @@ def get_free_space_mb(folder):
|
|||
""" Return folder/drive free space (in bytes)
|
||||
"""
|
||||
if platform.system() == 'Windows':
|
||||
free_bytes = ctypes.c_ulonglong(0)
|
||||
total_bytes = ctypes.c_ulonglong(0)
|
||||
ctypes.windll.kernel32.GetDiskFreeSpaceExW(None, None, ctypes.pointer(total_bytes), ctypes.pointer(free_bytes))
|
||||
return total_bytes.value / 1024 / 1024 / 1024, free_bytes.value / 1024 / 1024 / 1024
|
||||
_free_bytes = ctypes.c_ulonglong(0)
|
||||
_total_bytes = ctypes.c_ulonglong(0)
|
||||
ctypes.windll.kernel32.GetDiskFreeSpaceExW(folder, None, ctypes.pointer(_total_bytes), ctypes.pointer(_free_bytes))
|
||||
# return _total_bytes.value / 1024 / 1024 / 1024, _free_bytes.value / 1024 / 1024 / 1024
|
||||
total_bytes = _total_bytes.value
|
||||
free_bytes = _free_bytes.value
|
||||
else:
|
||||
st = os.statvfs(folder)
|
||||
return st.f_blocks * st.f_frsize / 1024 / 1024 / 1024, st.f_bavail * st.f_frsize / 1024 / 1024 / 1024
|
||||
# return st.f_blocks * st.f_frsize / 1024 / 1024 / 1024, st.f_bavail * st.f_frsize / 1024 / 1024 / 1024
|
||||
total_bytes = st.f_blocks * st.f_frsize
|
||||
free_bytes = st.f_bavail * st.f_frsize
|
||||
|
||||
return total_bytes, free_bytes
|
||||
|
||||
|
||||
class LogHandler(SwxAdminHandler):
|
||||
def get(self):
|
||||
#
|
||||
user_list = user.get_user_list()
|
||||
total_size, free_size = get_free_space_mb(cfg.data_path)
|
||||
|
||||
# config_list = host.get_config_list()
|
||||
ts_server = dict()
|
||||
ts_server['ip'] = cfg.core.rpc.ip #config_list['ts_server_ip']
|
||||
ts_server['port'] = cfg.core.rpc.port #cfg.server_port
|
||||
ts_server['ip'] = cfg.core.rpc.ip # config_list['ts_server_ip']
|
||||
ts_server['port'] = cfg.core.rpc.port # cfg.server_port
|
||||
|
||||
self.render('log/index.mako', user_list=user_list, total_size=int(total_size), free_size=int(free_size), ts_server=ts_server)
|
||||
self.render('log/index.mako', user_list=user_list, total_size=total_size, free_size=free_size, ts_server=ts_server)
|
||||
|
||||
|
||||
class RecordHandler(SwxAdminHandler):
|
||||
|
|
|
@ -9,15 +9,14 @@ ywl.on_init = function (cb_stack, cb_args) {
|
|||
// 创建页面控件对象
|
||||
//===================================
|
||||
// 表格数据
|
||||
//console.log('ywl.page_options.total_size,', ywl.page_options.total_size, ywl.page_options.free_size);
|
||||
var disk_rate = parseInt(ywl.page_options.free_size * 100 / ywl.page_options.total_size);
|
||||
$('#disk-status').text('日志磁盘大小:' + ywl.page_options.total_size + 'GB,剩余空间:' + ywl.page_options.free_size + 'GB,空闲' + disk_rate + '%');
|
||||
$('#disk-status').text('日志磁盘大小:' + size2str(ywl.page_options.total_size, 2) + ',剩余空间:' + size2str(ywl.page_options.free_size, 2) + ',空闲' + disk_rate + '%');
|
||||
if (disk_rate < 10) {
|
||||
$('#disk-status').removeClass().addClass('badge badge-danger');
|
||||
} else if (disk_rate < 50) {
|
||||
} else if (disk_rate < 30) {
|
||||
$('#disk-status').removeClass().addClass('badge badge-warning');
|
||||
} else {
|
||||
$('#disk-status').removeClass().addClass('badge badge-info');
|
||||
$('#disk-status').removeClass().addClass('badge badge-ignore');
|
||||
}
|
||||
|
||||
var host_table_options = {
|
||||
|
|
Loading…
Reference in New Issue