Giter VIP home page Giter VIP logo

open-monitor's People

Contributors

boboboom avatar haixinhuang avatar hope-onely avatar howechen avatar irvinezhao avatar junchensz avatar kanetz avatar nertonsong avatar nevinxie avatar pobu168 avatar wanghao7717 avatar zgyzgyhero avatar zhanglin9833 avatar zhijunzhou avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

open-monitor's Issues

告警接收人配置

描述您的需求
需要可以配置每个告警的接收人,配置告警的邮箱服务器发送方等

预期行为
1、封装读写alertmanager配置文件的方法
2、设计mysql表结构存储告警通道配置和告警接收人配置
3、开发配置告警接收人接口和告警邮箱服务器配置

监控视图指标配置

描述您的需求
需要一个管理界面去配置用户想要的监控指标表达式,因为prometheus的表达式实在有点长不太适合普通用户,所以需要提供一个管理员用户去配置好相关的表达式并保存可用于视图展示与阀值配置

预期行为
1 在视图上加多一个tab展示用户自定义表达式的数据查看图
2 在该视图上可让用户保存表达式配置
3 在阀值配置上应用

监控插件 前端页面需求

描述您的需求

5 web server做接口整合与告警配置 用mysql存储 下面是一些预想的功能点与数据依赖

  • 5.1 - 资源搜索 -> consul
  • 5.2 - 历史数据查询 -> prometheus
  • 5.3 - 历史告获查询 -> prometheus
  • 5.4 - 告警配置 -> mysql -> 管理配置文件 -> prometheus 热加载配置
  • 5.5 - 告警接收人 -> wecube用户 -> mysql -> alertmanager
  • 5.6 - 图展示配置 -> mysql
    预期行为

描述您考虑过的替代方案

附加

[日志监控]日志配置下发

描述您的需求
在用户操作完日志配置保存后需要把策略下发到相关机器上的node_exporter上

预期行为
1 日志配置保存后回调方法构造相关参数去调用目标对象的node_exporter
2 之后该行为需要通过salt-stack去执行相关命令

监控web服务mysql表结构设计

描述您的需求
需要mysql持久化上报数据的实体endpoint和指标metric,还需要保存视图和告警配置

预期行为
设计mysql表结构,后续会提供表结构说明和ER图

[讨论]监控相关的功能

wecube的设计中,监测面的监控插件是比较重要且需求较为急迫的,建议尽快启动监控插件的项目。技术实现上,建议基于Prometheus来做构建,才其开源实现上,重点强化基于不同角色视角的监控数据展示、报警数据展示能力。

监控插件部署方式讨论

@nertonsong @chaneyliu
问题: 监控agent部署是用salt-stack部署,还是监控插件自己用主机账号密码去安装好?

个人更倾向于用salt-stack部署,因为就算不依赖salt-stack,也还是要依赖管理密码的cmdb,而且salt-stack自身适配多种操作系统,监控感觉没必要重复造轮子。

视图配置功能升级

描述您的需求

1、调整主菜单布局
对象监控、视图配置、自定义视图归入监控视图
2、视图配置进入前增加对象选择
3、指标配置增加指标选择功能

预期行为

如上

描述您考虑过的替代方案

附加

弹窗缓存数据处理

描述您的需求
现存弹窗关闭后会缓存之前数据,该需求将统一处理该问题

预期行为
弹窗关闭后清理缓存数据

描述您考虑过的替代方案

附加

监控首页开发

描述您的需求
为监控系统提供统一入口,并为后续操作提供基础数据来源

预期行为
用户进入监控系统,进入首页,提供基础搜索功能

描述您考虑过的替代方案
暂无

附加
暂无

API & 配置 管理优化

描述您的需求

前期因进度问题api及常用配置分散在各功能页面中,现将其纳入配置文件统一管理

预期行为

将 API&常用配置 纳入配置文件统一管理

描述您考虑过的替代方案

附加

监控需求整理

当前监控系统已经可以
1 展示各类监控对象的视图
2 配置监控对象的告警
3 告警信息获取与保存

基本的视图与告警功能可用,但还需要完善一些功能
下面是我列举的需完善需求点:

自身用户体验完善:
1、告警对象管理界面需增加注册注销维护窗口功能
2、告警视图需增加自定义指标查看与指标维护功能
3、阀值配置的名称和表达式需支持选择已配置好的表达式
4、未恢复告警界面需支持手动关闭告警和直接添加维护窗口
5、告警视图需可直接跳转至对象监控配置里
6、告警接收方式?

