内容简介:语言模板创建任意的console。这些由Prometheus服务提供。控制台模板是创建可在源代码管理中轻松管理的模板的最强大方法。 虽然有一个学习曲线,所以对这种监控方式不熟悉的用户应首先尝试Grafana。Prometheus附带一套示例,让您学习。 这些可以在运行的Prometheus上的
语言模板创建任意的console。这些由Prometheus服务提供。
控制台模板是创建可在源代码管理中轻松管理的模板的最强大方法。 虽然有一个学习曲线,所以对这种监控方式不熟悉的用户应首先尝试Grafana。
一、Getting started
Prometheus附带一套示例,让您学习。 这些可以在运行的Prometheus上的 /consoles/index.html.example
中找到,如果Prometheus正在使用 job="node"
标签来抓取节点导出器,则会显示节点导出器控制台。
这个例子控制台包括5部分:
- 在顶部的导航栏
- 左边的一个菜单
- 底部的时间控制
- 在中心的主内容,通常是图表
- 右边的表格
导航栏用于指向其他系统的链接,例如其他Prometheis,文档以及其他任何对您有意义的内容。 该菜单用于在同一个Prometheus服务器内导航,这对于能够在另一个选项卡中快速打开控制台以关联信息非常有用。 两者都在 console_libraries/menu.lib
中配置。
时间控制允许更改图形的持续时间和范围。 控制台URL可以共享,并为其他人显示相同的图表。
主要内容通常是图表。 提供了一个可配置的JavaScript图形库,可以处理来自Prometheus的请求数据,并通过Rickshaw进行渲染。
最后,右侧的表格可用于以比图形更紧凑的形式显示统计数据。
二、例子控制台
这是一个基本的控制台。 它显示了右侧表中的任务数,其中有多少,平均CPU使用率和平均内存使用量。 主要内容具有每秒查询图。
{{template "head" .}} {{template "prom_right_table_head"}} <tr> <th>MyJob</th> <th>{{ template "prom_query_drilldown" (args "sum(up{job='myjob'})") }} / {{ template "prom_query_drilldown" (args "count(up{job='myjob'})") }} </th> </tr> <tr> <td>CPU</td> <td>{{ template "prom_query_drilldown" (args "avg by(job)(rate(process_cpu_seconds_total{job='myjob'}[5m]))" "s/s" "humanizeNoSmallPrefix") }} </td> </tr> <tr> <td>Memory</td> <td>{{ template "prom_query_drilldown" (args "avg by(job)(process_resident_memory_bytes{job='myjob'})" "B" "humanize1024") }} </td> </tr> {{template "prom_right_table_tail"}} {{template "prom_content_head" .}} <h1>MyJob</h1> <h3>Queries</h3> <div id="queryGraph"></div> <script> new PromConsole.Graph({ node: document.querySelector("#queryGraph"), expr: "sum(rate(http_query_count{job='myjob'}[5m]))", name: "Queries", yAxisFormatter: PromConsole.NumberFormatter.humanizeNoSmallPrefix, yHoverFormatter: PromConsole.NumberFormatter.humanizeNoSmallPrefix, yUnits: "/s", yTitle: "Queries" }) </script> {{template "prom_content_tail" .}} {{template "tail"}} 复制代码
prom_right_table_head
和 prom_right_table_tail
模板包含右侧表。这是可选的。
prom_query_drilldown
是一个模板,它将评估传递给它的表达式,格式化它,并链接到表达式浏览器中的表达式。第一个参数是表达式。第二个参数是要使用的单位。第三个参数是如何格式化输出。只需要第一个参数。
prom_query_drilldown
的第三个参数的有效输出格式:
- 未指定:默认转到显示输出。
-
humanize
:使用指标前缀显示结果。 -
humanizeNoSmallPrefix
:对于大于1的绝对值,使用度量标准前缀显示结果。对于小于1的绝对值,显示3位有效数字。这对于避免可以通过人性化生成的诸如每秒毫微秒的单位是有用的。 -
humanize1024
:使用1024而不是1000的基数显示人性化结果。这通常与B
一起用作生成KiB
和MiB
等单位的第二个参数。 -
printf.3g
:显示3位有效数字。
可以定义自定义格式。有关示例,请参阅 prom.lib 。
三、图库
图库被调用为:
<div id="queryGraph"></div> <script> new PromConsole.Graph({ node: document.querySelector("#queryGraph"), expr: "sum(rate(http_query_count{job='myjob'}[5m]))" }) </script> 复制代码
head
模板加载所需的Javascript和CSS。
图库的参数:
名字 | 描述 |
---|---|
expr | 必选. 表达式到图表。 可以是一个清单。 |
node | 必选. 要渲染的DOM节点。 |
duration | 可选. 图表的持续时间。 默认为1小时。 |
endTime | 可选. 图表结束时的Unixtime。 默认为现在。 |
width | 可选. 图表的宽度,不包括标题。 默认为自动检测。 |
height | 可选. 图表的高度,不包括标题和图例。 默认为200像素。 |
min | 可选. 最小x轴值。 默认为最低数据值。 |
max | 可选. 最小y轴值。 默认为最高数据值。 |
renderer |
可选. 图表类型。 选项 line
和 area
(堆叠图)。 默认为行。 |
name |
可选. 图例和悬停细节中的图表标题。 如果传递了一个字符串, [[label]]
将被替换为标签值。 如果传递了一个函数,它将传递一个标签映射,并应该将该名称作为字符串返回。 可以是一个清单。 |
xTitle |
可选. x轴的标题。 默认为 Time
。 |
yUnits | 可选. y轴的单位。 默认为空。 |
yTitle | 可选. y轴的标题。 默认为空。 |
yAxisFormatter |
可选. y轴的数字格式化程序。 默认为 PromConsole.NumberFormatter.humanize
。 |
yHoverFormatter |
可选. 悬停细节的数字格式化程序。 默认为 PromConsole.NumberFormatter.humanizeExact
。 |
colorScheme |
可选. 图表使用的配色方案。 可以是十六进制 颜色代码列表
,也可以是人力车支持的颜色方案名称之一。 默认为 colorwheel
。 |
如果 expr
和 name
都是列表,则它们的长度必须相同。 该名称将应用于相应表达式的图。
yAxisFormatter
和 yHoverFormatter
的有效选项:
-
PromConsole.NumberFormatter.humanize
:使用度量标准前缀的格式。 -
PromConsole.NumberFormatter.humanizeNoSmallPrefix
:对于大于1的绝对值,使用度量标准前缀进行格式化。 对于小于1的绝对值,请使用3位有效数字格式。 这对于避免PromConsole.NumberFormatter.humanize
可以生成的每秒毫秒数等单位很有用。 -
PromConsole.NumberFormatter.humanize1024
:使用1024而不是1000的基数格式化人性化结果。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 无头浏览器测试可视化:Laravel Dusk 控制台入门指南
- Cloudera Manager 之四(管理控制台)
- MLSQL 控制台预览版 推出啦
- frp 控制台监控dashboard配置
- 超好用的C#控制台应用模板
- 为何把日志打印到控制台很慢?
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP+MySQL八大动态Web应用实战
Jono Bacom / 吴连河、李剑 / 电子工业出版社 / 2008-6 / 68.00元
本书详细介绍了利用PHP+MySQL开发常见类型Web应用程序的完整设计和编码技术,并对整体设计与关键代码给予了细致、深入的剖析。其内容注重实践,提供了翔实完整的实战代码;思路独树一帜,突破过多描述语言细节的窠臼;行文风趣幽默,轻松调侃中将项目的完整设计过程分析得一清二楚。书中的示例项目完整而实用,读者甚至无需任何改动即可在实际中加以运用。. 本书适合对PHP/MySQL有初步了解但缺乏完整......一起来看看 《PHP+MySQL八大动态Web应用实战》 这本书的介绍吧!