grafana Datasource插件数据流原型
2023-01-30 15:37:28 1 举报
grafana Datasource插件数据流原理
作者其他创作
大纲/内容
切换插件操作
查询条件更改onchange
<PanelChromer />
panel plugin 适配器(<DashboardPanel/>)
接收到RefreshEventt事件
发布PanelQueriesChangedEvent事件
DataSource第三方插件
<panelEditor/>
全局状态 State
订阅 Emitter 事件
grafana 插件
Mysql plugn URL
query URL
页面信息变化dispatch()
const panel = new PanelModel() 并将panel 插件存储在panelModel对象plugin属性
PanelModel
getPanel()loadPanelPlugin()importPanelPlugin()
QueryOptionCtrl模块数据源的面板范围设置
ES pluginQuery pluginMysql plugnMDB plugin.......
是否为第三方插件
dataSourcePlugin
插件适配器
ReduxTookkit维护全局状态
发布RefreshEventt事件
refresh() => events.publish(new RefreshEvent()
panelModel
监听onRefresh事件
Plugin server
getQueryRunner.getData获取Panel展示数据
订阅Refresh事件刷新组件
data:存储panel渲染数据span class=\"name own-property\" var(--color-syntax-2)\"=\"\" original-title=\"type:: span class=\"object-value-string value\" color=\"var(--color-syntax-1)\" original-title=\"\
importPanelPlugin从插件池获取Panel插件
Query plugin URL
loadDatasource()
datasource 模块主要负责查询数据
datasource_srv模型
EventEmitter
PanelModel
datasource 插件模块
PanePlugin
updateQueries() 获取最新数据
datasource
<PanelChromeAngular />
QueryCtrl模块对应panel模块的metrics编辑页面
订阅EventEmiter监听Penel插件变化更新dataSource
get()下载插件
configCtrl模块对数据源的定义和配置
panel
onstateChange
AWS General Database
插件池(builtInPlugins.ts)
<QueryEditorRow/>
Panel 插件模块
MDB Plugin URL
store.getPanel()获取Panel插件对象
MDB Plugin URL
更改全局状态方法reducer
importDataSourcePlugin()
AnnotationQueryCtrl模块对应dashborad层面定义注解时的配置页面
Panel 插件
监听PanelQueriesChangedEvent事件厨房forceupdate 刷新页面
Datasource 内部插件
0 条评论
下一页