与wecube其它插件关联:
1、需要与CMDB关联去注册注销告警对象
2、需要在阀值配置里增加告警回调itsm或自动化工具
3、流程编排需要调用接口去给告警对象增加维护窗口

prometheus基础采集完善:
1、可配置采集模板来指定监控指标
2、可指定进程监控

容量:
1、支持表达式查询结果与时间序列或另一个表达式结果做简单线性规划
2、支持其它数据源配置并使用其数据做简单线性规划

希望大家评估和建议下上面的需求,个人想法是如果下个月要演示的话优先把用户体验完善和系统关联的先完成。
@chaneyliu @nertonsong @nevinxie @pobu168

告警展示面板

描述您的需求
需要把alertmanager的告警信息持久化下来,提供给用户查询与历史查看

预期行为
1 从alertmanager中配置告警callback调用monitor的告警接口使monitor能把alertmanager的告警信息纪录到mysql中
2 设计mysql表用于存储告警相关信息

监控主机视图功能开发

描述您的需求
需要展示监控历史数据,并提供可配置的常用指标展示,提供不同磁盘与网卡的标签视图展示

预期行为
1 提供监控主机搜索功能
2 提供可配置指标视图

历史告警功能

描述您的需求
需要能看到用户指定的监控对象的在可选时间段内的历史告警与恢复情况

预期行为
1 开发获取历史告警的接口
2 前端界面开发,需要时间段选择与列表展示

[前端]监控管理-组管理

描述您的需求
实现组管理CRUD功能
预期行为
通过此功能实现组管理CRUD

描述您考虑过的替代方案

附加

监控高可用与部署

描述您的需求
1 - prometheus服务高可用
2 - 监控数据高可用
3 - alertmanager服务高可用
4 - 服务发现自动注册上报点

描述您考虑过的替代方案
1 - prometheus服务主备部署,备节点同步主节点数据,保证数据的主备高可用,当主节点异常需要额外的检测服务去切换到备节点
2 - alertmanager服务双活部署,它们之前会通信去确认告警信息是否重复
3 - 用consul服务去做exporter自动发现,prometheus会去consul那里拿要监控的节点

附加
1 - 之后的高可用测试结果会以报告形式发出
2 - 部署方案也会持续更新

未恢复告警页面开发

描述您的需求
需要一个页面展示当前还处于待处理状态的告警,需要定时刷新和告警分组,和手动关闭告警功能

预期行为
1 开发获取未恢复告警接口
2 开发页面前端展示
3 测试告警发生、主动恢复、手动关闭、定时刷新功能

table组件优化

描述您遇到的bug
列表组件操作按钮在多次进入后会出现多个删除功能

如何重现
必现

预期行为
根据既定规则出现操作按钮

截图

附加

应用监控视图设计

描述您的需求
需要一组视图来展示应用系统下的各资源的使用情况,比如所部署的主机的性能情况、所使用的数据库的情况、负载均衡的情况等

预期行为
1 需要从cmdb中拉取应用的信息和其所依赖的资源情况
2 需要整理各类资源要展示的指标项
3 开发应用展示视图

图表增加自动刷新功能

描述您的需求
为使用户及时看到数据信息,希望为图标增加自动刷新功能

预期行为
展示中图标间隔一段时间自动刷新

描述您考虑过的替代方案

附加

监控插件启停接口开发

描述您的需求
监控插件注册时需要提供启停host,mysql,redis的agent接口

预期行为
用golang写个server端提供
host start,stop
mysql start,stop
redis start,stop
的http接口

附加
monitor.xml.zip

监控cmdb系统查询接口对接

描述您的需求
需要在监控上查询到cmdb的系统信息,让用户选择相应的系统,拉取该系统下的各部署单元的信息

预期行为
1 在cmdb上配置CI关联查询去查系统和部署单元实例等的信息
2 monitor上调用cmdb配好的查询接口,把数据存下来并每分钟主动刷新

封装prometheus数据查询接口

描述您的需求
监控web服务需要查询prometheus数据查询接口,其中涉及promQL与指标转换,数据聚合功能

预期行为
1 整理常用的监控指标promQL
2 服务端对接prometheus的查询接口
3 开发数据聚合功能

[前端]监控管理-阀值管理

描述您的需求
实现监控管理-阀值管理功能

预期行为
通过该功能实现阀值管理

描述您考虑过的替代方案

附加

监控危险操作增加通用确认功能

描述您的需求
为监控危险操作增加通用确认功能

