Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
蜕变的菜鸟
glances
提交
92ec33c2
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,发现更多精彩内容 >>
提交
92ec33c2
编写于
10月 10, 2016
作者:
N
nicolargo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update docs for Docker limits and actions (issue #875)
上级
4396634e
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
54 addition
and
18 deletion
+54
-18
NEWS
NEWS
+1
-0
conf/glances.conf
conf/glances.conf
+6
-6
docs/aoa/docker.rst
docs/aoa/docker.rst
+21
-0
docs/man/glances.1
docs/man/glances.1
+1
-1
glances/plugins/glances_plugin.py
glances/plugins/glances_plugin.py
+25
-11
未找到文件。
NEWS
浏览文件 @
92ec33c2
...
...
@@ -9,6 +9,7 @@ Enhancements and new features:
* Add CouchDB exporter (issue #928)
* Highlight max stats in the processes list (issue #878)
* Docker alerts and actions (issue #875)
* Glances API returns the processes PPID (issue #926)
* Configure server cached time from the command line --cached-time (issue #901)
...
...
conf/glances.conf
浏览文件 @
92ec33c2
...
...
@@ -209,12 +209,12 @@ port_default_gateway=True
[
docker
]
# Thresholds for CPU and MEM (in %)
cpu_careful
=
50
cpu_warning
=
70
cpu_critical
=
90
mem_careful
=
20
mem_warning
=
50
mem_critical
=
70
#
cpu_careful=50
#
cpu_warning=70
#
cpu_critical=90
#
mem_careful=20
#
mem_warning=50
#
mem_critical=70
# Per container thresholds
#containername_cpu_careful=10
#containername_cpu_warning=20
...
...
docs/aoa/docker.rst
浏览文件 @
92ec33c2
...
...
@@ -8,4 +8,25 @@ Glances uses the Docker API through the `docker-py`_ library.
.. image:: ../_static/docker.png
It is possible to define limits and actions from the configuration file
under the ``[docker]`` section:
.. code-block:: ini
[docker]
# Global containers' thresholds for CPU and MEM (in %)
cpu_careful=50
cpu_warning=70
cpu_critical=90
mem_careful=20
mem_warning=50
mem_critical=70
# Per container thresholds
containername_cpu_careful=10
containername_cpu_warning=20
containername_cpu_critical=30
containername_cpu_critical_action=echo {{Image}} {{Id}} {{cpu}} > /tmp/container_{{name}}.alert
You can use all the variables ({{foo}}) available in the Docker plugin.
.. _docker-py: https://github.com/docker/docker-py
docs/man/glances.1
浏览文件 @
92ec33c2
.\" Man page generated from reStructuredText.
.
.TH "GLANCES" "1" "
Sep 24
, 2016" "2.8_DEVELOP" "Glances"
.TH "GLANCES" "1" "
Oct 10
, 2016" "2.8_DEVELOP" "Glances"
.SH NAME
glances \- An eye on your system
.
...
...
glances/plugins/glances_plugin.py
浏览文件 @
92ec33c2
...
...
@@ -524,20 +524,31 @@ class GlancesPlugin(object):
glances_logs
.
add
(
ret
,
stat_name
.
upper
(),
value
)
# Manage action
self
.
manage_action
(
stat_name
,
ret
.
lower
(),
header
,
action_key
)
# Default is ok
return
ret
+
log_str
def
manage_action
(
self
,
stat_name
,
trigger
,
header
,
action_key
):
"""Manage the action for the current stat"""
# Here is a command line for the current trigger ?
try
:
command
=
self
.
__get_limit_action
(
ret
.
lower
()
,
stat_name
=
stat_name
)
command
=
self
.
__get_limit_action
(
trigger
,
stat_name
=
stat_name
)
except
KeyError
:
# Reset the trigger
self
.
actions
.
set
(
stat_name
,
ret
.
lower
()
)
self
.
actions
.
set
(
stat_name
,
trigger
)
else
:
# Define the action key for the stats dict
# If not define, then it sets to header
if
action_key
is
None
:
action_key
=
header
# A command line is available for the current alert
, run it
# Build the {{mustache}} dictionnary
# A command line is available for the current alert
#
1)
Build the {{mustache}} dictionnary
if
isinstance
(
self
.
get_stats_action
(),
list
):
# If the stats are stored in a list of dict (fs plugin for exemple)
# Return the dict for the current header
...
...
@@ -549,19 +560,22 @@ class GlancesPlugin(object):
else
:
# Use the stats dict
mustache_dict
=
self
.
get_stats_action
()
# Run the action
#
2)
Run the action
self
.
actions
.
run
(
stat_name
,
ret
.
lower
(),
command
,
mustache_dict
=
mustache_dict
)
# Default is ok
return
ret
+
log_str
def
get_alert_log
(
self
,
current
=
0
,
minimum
=
0
,
maximum
=
100
,
header
=
""
):
stat_name
,
trigger
,
command
,
mustache_dict
=
mustache_dict
)
def
get_alert_log
(
self
,
current
=
0
,
minimum
=
0
,
maximum
=
100
,
header
=
""
,
action_key
=
None
):
"""Get the alert log."""
return
self
.
get_alert
(
current
=
current
,
minimum
=
minimum
,
maximum
=
maximum
,
header
=
header
,
action_key
=
action_key
,
log
=
True
)
def
__get_limit
(
self
,
criticity
,
stat_name
=
""
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录