Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
蜕变的菜鸟
glances
提交
4934d78d
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 搜索 >>
提交
4934d78d
编写于
4月 27, 2016
作者:
N
Nicolargo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Improve default configuration values for IO stats
上级
b7ac674b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
69 addition
and
63 deletion
+69
-63
conf/glances.conf
conf/glances.conf
+7
-6
glances/config.py
glances/config.py
+62
-57
未找到文件。
conf/glances.conf
浏览文件 @
4934d78d
...
...
@@ -11,16 +11,12 @@ swap_warning=70
swap_critical
=
90
[
cpu
]
# Define CPU thresholds in %
# Default values if not defined: 50/70/90
# Default values if not defined: 50/70/90 (except for iowait)
user_careful
=
50
user_warning
=
70
user_critical
=
90
#user_log=False
#user_critical_action=echo `date` - {{user}} > /tmp/cpu.alert
iowait_careful
=
50
iowait_warning
=
70
iowait_critical
=
90
#user_critical_action=echo {{user}} {{value}} {{max}} > /tmp/cpu.alert
system_careful
=
50
system_warning
=
70
system_critical
=
90
...
...
@@ -28,6 +24,11 @@ steal_careful=50
steal_warning
=
70
steal_critical
=
90
#steal_log=True
# I/O wait percentage should be lower than 1/# (of CPU cores)
# Let blanck to default config (1/#-20% / 1/# / 1/#+20%)
#iowait_careful=20
#iowait_warning=25
#iowait_critical=30
# Context switch limit per core / second
# For example, if you have 2 Core, critical limit will be 28000/sec
ctx_switches_careful
=
10000
...
...
glances/config.py
浏览文件 @
4934d78d
...
...
@@ -21,6 +21,7 @@
import
os
import
sys
import
multiprocessing
from
io
import
open
from
glances
import
__appname__
...
...
@@ -108,95 +109,94 @@ class Config(object):
# Quicklook
if
not
self
.
parser
.
has_section
(
'quicklook'
):
self
.
parser
.
add_section
(
'quicklook'
)
self
.
parser
.
se
t
(
'quicklook'
,
'cpu_careful'
,
'50'
)
self
.
parser
.
se
t
(
'quicklook'
,
'cpu_warning'
,
'70'
)
self
.
parser
.
se
t
(
'quicklook'
,
'cpu_critical'
,
'90'
)
self
.
parser
.
se
t
(
'quicklook'
,
'mem_careful'
,
'50'
)
self
.
parser
.
se
t
(
'quicklook'
,
'mem_warning'
,
'70'
)
self
.
parser
.
se
t
(
'quicklook'
,
'mem_critical'
,
'90'
)
self
.
parser
.
se
t
(
'quicklook'
,
'swap_careful'
,
'50'
)
self
.
parser
.
se
t
(
'quicklook'
,
'swap_warning'
,
'70'
)
self
.
parser
.
se
t
(
'quicklook'
,
'swap_critical'
,
'90'
)
self
.
set_defaul
t
(
'quicklook'
,
'cpu_careful'
,
'50'
)
self
.
set_defaul
t
(
'quicklook'
,
'cpu_warning'
,
'70'
)
self
.
set_defaul
t
(
'quicklook'
,
'cpu_critical'
,
'90'
)
self
.
set_defaul
t
(
'quicklook'
,
'mem_careful'
,
'50'
)
self
.
set_defaul
t
(
'quicklook'
,
'mem_warning'
,
'70'
)
self
.
set_defaul
t
(
'quicklook'
,
'mem_critical'
,
'90'
)
self
.
set_defaul
t
(
'quicklook'
,
'swap_careful'
,
'50'
)
self
.
set_defaul
t
(
'quicklook'
,
'swap_warning'
,
'70'
)
self
.
set_defaul
t
(
'quicklook'
,
'swap_critical'
,
'90'
)
# CPU
if
not
self
.
parser
.
has_section
(
'cpu'
):
self
.
parser
.
add_section
(
'cpu'
)
self
.
parser
.
set
(
'cpu'
,
'user_careful'
,
'50'
)
self
.
parser
.
set
(
'cpu'
,
'user_warning'
,
'70'
)
self
.
parser
.
set
(
'cpu'
,
'user_critical'
,
'90'
)
self
.
parser
.
set
(
'cpu'
,
'iowait_careful'
,
'50'
)
self
.
parser
.
set
(
'cpu'
,
'iowait_warning'
,
'70'
)
self
.
parser
.
set
(
'cpu'
,
'iowait_critical'
,
'90'
)
self
.
parser
.
set
(
'cpu'
,
'system_careful'
,
'50'
)
self
.
parser
.
set
(
'cpu'
,
'system_warning'
,
'70'
)
self
.
parser
.
set
(
'cpu'
,
'system_critical'
,
'90'
)
self
.
parser
.
set
(
'cpu'
,
'steal_careful'
,
'50'
)
self
.
parser
.
set
(
'cpu'
,
'steal_warning'
,
'70'
)
self
.
parser
.
set
(
'cpu'
,
'steal_critical'
,
'90'
)
self
.
set_default
(
'cpu'
,
'user_careful'
,
'50'
)
self
.
set_default
(
'cpu'
,
'user_warning'
,
'70'
)
self
.
set_default
(
'cpu'
,
'user_critical'
,
'90'
)
self
.
set_default
(
'cpu'
,
'system_careful'
,
'50'
)
self
.
set_default
(
'cpu'
,
'system_warning'
,
'70'
)
self
.
set_default
(
'cpu'
,
'system_critical'
,
'90'
)
self
.
set_default
(
'cpu'
,
'steal_careful'
,
'50'
)
self
.
set_default
(
'cpu'
,
'steal_warning'
,
'70'
)
self
.
set_default
(
'cpu'
,
'steal_critical'
,
'90'
)
# By default I/O wait should be lower than 1/number of CPU cores
iowait_bottleneck
=
(
1.0
/
multiprocessing
.
cpu_count
())
*
100.0
self
.
set_default
(
'cpu'
,
'iowait_careful'
,
str
(
iowait_bottleneck
-
(
iowait_bottleneck
*
0.20
)))
self
.
set_default
(
'cpu'
,
'iowait_warning'
,
str
(
iowait_bottleneck
))
self
.
set_default
(
'cpu'
,
'iowait_critical'
,
str
(
iowait_bottleneck
+
(
iowait_bottleneck
*
0.20
)))
# Per-CPU
if
not
self
.
parser
.
has_section
(
'percpu'
):
self
.
parser
.
add_section
(
'percpu'
)
self
.
parser
.
set
(
'percpu'
,
'user_careful'
,
'50'
)
self
.
parser
.
set
(
'percpu'
,
'user_warning'
,
'70'
)
self
.
parser
.
set
(
'percpu'
,
'user_critical'
,
'90'
)
self
.
parser
.
set
(
'percpu'
,
'iowait_careful'
,
'50'
)
self
.
parser
.
set
(
'percpu'
,
'iowait_warning'
,
'70'
)
self
.
parser
.
set
(
'percpu'
,
'iowait_critical'
,
'90'
)
self
.
parser
.
set
(
'percpu'
,
'system_careful'
,
'50'
)
self
.
parser
.
set
(
'percpu'
,
'system_warning'
,
'70'
)
self
.
parser
.
set
(
'percpu'
,
'system_critical'
,
'90'
)
self
.
set_default
(
'percpu'
,
'user_careful'
,
'50'
)
self
.
set_default
(
'percpu'
,
'user_warning'
,
'70'
)
self
.
set_default
(
'percpu'
,
'user_critical'
,
'90'
)
self
.
set_default
(
'percpu'
,
'system_careful'
,
'50'
)
self
.
set_default
(
'percpu'
,
'system_warning'
,
'70'
)
self
.
set_default
(
'percpu'
,
'system_critical'
,
'90'
)
# Load
if
not
self
.
parser
.
has_section
(
'load'
):
self
.
parser
.
add_section
(
'load'
)
self
.
parser
.
se
t
(
'load'
,
'careful'
,
'0.7'
)
self
.
parser
.
se
t
(
'load'
,
'warning'
,
'1.0'
)
self
.
parser
.
se
t
(
'load'
,
'critical'
,
'5.0'
)
self
.
set_defaul
t
(
'load'
,
'careful'
,
'0.7'
)
self
.
set_defaul
t
(
'load'
,
'warning'
,
'1.0'
)
self
.
set_defaul
t
(
'load'
,
'critical'
,
'5.0'
)
# Mem
if
not
self
.
parser
.
has_section
(
'mem'
):
self
.
parser
.
add_section
(
'mem'
)
self
.
parser
.
se
t
(
'mem'
,
'careful'
,
'50'
)
self
.
parser
.
se
t
(
'mem'
,
'warning'
,
'70'
)
self
.
parser
.
se
t
(
'mem'
,
'critical'
,
'90'
)
self
.
set_defaul
t
(
'mem'
,
'careful'
,
'50'
)
self
.
set_defaul
t
(
'mem'
,
'warning'
,
'70'
)
self
.
set_defaul
t
(
'mem'
,
'critical'
,
'90'
)
# Swap
if
not
self
.
parser
.
has_section
(
'memswap'
):
self
.
parser
.
add_section
(
'memswap'
)
self
.
parser
.
se
t
(
'memswap'
,
'careful'
,
'50'
)
self
.
parser
.
se
t
(
'memswap'
,
'warning'
,
'70'
)
self
.
parser
.
se
t
(
'memswap'
,
'critical'
,
'90'
)
self
.
set_defaul
t
(
'memswap'
,
'careful'
,
'50'
)
self
.
set_defaul
t
(
'memswap'
,
'warning'
,
'70'
)
self
.
set_defaul
t
(
'memswap'
,
'critical'
,
'90'
)
# FS
if
not
self
.
parser
.
has_section
(
'fs'
):
self
.
parser
.
add_section
(
'fs'
)
self
.
parser
.
se
t
(
'fs'
,
'careful'
,
'50'
)
self
.
parser
.
se
t
(
'fs'
,
'warning'
,
'70'
)
self
.
parser
.
se
t
(
'fs'
,
'critical'
,
'90'
)
self
.
set_defaul
t
(
'fs'
,
'careful'
,
'50'
)
self
.
set_defaul
t
(
'fs'
,
'warning'
,
'70'
)
self
.
set_defaul
t
(
'fs'
,
'critical'
,
'90'
)
# Sensors
if
not
self
.
parser
.
has_section
(
'sensors'
):
self
.
parser
.
add_section
(
'sensors'
)
self
.
parser
.
se
t
(
'sensors'
,
'temperature_core_careful'
,
'60'
)
self
.
parser
.
se
t
(
'sensors'
,
'temperature_core_warning'
,
'70'
)
self
.
parser
.
se
t
(
'sensors'
,
'temperature_core_critical'
,
'80'
)
self
.
parser
.
se
t
(
'sensors'
,
'temperature_hdd_careful'
,
'45'
)
self
.
parser
.
se
t
(
'sensors'
,
'temperature_hdd_warning'
,
'52'
)
self
.
parser
.
se
t
(
'sensors'
,
'temperature_hdd_critical'
,
'60'
)
self
.
parser
.
se
t
(
'sensors'
,
'battery_careful'
,
'80'
)
self
.
parser
.
se
t
(
'sensors'
,
'battery_warning'
,
'90'
)
self
.
parser
.
se
t
(
'sensors'
,
'battery_critical'
,
'95'
)
self
.
set_defaul
t
(
'sensors'
,
'temperature_core_careful'
,
'60'
)
self
.
set_defaul
t
(
'sensors'
,
'temperature_core_warning'
,
'70'
)
self
.
set_defaul
t
(
'sensors'
,
'temperature_core_critical'
,
'80'
)
self
.
set_defaul
t
(
'sensors'
,
'temperature_hdd_careful'
,
'45'
)
self
.
set_defaul
t
(
'sensors'
,
'temperature_hdd_warning'
,
'52'
)
self
.
set_defaul
t
(
'sensors'
,
'temperature_hdd_critical'
,
'60'
)
self
.
set_defaul
t
(
'sensors'
,
'battery_careful'
,
'80'
)
self
.
set_defaul
t
(
'sensors'
,
'battery_warning'
,
'90'
)
self
.
set_defaul
t
(
'sensors'
,
'battery_critical'
,
'95'
)
# Process list
if
not
self
.
parser
.
has_section
(
'processlist'
):
self
.
parser
.
add_section
(
'processlist'
)
self
.
parser
.
se
t
(
'processlist'
,
'cpu_careful'
,
'50'
)
self
.
parser
.
se
t
(
'processlist'
,
'cpu_warning'
,
'70'
)
self
.
parser
.
se
t
(
'processlist'
,
'cpu_critical'
,
'90'
)
self
.
parser
.
se
t
(
'processlist'
,
'mem_careful'
,
'50'
)
self
.
parser
.
se
t
(
'processlist'
,
'mem_warning'
,
'70'
)
self
.
parser
.
se
t
(
'processlist'
,
'mem_critical'
,
'90'
)
self
.
set_defaul
t
(
'processlist'
,
'cpu_careful'
,
'50'
)
self
.
set_defaul
t
(
'processlist'
,
'cpu_warning'
,
'70'
)
self
.
set_defaul
t
(
'processlist'
,
'cpu_critical'
,
'90'
)
self
.
set_defaul
t
(
'processlist'
,
'mem_careful'
,
'50'
)
self
.
set_defaul
t
(
'processlist'
,
'mem_warning'
,
'70'
)
self
.
set_defaul
t
(
'processlist'
,
'mem_critical'
,
'90'
)
@
property
def
loaded_config_file
(
self
):
...
...
@@ -211,6 +211,11 @@ class Config(object):
"""Return info about the existence of a section."""
return
self
.
parser
.
has_section
(
section
)
def
set_default
(
self
,
section
,
option
,
default
):
"""If the option did not exist, create a default value."""
if
not
self
.
parser
.
has_option
(
section
,
option
):
self
.
parser
.
set
(
section
,
option
,
default
)
def
get_value
(
self
,
section
,
option
,
default
=
None
):
"""Get the value of an option, if it exists."""
try
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录