预期行为
在用户执行危险操作前,提供确认功能,减少风险

描述您考虑过的替代方案

附加

MySql&Redis监控视图开发

描述您的需求

MySql&Redis监控视图前端开发

预期行为

完成相关搜索功能及数据展示,优化相关组件逻辑

描述您考虑过的替代方案

暂无

附加

后端增加:
描述您的需求
需要两个常用指标视图来展示mysql和redis的运行状态

预期行为
1 整理mysql和redis的监控exporter指标
2 开发相应的视图功能来直观展示mysql和redis的运行状态

[日志监控]增加exporter日志项指标

描述您的需求
需要node_exporter在现有的metrics接口上增加日志处理过后的相关指标项

预期行为
1 定义日志告警指标项
1 修改node_exporter的metrics接口,增加日志指标项

prometheus告警动态配置方案

背景:
prometheus原生的告警配置是依赖于静态的yml配置文件,里面的配置格式对用户不友好,而且告警接收人是分开来配置在alertmanager组件上的,这种方式用来配置一次固定的阀值和接收人还行,但如果要配置多个或者修改则显得很困难,特地是它依赖于配置文件,需要用户熟悉配置的格式和用法。

目标:
用户可以直接在web界面上配置告警阀值和接收人,甚至告警方式。

行为:
有暂如下两种解决方案:
1 修改prometheus的源码使其支持配置保存在mysql持久化,动态地去读取数据库中的配置。
2 monitor对yml配置文件进行动态读写,然后调用prometheus的动态加载配置文件的接口。
先计划对方案2看一下其改造难度,因为方案2是不侵入式的,对prometheus的后续升级比较友好

图表组件'legend'显示优化

描述您的需求
当前图表组件‘legend’在数量较多情况下呈现效果不佳,该需要对此作出优化

预期行为
图例以更优美的形式展现

描述您考虑过的替代方案

附加

监控图表展示新增工具栏

描述您的需求

为监控图表增加工具栏,提供局部缩放及放大功能

预期行为

提供局部缩放及放大功能

描述您考虑过的替代方案

附加

JMX监控

描述您的需求
需要监控tomcat应用的性能指标,展示相关视图

预期行为
1 整理tomcat应用的性能视图指标
2 开发tomcat的视图展示

监控性能视图页面开发

描述您的需求

完成监控性能视图基础搜索及展示功能页面设计与开发

预期行为

在本页面可完成基础资源搜索及监控指标展示功能

描述您考虑过的替代方案

附加

图表无数据状态下显示优化

描述您的需求
当前图表无数据状态下显示的默认形式不够友好,优化之

预期行为
无数据情况下提示更加友好

描述您考虑过的替代方案

附加

图表渲染多次请求数据问题

描述您遇到的bug
图表渲染数据请求出现规律性多次调用接口问题

如何重现
必现

预期行为
按需请求数据

截图

附加

封装exporter注册注销的功能接口

描述您的需求
需要提供接口去注册和注销监控exporter,现在的方式是要调consul接口注册,并且需要调monitor接口去数据库里初始化exporter的相关信息,打算把consul的调用封装在monitor里(后续如果可以的话会把consul给替代掉)

预期行为
在monitor中增加exporter的注册接口,注销接口,能初始化exporter的endpoint和metric信息。

[日志监控]告警内容展示日志告警详细信息

描述您的需求
因为日志告警比较特殊,在展示相应的告警信息时需要把日志关键字等的相关信息展示出来

预期行为
1 修改未恢复告警展示接口,使在展示日志告警时特殊处理展示日志信息
2 修改历史告警接口,特殊处理日志告警内容信息

监控系统多语言版本支持实现

描述您的需求
为系统简单部分提供国际化实现

预期行为
系统简单部分实现国际化切换功能

描述您考虑过的替代方案

附加

prometheus监控插件文档整理

描述您的需求
统一目录结构, 增加对prometheus监控组件的介绍,功能描述, 技术实现等文档。

预期行为

描述您考虑过的替代方案

附加

[日志监控]增加日志配置CURD

描述您的需求
后端需要提供接口支持日志监控配置的CURD

预期行为
1 设计日志监控配置保存的表结构
2 开发CURD接口

告警配置CRUD接口

描述您的需求
需要配置告警阀值,保存到mysql,并最终写入到prometheus配置文件并重新加载配置使其生效

预期行为
1 封装prometheus配置文件的读写
2 设计告警配置的mysql表存储
3 开发告警配置curd接口

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.