Console Light 网络监控面板#
介绍#
Angie 提供了广泛的监控其工作的可能性;除了 metrics API 和 http_prometheus 模块外,您还可以使用安装在服务器旁边的可视化控制台。
Console Light 是一个轻量级的实时活动监控界面,显示关键的服务器性能指标。控制台基于 Angie 的 API 功能;活动监控数据是实时提取的。此外,如果 API 本身提供此功能,控制台还允许您动态 修改 Angie 配置。
已部署和配置的控制台示例:https://console.angie.software/
安装和配置#
Console Light 以 angie-console-light
(Angie) 和 angie-pro-console-light
(Angie PRO) 的形式发布在 我们的存储库 中,可以像任何其他包一样安装;您也可以从我们的网站 下载源码 或 GitHub。当前版本是 1.4.0。
安装后,通过在 配置文件 的 server 块内添加以下 location 来配置控制台(注意注释):
location /console/ {
# 仅限本地访问
allow 127.0.0.1;
deny all;
auto_redirect on;
alias /usr/share/angie-console-light/html/;
# 仅适用于 FreeBSD:
# alias /usr/local/www/angie-console-light/html/;
index index.html;
location /console/api/ {
api /status/;
}
# 在身份验证后使编辑功能正常工作(仅限 PRO)
location /console/api/config/ {
auth_basic "Protected site";
auth_basic_user_file conf/htpasswd;
api /config/;
}
}
不要忘记应用修改后的配置:
$ sudo angie -t && sudo service angie reload
之后,控制台将在 server
块指定的服务器上可用,路径在 location
中指定;上述路径设置为 /console/
。
如上例所示,可以为任意 API 部分启用身份验证,例如:
location /console/server_zones/ {
auth_basic "Protected site";
auth_basic_user_file conf/htpasswd;
}
您还可以限制对配置控制台 location
任意部分的访问,例如:
location /console/api/resolvers/ {
deny all;
}
界面#
控制台是一个单一屏幕,包含一组选项卡,每个选项卡包含几个监控数据小部件。
提示
在下面的部分中,界面元素从左到右描述。
Angie 选项卡#
这是主选项卡,显示基于多个 API 部分数据的主要 Angie 监控指标。
关于 小部件#
显示 Angie 版本号,并提供到相关文档集的链接,以及服务器地址和最后一次 重启时间。
此外,如果启用了 api_config_files 指令,配置 链接将打开服务器上加载的配置文件列表。每个文件都可以在紧凑视图中打开,并带有语法高亮。
连接 小部件#
显示从 /status/connections/ API 部分生成的基本服务器连接统计数据:
当前 |
当前连接 |
每秒接受 |
每秒接受的连接数 |
活动 |
活动连接数 |
空闲 |
空闲连接数 |
丢弃 |
丢弃的连接数 |
还可用:
接受 |
自上次服务器重启以来接受的总连接数 |
HTTP 区域 小部件#
注意
该小部件需要在 server
或 location
上下文中设置 status_zone 指令。
显示从 /status/http/server_zones/ API 部分生成的 http
上下文的共享内存区域统计数据:
总计 |
总区域数 |
问题 |
有问题的区域 |
流量 |
总流入和流出流量 |
HTTP 上游 小部件#
注意
该小部件需要在 http
上下文中设置 upstream 指令。
显示从 /status/http/upstreams/ API 部分生成的 http
上下文的上游统计数据:
总计 |
总上游数 |
问题 |
有问题的上游 |
服务器 |
按状态划分的服务器统计 |
TCP/UDP 区域 小部件#
注意
该小部件需要设置以下指令:
limit_conn_zone 在
stream
上下文中
示例:
stream {
# ...
limit_conn_zone $connection zone=limit-conn-stream:10m;
server {
# ...
limit_conn limit-conn-stream 1;
status_zone foo;
}
}
显示从 /status/stream/server_zones/ API 部分生成的 stream
上下文的共享内存区域统计数据:
连接总数 |
总客户端连接数 |
当前连接 |
当前客户端连接数 |
每秒连接 |
每秒处理的连接数 |
TCP/UDP 上游 小部件#
注意
该小部件需要在 stream
上下文中设置 upstream 指令。
显示从 /status/stream/upstreams/ API 部分生成的 stream
上下文的上游统计数据:
总计 |
总上游数 |
问题 |
有问题的上游 |
服务器 |
按状态划分的服务器统计 |
HTTP 区域 选项卡#
注意
该选项卡需要在 server
或 location
上下文中设置 status_zone 指令。
服务器区域 部分#
总结了从 /status/http/server_zones/ API 部分生成的 http
上下文中 server
上下文的共享内存区域监控统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的箭头,可以按字母顺序或配置顺序对区域进行排序。
请求 |
请求总数以及每秒请求数 |
响应 |
按状态代码划分的响应数,以及响应总数 |
流量 |
出入流量率,以及出入流量总量 |
SSL |
累计计数: - 成功的 SSL 握手; - 重用的 SSL 会话; - 超时过期的 SSL 握手; - 不成功的 SSL 握手。 |
位置区域 部分#
总结了从 /status/http/location_zones/ API 部分生成的 http
上下文中 location
上下文的共享内存区域监控统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的箭头,可以按字母顺序或配置顺序对区域进行排序。
请求 |
请求总数以及每秒请求数 |
响应 |
按状态代码划分的响应数,以及响应总数 |
流量 |
出入流量率,以及出入流量总量 |
连接限制 部分#
显示从 /status/http/limit_conns/ API 部分生成的 http
上下文中的 limit_conn
区域统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的图标,以打开或关闭包含以下指标的图表。
通过 |
总代理连接数 |
拒绝 |
总拒绝连接数 |
耗尽 |
由于区域存储耗尽而丢弃的总连接数 |
跳过 |
通过的总连接数(键为零或大于 255 字节) |
请求限制 部分#
显示从 /status/http/limit_reqs/ API 部分生成的 http
上下文中的 limit_reqs
区域统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的图标,以打开或关闭包含以下指标的图表。
通过 |
总代理连接数 |
延迟 |
总延迟连接数 |
拒绝 |
总拒绝连接数 |
耗尽 |
由于区域存储耗尽而丢弃的总连接数 |
跳过 |
通过的总连接数(键为零或大于 255 字节) |
HTTP 上游 选项卡#
注意
该选项卡需要在 http
上下文中设置 upstream 指令。
此选项卡总结了从 /status/http/upstreams/ API 部分生成的 http
上下文的上游监控统计数据。
显示上游列表 按钮切换上游摘要,显示有问题的上游和服务器数量。
仅显示失败 开关切换为仅关注有问题上游的输出模式。
编辑按钮(仅限 Angie PRO)切换 上游编辑 界面。
每个上游表右侧的下拉列表允许按状态过滤其服务器(正常,失败,检查中,下线)。
对于每个上游,除了其名称和共享内存区域利用率外,还提供以下数据:
服务器 |
上游服务器的名称、停机时间和权重 |
提示
单击 服务器 旁边的箭头,可以按状态或配置顺序对服务器进行排序。
请求 |
请求的总数和处理速度 |
响应 |
按状态代码划分的响应数 |
连接 |
活动连接数及其最大限制(如设置) |
流量 |
出入流量率,以及出入流量总量 |
服务器检查 |
达到服务器的不成功尝试次数以及服务器被视为不可用的次数(API 中的 |
健康监测 (仅限 Angie PRO) |
服务器探测总数、不成功的探测次数以及最后一次探测的时间 |
编辑上游#
对于 Angie PRO,每个上游旁边有一个编辑按钮,单击后会出现两个更多按钮:
TCP/UDP 区域 选项卡#
注意
该选项卡需要设置以下指令:
limit_conn_zone 在
stream
上下文中
示例:
stream {
# ...
limit_conn_zone $connection zone=limit-conn-stream:10m;
server {
# ...
limit_conn limit-conn-stream 1;
status_zone foo;
}
}
TCP/UDP 区域 部分#
总结了从 /status/stream/server_zones/ API 部分生成的 stream
上下文中 server
上下文的共享内存区域监控统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
连接 |
当前和总连接数,以及每秒连接数 |
会话 |
按状态代码划分的会话数,以及会话总数 |
流量 |
出入流量率,以及出入流量总量 |
SSL |
累计计数: - 成功的 SSL 握手; - 不成功的 SSL 握手; - 重用的 SSL 会话; - 超时过期的 SSL 握手。 |
连接限制 部分#
显示从 /status/stream/limit_conns/ API 部分生成的 stream
上下文中的 limit_conn
区域统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的图标,以打开或关闭包含以下指标的图表。
通过 |
总代理连接数 |
拒绝 |
总拒绝连接数 |
耗尽 |
由于区域存储耗尽而丢弃的总连接数 |
跳过 |
通过的总连接数(键为零或大于 255 字节) |
TCP/UDP 上游 选项卡#
注意
该选项卡需要在 stream
上下文中设置 upstream 指令。
此选项卡总结了从 /status/stream/upstreams/ API 部分生成的 stream
上下文的上游监控统计数据。
显示上游列表 按钮切换上游摘要,显示有问题的上游和服务器数量。
仅显示失败 开关切换为仅关注有问题上游的输出模式。
编辑按钮(仅限 Angie PRO)切换 上游编辑 界面。
每个上游表右侧的下拉列表允许按状态过滤其服务器(正常,失败,检查中,下线)。
对于每个上游,除了其名称和共享内存区域利用率外,还提供以下数据:
服务器 |
上游服务器的名称、停机时间和权重 |
提示
单击 服务器 旁边的箭头,可以按状态或配置顺序对服务器进行排序。
请求 |
请求的总数和处理速度 |
响应 |
按状态代码划分的响应数 |
连接 |
活动连接数及其最大限制(如设置) |
流量 |
出入流量率,以及出入流量总量 |
服务器检查 |
达到服务器的不成功尝试次数以及服务器被视为不可用的次数(API 中的 |
编辑上游#
对于 Angie PRO,每个上游旁边有一个编辑按钮,单击后会出现两个更多按钮:
缓存 选项卡#
注意
该选项卡需要在 http
上下文中设置 proxy_cache_path 指令。
总结了从 /status/http/caches/ API 部分生成的 http
上下文中 proxy_cache
区域的监控统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的图标,以打开或关闭所有具有分片的 shard 列表。
状态 |
缓存状态:冷(元数据加载中)或热(元数据已加载) |
内存使用 |
内存利用率 |
最大大小 |
最大内存大小 |
已使用 |
已使用的内存大小 |
磁盘使用 |
磁盘利用率 |
流量 |
从缓存传输的流量、写入到缓存的流量以及绕过缓存返回的流量 |
命中率 |
缓存命中率(从缓存传输的流量占总量的比例),在设置中配置的时间窗口内 |
如果为某个区域启用了 分片,则它被标记为包含各个分片的下拉列表:
路径 |
分片磁盘路径 |
状态 |
分片状态:冷(元数据加载中)或热(元数据已加载) |
最大大小 |
最大内存大小 |
已使用 |
已使用的内存大小 |
磁盘使用 |
磁盘利用率 |
共享区域 选项卡#
此选项卡总结了所有上下文中**所有**共享内存区域的监控统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的箭头,可以按大小或配置顺序对区域进行排序。
总内存页 |
总内存页 |
已使用内存页 |
已使用的内存页总数 |
内存使用 |
区域的内存利用率 |
解析器 选项卡#
注意
该选项卡需要在 http
上下文中设置 resolver 指令。
总结了从 /status/resolvers/ API 部分生成的 DNS 共享内存区域中的查询统计数据。为每个区域提供以下数据:
区域 |
区域名称 |
提示
单击 区域 旁边的箭头,可以按状态或配置顺序对区域进行排序。
请求 |
A 和 AAAA、SRV 或 PTR 请求数 |
响应 |
按相关代码划分的响应数(格式错误、服务器故障、名称错误、未实现、拒绝 等) |
设置 小部件#
允许您配置控制台中的数据更新频率、使黄色警告出现在相应服务器响应部分的 4xx 状态阈值比率,以及用于计算缓存命中率的时间窗口(命中率)和使解析器变红的错误计数阈值。
控制台控制面板#
所有选项卡在页面左中部都有一个拉出的侧边栏,其中有两个按钮;顶部按钮暂停或重新启动来自 API 的数据更新,底部按钮在更新暂停时允许手动更新数据。