菜单

nvisual实时监测

下载

nvisual实时监测

示例地址

https://cloud.nvisual.com/share.html?shareLink=W7F78h2zP54mVhIwvNx7&v=1739171523191

这是我们nvisual的分享社区中的一个分享示例,此示例是针对实时监测的应用案例。

使用描述

nvisual右侧工具栏有一个实时监测按钮

点击展开后是配置好的实时监测报表数据

详细功能介绍

这个功能是适配监测模块开发的,原理大致是在grafana连接promethues的监测数据,grafana内设计监测页面,这里将grafana的页面引入并展示。

从控制台可以看到这个按钮点击后调用的接口是

https://cloud.nvisual.com/diagramApi/wapi/v1/monitor/getUrl/24000000015099

(24000000015099是监测对象的id)
这个接口的功能是,查询此id对象对应的监测页面url,使前端调用此url展示页面。

这个接口会获取此id对象的属性列表内的监测类型属性,用此属性查询数据库中对应的url路径,例如

例图中监测类型是windows,数据库中有个monitor表,其中job列里存着对应监测类型

monitor表内job里是windows的对象,对应的dashboard_url和url_parametes分别是

https://cloud.nvisual.com/monitor/d/Kdh0OoSGz/windows
?orgId=1&var-job=windows&var-hostname=All&var-instance={Properties=IP}:9182&kiosk

所以如果监测类型是windows时,查询出来的url拼接起来为

https://cloud.nvisual.com/monitor/d/Kdh0OoSGz/windows?orgId=1&var-job=windows&var-hostname=All&var-instance={Properties=IP}:9182&kiosk

而接口查询的结果是

{
  "code": 200,
  "data": "https://cloud.nvisual.com/monitor/d/Kdh0OoSGz/windows?orgId=1&var-job=windows&var-hostname=All&var-instance=1.119.167.26:9182&kiosk",
  "message": "success"
}

可以看到{Properties=IP}被替换为了1.119.167.26

表达式

这是因为{Properties=IP}是一个表达式,这个表达式的含义是取此对象本身的IP属性值

表达式规则是

1.需要用花括号括起来{}

2.如果取本身的属性,需要在等号前面用Properties

如果取父级对象的属性,需要在等号前面用parent_properties

3.中间用等号连接 =

4.等号后面是对象的属性名

例如:{Properties=IP}是取此对象的IP属性值

{Properties=ID}是取此对象的ID

{parent_properties=ID}是取此对象父级的ID

拓展

如果你有写好的自己的页面,需要传参数,可以在monitor表里自己定义

例如:创建一个job是test的数据,

dashboard_url填 https://cloud.nvisual.com/access.html?v=2.4.11

url_parametes填 ?node={Properties=ID}

在对象的监测类型里选择test

查看实时监测,回参的url是

{

  "code": 200,

  "data": "https://cloud.nvisual.com/access.html?v=2.4.11?node=24749000855405",

  "message": "success"

}

用这个方法可以在nvisual内自定义对象的监测页面

上一个
外部获取nVisual所在层级方法
下一个
nVisual单点登录-最精简方式
最近修改: 2025-02-10