普罗米修斯使用es数据库

Adam Bien的Porcupine库使配置充当应用程序隔板的专用执行程序服务变得容易。 我创建了一个扩展,通过MicroProfile Metrics公开了豪猪统计信息。 我们还可以通过Prometheus和Grafana仪表板使仪器可见。

进行此扩展的原因是我们希望对Porcupine线程池的检测进行简单的集成(即插入)。 Grafana允许创建和共享仪表板,这些仪表板可以通过指标变量进行动态配置。 目标是创建类似于以下内容的仪表板,而无需进行大量手动配置:

为了实现这一点,您需要执行以下操作:

  • 公开Java EE豪猪统计信息,例如Prometheus格式
  • 在Prometheus实例中擦除Prometheus指标
  • 在Grafana仪表板中查询并显示Prometheus指标

要通过Prometheus公开Porcupine的统计信息,您可以采用多种方法以Prometheus格式发出指标。 我使用的是MicroProfile Metrics,为此我创建了一个小的扩展 ,可以将其添加到项目中:

<dependency><groupId>com.sebastian-daschner</groupId><artifactId>porcupine-metrics</artifactId><version>1.0</version>
</dependency>

该扩展公开了PorcupineMetrics bean,该bean每次应更新指标时都需要通过其updateMetrics()方法调用。 我们可以使用类似于以下内容的计时器:

@Singleton
@Startup
@ConcurrencyManagement(ConcurrencyManagementType.BEAN)
public class ExecutorStatisticsUpdater {@InjectPorcupineMetrics porcupineMetrics;@ResourceManagedScheduledExecutorService scheduler;@PostConstructpublic void init() {scheduler.scheduleAtFixedRate(porcupineMetrics::updateMetrics,0, 5, TimeUnit.SECONDS);}}

这将每5秒更新一次指标。 由于Porcupine的统计信息内部,当前需要例如通过计时器明确触发更新机制。 这将在Metrics端点中包括以下管道指标:

vendor:porcupine_pipelines_<pipeline-name>_active_thread_count 2
vendor:porcupine_pipelines_<pipeline-name>_core_pool_size 4
vendor:porcupine_pipelines_<pipeline-name>_current_thread_pool_size 4
vendor:porcupine_pipelines_<pipeline-name>_largest_thread_pool_size 4
vendor:porcupine_pipelines_<pipeline-name>_maximum_pool_size 8
vendor:porcupine_pipelines_<pipeline-name>_min_queue_capacity 60
vendor:porcupine_pipelines_<pipeline-name>_remaining_queue_capacity 100
vendor:porcupine_pipelines_<pipeline-name>_tasks_completed 3034
vendor:porcupine_pipelines_<pipeline-name>_tasks_rejected 30
vendor:porcupine_pipelines_<pipeline-name>_tasks_total 3036

除了使用MicroProfile指标或这个扩展,你可以同样通过其他机制使用普罗米修斯的Java API作为解释暴露的指标,例如这里 。

之后,我们通过Prometheus抓取暴露的指标,并创建Grafana仪表板,以通过变量为每个管道动态查询和显示统计信息。

首先,我已经共享了豪猪仪表板,类似于您在连接至Prometheus数据源的Grafana.com上的屏幕快照中看到的内容。

您可以看一下使用Porcupine Metrics的instrument-craft-shop项目。

如果您想知道为什么我使用豪猪而不是MicroProfile Fault Tolerance隔板,请观看以下有关隔板和Java EE反压的视频。

发现帖子有用吗? 订阅我的时事通讯,获取有关IT和Java的更多免费内容,技巧和窍门:

成功! 现在检查您的电子邮件以确认您的订阅。

翻译自: https://www.javacodegeeks.com/2018/10/instrumenting-porcupine-prometheus-grafana.html

普罗米修斯使用es数据库

