Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
蜕变的菜鸟
glances
提交
43c9c805
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,发现更多精彩内容 >>
提交
43c9c805
编写于
2月 26, 2014
作者:
N
Nicolas Hennion
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Alert is working in v2
上级
471b04fe
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
107 addition
and
26 deletion
+107
-26
conf/glances-monitor.conf
conf/glances-monitor.conf
+21
-6
conf/glances.conf
conf/glances.conf
+21
-6
glances/core/glances_logs.py
glances/core/glances_logs.py
+4
-3
glances/plugins/glances_alert.py
glances/plugins/glances_alert.py
+46
-2
glances/plugins/glances_cpu.py
glances/plugins/glances_cpu.py
+8
-4
glances/plugins/glances_percpu.py
glances/plugins/glances_percpu.py
+3
-3
glances/plugins/glances_processlist.py
glances/plugins/glances_processlist.py
+4
-2
未找到文件。
conf/glances-monitor.conf
浏览文件 @
43c9c805
[
cpu
]
# Default values if not defined: 50/70/90
careful
=
50
warning
=
70
critical
=
90
user_careful
=
50
user_warning
=
70
user_critical
=
90
iowait_careful
=
50
iowait_warning
=
70
iowait_critical
=
90
system_careful
=
50
system_warning
=
70
system_critical
=
90
steal_careful
=
50
steal_warning
=
70
steal_critical
=
90
[
percpu
]
# Default values if not defined: 50/70/90
careful
=
50
warning
=
70
critical
=
90
user_careful
=
50
user_warning
=
70
user_critical
=
90
iowait_careful
=
50
iowait_warning
=
70
iowait_critical
=
90
system_careful
=
50
system_warning
=
70
system_critical
=
90
[
load
]
# Value * number of cores
...
...
conf/glances.conf
浏览文件 @
43c9c805
[
cpu
]
# Default values if not defined: 50/70/90
careful
=
50
warning
=
70
critical
=
90
user_careful
=
50
user_warning
=
70
user_critical
=
90
iowait_careful
=
50
iowait_warning
=
70
iowait_critical
=
90
system_careful
=
50
system_warning
=
70
system_critical
=
90
steal_careful
=
50
steal_warning
=
70
steal_critical
=
90
[
percpu
]
# Default values if not defined: 50/70/90
careful
=
50
warning
=
70
critical
=
90
user_careful
=
50
user_warning
=
70
user_critical
=
90
iowait_careful
=
50
iowait_warning
=
70
iowait_critical
=
90
system_careful
=
50
system_warning
=
70
system_critical
=
90
[
load
]
# Value * number of cores
...
...
glances/core/glances_logs.py
浏览文件 @
43c9c805
...
...
@@ -71,9 +71,11 @@ class glancesLogs:
An item exist in the list if:
* end is < 0
* item_type is matching
Return the item position if exist
-1 if the item is not found
"""
for
i
in
range
(
self
.
len
()):
if
self
.
logs_list
[
i
][
1
]
<
0
and
self
.
logs_list
[
i
][
3
]
==
item_type
:
if
((
self
.
logs_list
[
i
][
1
]
<
0
)
and
(
self
.
logs_list
[
i
][
3
]
==
item_type
))
:
return
i
return
-
1
...
...
@@ -117,8 +119,7 @@ class glancesLogs:
item
=
[]
# START DATE
item
.
append
(
time
.
mktime
(
datetime
.
now
().
timetuple
()))
# END DATE
item
.
append
(
-
1
)
item
.
append
(
-
1
)
# END DATE
item
.
append
(
item_state
)
# STATE: WARNING|CRITICAL
item
.
append
(
item_type
)
# TYPE: CPU, LOAD, MEM...
item
.
append
(
item_value
)
# MAX
...
...
glances/plugins/glances_alert.py
浏览文件 @
43c9c805
...
...
@@ -18,6 +18,9 @@
# You should have received a copy of the GNU Lesser General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Import system lib
from
datetime
import
datetime
,
timedelta
# Import Glances lib
from
glances_plugin
import
GlancesPlugin
from
glances.core.glances_globals
import
glances_logs
...
...
@@ -62,10 +65,51 @@ class Plugin(GlancesPlugin):
# Build the string message
# Header
if
(
self
.
stats
==
[]):
msg
=
"{0
:8}"
.
format
(
_
(
"No
alert detected"
))
msg
=
"{0
}"
.
format
(
_
(
"No warning or critical
alert detected"
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
"TITLE"
))
else
:
msg
=
"{0:8}"
.
format
(
_
(
"ALERT"
))
# Header
msg
=
"{0}"
.
format
(
_
(
"Warning or critical alerts"
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
"TITLE"
))
logs_len
=
glances_logs
.
len
()
if
(
logs_len
>
1
):
msg
=
" {0}"
.
format
(
_
(
"(lasts %s entries)"
)
%
logs_len
)
else
:
msg
=
" {0}"
.
format
(
_
(
"(one entry)"
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
"TITLE"
))
# Loop over alerts
for
alert
in
glances_logs
.
get
():
# New line
ret
.
append
(
self
.
curse_new_line
())
# Start
msg
=
"{0}"
.
format
(
datetime
.
fromtimestamp
(
alert
[
0
]))
ret
.
append
(
self
.
curse_add_line
(
msg
))
# Duration
if
(
alert
[
1
]
>
0
):
# If finished display duration
msg
=
" ({0})"
.
format
(
datetime
.
fromtimestamp
(
alert
[
1
])
-
datetime
.
fromtimestamp
(
alert
[
0
]))
else
:
msg
=
_
(
" (ongoing)"
)
ret
.
append
(
self
.
curse_add_line
(
msg
))
ret
.
append
(
self
.
curse_add_line
(
" - "
))
# Infos
if
(
alert
[
1
]
>
0
):
# If finished do not display status
msg
=
"{0} {1} {2}"
.
format
(
alert
[
2
],
_
(
"on"
),
alert
[
3
])
ret
.
append
(
self
.
curse_add_line
(
msg
))
else
:
msg
=
"{0}"
.
format
(
alert
[
3
])
ret
.
append
(
self
.
curse_add_line
(
msg
,
decoration
=
alert
[
2
]))
# Min / Mean / Max
msg
=
" ({0:2}/{1:2}/{2:2})"
.
format
(
alert
[
6
],
alert
[
5
],
alert
[
4
])
ret
.
append
(
self
.
curse_add_line
(
msg
))
# else:
# msg = " {0}".format(_("Running..."))
# ret.append(self.curse_add_line(msg))
# !!! Debug only
# msg = " | {0}".format(alert)
# ret.append(self.curse_add_line(msg))
return
ret
glances/plugins/glances_cpu.py
浏览文件 @
43c9c805
...
...
@@ -146,7 +146,8 @@ class Plugin(GlancesPlugin):
msg
=
" {0:8}"
.
format
(
_
(
"steal:"
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
optional
=
True
))
msg
=
"{0}"
.
format
(
format
(
self
.
stats
[
'steal'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
self
.
stats
[
'steal'
]),
optional
=
True
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
self
.
stats
[
'steal'
],
header
=
"steal"
),
optional
=
True
))
# New line
ret
.
append
(
self
.
curse_new_line
())
# User CPU
...
...
@@ -154,13 +155,15 @@ class Plugin(GlancesPlugin):
msg
=
"{0:8}"
.
format
(
_
(
"user:"
))
ret
.
append
(
self
.
curse_add_line
(
msg
))
msg
=
"{0}"
.
format
(
format
(
self
.
stats
[
'user'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert_log
(
self
.
stats
[
'user'
])))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert_log
(
self
.
stats
[
'user'
],
header
=
"user"
)))
# IOWait CPU
if
(
'iowait'
in
self
.
stats
):
msg
=
" {0:8}"
.
format
(
_
(
"iowait:"
))
ret
.
append
(
self
.
curse_add_line
(
msg
))
msg
=
"{0}"
.
format
(
format
(
self
.
stats
[
'iowait'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert_log
(
self
.
stats
[
'iowait'
]),
optional
=
True
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert_log
(
self
.
stats
[
'iowait'
],
header
=
"iowait"
),
optional
=
True
))
# New line
ret
.
append
(
self
.
curse_new_line
())
# System CPU
...
...
@@ -168,7 +171,8 @@ class Plugin(GlancesPlugin):
msg
=
"{0:8}"
.
format
(
_
(
"system:"
))
ret
.
append
(
self
.
curse_add_line
(
msg
))
msg
=
"{0}"
.
format
(
format
(
self
.
stats
[
'system'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert_log
(
self
.
stats
[
'system'
])))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert_log
(
self
.
stats
[
'system'
],
header
=
"system"
)))
# IRQ CPU
if
(
'irq'
in
self
.
stats
):
msg
=
" {0:7} {1}"
.
format
(
...
...
glances/plugins/glances_percpu.py
浏览文件 @
43c9c805
...
...
@@ -141,7 +141,7 @@ class Plugin(GlancesPlugin):
ret
.
append
(
self
.
curse_add_line
(
msg
))
for
cpu
in
self
.
stats
:
msg
=
" {0}"
.
format
(
format
(
cpu
[
'user'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
cpu
[
'user'
])))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
cpu
[
'user'
]
,
header
=
"user"
)))
# System CPU
if
(
'user'
in
self
.
stats
[
0
]):
...
...
@@ -151,7 +151,7 @@ class Plugin(GlancesPlugin):
ret
.
append
(
self
.
curse_add_line
(
msg
))
for
cpu
in
self
.
stats
:
msg
=
" {0}"
.
format
(
format
(
cpu
[
'system'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
cpu
[
'system'
])))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
cpu
[
'system'
]
,
header
=
"system"
)))
# IoWait CPU
if
(
'user'
in
self
.
stats
[
0
]):
...
...
@@ -161,7 +161,7 @@ class Plugin(GlancesPlugin):
ret
.
append
(
self
.
curse_add_line
(
msg
))
for
cpu
in
self
.
stats
:
msg
=
" {0}"
.
format
(
format
(
cpu
[
'iowait'
]
/
100
,
'>6.1%'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
cpu
[
'iowait'
])))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
cpu
[
'iowait'
]
,
header
=
"iowait"
)))
# Return the message with decoration
return
ret
glances/plugins/glances_processlist.py
浏览文件 @
43c9c805
...
...
@@ -103,10 +103,12 @@ class Plugin(GlancesPlugin):
ret
.
append
(
self
.
curse_add_line
(
msg
))
# CPU
msg
=
"{0:>6}"
.
format
(
format
(
p
[
'cpu_percent'
],
'>5.1f'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
p
[
'cpu_percent'
],
header
=
"cpu"
)))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
p
[
'cpu_percent'
],
header
=
"cpu"
)))
# MEM
msg
=
"{0:>6}"
.
format
(
format
(
p
[
'memory_percent'
],
'>5.1f'
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
p
[
'memory_percent'
],
header
=
"mem"
)))
ret
.
append
(
self
.
curse_add_line
(
msg
,
self
.
get_alert
(
p
[
'memory_percent'
],
header
=
"mem"
)))
# VMS
msg
=
"{0:>6}"
.
format
(
self
.
auto_unit
(
p
[
'memory_info'
][
1
],
low_precision
=
False
))
ret
.
append
(
self
.
curse_add_line
(
msg
,
optional
=
True
))
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录