Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
蜕变的菜鸟
glances
提交
462f8c0b
G
glances
项目概览
蜕变的菜鸟
/
glances
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
glances
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
462f8c0b
编写于
5月 11, 2018
作者:
N
nicolargo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
OSX - Python 3 and empty percent and res #1251 - To be tested
上级
27c8c829
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
22 addition
and
12 deletion
+22
-12
NEWS
NEWS
+1
-0
glances/plugins/glances_processlist.py
glances/plugins/glances_processlist.py
+1
-2
glances/processes.py
glances/processes.py
+20
-10
未找到文件。
NEWS
浏览文件 @
462f8c0b
...
...
@@ -56,6 +56,7 @@ Bugs corrected:
* Fixing horizontal scrolling #1248
* Stats updated during export (thread issue) #1250
* Glances --browser crashed when more than 40 glances servers on screen 78x45 #1256
* OSX - Python 3 and empty percent and res #1251
Backward-incompatible changes:
...
...
glances/plugins/glances_processlist.py
浏览文件 @
462f8c0b
...
...
@@ -24,9 +24,8 @@ import shlex
import
copy
from
datetime
import
timedelta
from
glances.compat
import
iteritems
from
glances.globals
import
WINDOWS
from
glances.logger
import
logger
from
glances.globals
import
WINDOWS
from
glances.processes
import
glances_processes
,
sort_stats
from
glances.plugins.glances_core
import
Plugin
as
CorePlugin
from
glances.plugins.glances_plugin
import
GlancesPlugin
...
...
glances/processes.py
浏览文件 @
462f8c0b
...
...
@@ -253,6 +253,11 @@ class GlancesProcesses(object):
# User filter
not
(
self
.
_filter
.
is_filtered
(
p
.
info
))]
# !!! TODO: Remove
self
.
processlist
[
0
][
'cpu_percent'
]
=
None
# !!! /TODO
# Sort the processes list by the current sort_key
self
.
processlist
=
sort_stats
(
self
.
processlist
,
sortedby
=
self
.
sort_key
,
...
...
@@ -339,11 +344,11 @@ class GlancesProcesses(object):
# Append the IO tag (for display)
proc
[
'io_counters'
]
+=
[
io_tag
]
# Compute the maximum value for keys in self._max_values_list
(CPU, MEM)
# Compute the maximum value for keys in self._max_values_list
: CPU, MEM
for
k
in
self
.
_max_values_list
:
if
self
.
processlist
!=
[]:
self
.
set_max_values
(
k
,
max
(
i
[
k
]
for
i
in
self
.
processlist
if
not
(
i
[
k
]
==
None
)
))
values_list
=
[
i
[
k
]
for
i
in
self
.
processlist
if
i
[
k
]
is
not
None
]
if
values_list
!=
[]:
self
.
set_max_values
(
k
,
max
(
values_list
))
def
getcount
(
self
):
"""Get the number of processes."""
...
...
@@ -364,11 +369,16 @@ class GlancesProcesses(object):
self
.
_sort_key
=
key
# TODO: move this global function (also used in glances_processlist
# and logs) inside the GlancesProcesses class
def
weighted
(
value
):
"""Manage None value in dict value."""
return
-
float
(
'inf'
)
if
value
is
None
else
value
def
sort_stats
(
stats
,
sortedby
=
None
,
reverse
=
True
):
"""Return the stats (dict) sorted by (sortedby)
Reverse the sort if reverse is True."""
"""Return the stats (dict) sorted by (sortedby).
Reverse the sort if reverse is True.
"""
if
sortedby
is
None
:
# No need to sort...
return
stats
...
...
@@ -383,12 +393,12 @@ def sort_stats(stats, sortedby=None, reverse=True):
process
[
sortedby
][
3
],
reverse
=
reverse
)
except
Exception
:
stats
.
sort
(
key
=
operator
.
itemgetter
(
'cpu_percent'
),
stats
.
sort
(
key
=
lambda
x
:
weighted
(
x
[
'cpu_percent'
]
),
reverse
=
reverse
)
else
:
# Others sorts
try
:
stats
.
sort
(
key
=
operator
.
itemgetter
(
sortedby
),
stats
.
sort
(
key
=
lambda
x
:
weighted
(
x
[
sortedby
]
),
reverse
=
reverse
)
except
(
KeyError
,
TypeError
):
stats
.
sort
(
key
=
operator
.
itemgetter
(
'name'
),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录