普罗米修斯使用es数据库_用普罗米修斯和格拉法纳仪法来豪猪相关推荐

  1. 米家扫地机器人怎么加水_大神分析米家扫地机器人1T到底怎么样?优缺点评测,不看后悔!...

    米家扫地机器人1T真实体验评测揭秘!评测质量如何呢?米家1T扫地机器人还挺好的,质量非常的好,外观我比较的喜欢,这款米家1T性价比高,米家扫地机器人1T朋友介绍 抱着试试看的态度买的 效果还不错 刚开 ...

  2. 用普罗米修斯和格拉法纳乐器来刺豪猪

    Adam Bien的Porcupine库使配置用作应用程序隔板的专用执行程序服务变得容易. 我创建了一个扩展,通过MicroProfile Metrics公开了豪猪统计信息. 我们还可以通过Prome ...

  3. 普罗米修斯_用普罗米修斯和格拉法纳仪来豪猪

    普罗米修斯 Adam Bien的Porcupine库使配置用作应用程序隔板的专用执行程序服务变得容易. 我创建了一个扩展,通过MicroProfile Metrics公开了豪猪统计信息. 我们还可以通 ...

  4. 惠普服务器系统装好服务器黑屏,惠普装win7系统黑屏怎么解决_惠普装win7系统黑屏如何修复...

    随着品牌电脑的发展,许多用户都开始选择适合自己的品牌电脑,可是这样也不能保证到手的电脑不会出现故障,比如最近有用户自己的惠普电脑在安装win7系统时出现黑屏的现象,许多用户面对这种情况都不知所措,也不 ...

  5. python es 数据库_Python将json文件写入ES数据库的方法

    1.安装Elasticsearch数据库 PS:在此之前需首先安装Java SE环境 下载elasticsearch-6.5.2版本,进入/elasticsearch-6.5.2/bin目录,双击执行 ...

  6. linux es数据库 head,elasticsearch安装es-sql插件

    说明:本示例是在CentOs Linux7.4上运行,安装的es版本为6.8.0,对应es-sql版本6.8.0,es-head版本5.0.0,需要安装JDK 下载es安装包 wget https:/ ...

  7. 【elasticsearch】ES数据库重建索引 -- Reindex(数据迁移)

    1.应用背景: 1.当你的数据量过大,而你的索引最初创建的分片数量不足,导致数据入库较慢的情况,此时需要扩大分片的数量,此时可以尝试使用Reindex. 2.当数据的mapping需要修改,但是大量的 ...

  8. ACCESS数据库C#操作类(SQLHELPER修改版)——转自网上

    ACCESS数据库C#操作类(SQLHELPER修改版) 这个是针对ACCESS数据库操作的类,同样也是从SQLHELPER提取而来,分页程序的调用可以参考MSSQL那个类的调用,差不多的,只是提取所 ...

  9. 用SpringBoot整合ES数据库基础

    一.SpringBoot整合ES数据库 1.配置原生的依赖. <properties><java.version>1.8</java.version><!-- ...

最新文章

  1. 二极管7种应用电路详解之六
  2. docker简易实践
  3. OLTP(on-line transaction processing)与OLAP(On-Line Analytical Processing)
  4. Qt程序单次启动(QSingleApplication类)
  5. ECCV 2020 | 超快的车道线检测
  6. 树莓派研发笔记三——搭建服务器和实践任务
  7. 【codevs1285】【BZOJ1208】宠物收养所,splay练习
  8. 云原生就一定安全吗?
  9. 什么决定了计算机的寻址能力_有问有答:寻址能力与CPU的位宽有关系吗?
  10. TOP100summit:【分享实录-猫眼电影】业务纵横捭阖背后的技术拆分与融合
  11. It seems that scikit-learn has not been built correctly
  12. [转载] 晓说——第1期:揭秘游戏规则奥斯卡走下“神坛“
  13. MIPI DSI协议
  14. Multisim基础 有极性的电容 添加元件的位置
  15. 《机器学习》读书笔记,第二章概念学习和一般到特殊序
  16. Flink入门——DataSet Api编程指南
  17. Iris植物分类数据可视化(散点图)(python-nvd3)
  18. springboot配置文件不生效的原因
  19. 【预测模型】基于布谷鸟算法优化BP神经网络实现数据预测matlab代码
  20. 小程序直播如何做好直播带货

热门文章

  1. Mynavi Programming Contest 2021(AtCoder Beginner Contest 201)题解
  2. 8.10模拟:贪心、最优化思路
  3. P4552-[Poetize6]IncDec Sequence【差分】
  4. jzoj3301-[集训队互测2013]家族【并查集,暴力】
  5. 2021“MINIEYE杯”中国大学生算法设计超级联赛(1)zoto(二维数颜色)
  6. SPOJ1812 LCS2
  7. Java IO: Reader和Writer
  8. 浅析SAX,DOM,JAXP,JDOM与DOM4J之间的关系
  9. JSON Web Token (JWT),服务端信息传输安全解决方案
  10. 【程序员】保持一颗虚心好学的心态去敲代码