使用WildFly 9和Jolokia监视DevOps样式

DevOps是当今最热门的话题之一。 而且围绕它的主题范围很广,因此很难真正找到完整的描述或涵盖体面粒度的所有内容。 可以肯定的一件事:最重要的部分之一是提供正确的度量标准和信息以监视应用程序。

Java EE和JMX

视觉虚拟机

监视Java EE服务器的标准方法是JMX。 使用JConsole,VisualVM或Oracle Mission-Control Suite等工具可以实现此目的。 这种方法有很多优点,并且大多数运营团队在过去实际上经常使用这种方法。 但这并不完全适用于DevOps方式。 它是一个单独的工具,在没有安装所有工具和操作系统(Nagios等)的情况下,DevOps团队没有一种好的方法来实际编写脚本。 如今,使用http端点公开配置和运行时信息感觉更加自然,而且使用起来也更加容易。

Jolokia –使用JSON的JMX到HTTP

对于JMX,一种非常方便的方法是使用Jolokia 。 Jolokia是一个JMX-HTTP桥,可替代JSR-160连接器。 这是一种基于代理的方法,支持许多平台。 除了基本的JMX操作外,它还通过独特的功能(例如批量请求和细粒度的安全策略)增强了JMX远程处理功能。 最近,它与许多JBoss项目捆绑在一起(例如WIldFly-Camel子系统),并且可以轻松地在自己的应用程序中使用。

装有Jolokia的简单Java EE 7应用

只需创建一个简单的Java EE 7项目(也许使用Adam Bien的maven工件 )并向其中添加一个依赖项即可:

<dependency><groupId>org.jolokia</groupId><artifactId>jolokia-core</artifactId><version>1.3.1</version></dependency>

下一步是在web.xml中配置Jolokia AgentServlet并将其映射到适合您需求的模式:

<servlet><servlet-name>jolokia-agent</servlet-name><servlet-class>org.jolokia.http.AgentServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>jolokia-agent</servlet-name><url-pattern>/metrics/*</url-pattern></servlet-mapping>

照常构建您的应用程序,并根据需要访问相关指标。 完整的。 Jolokia参考资料解释了不同的操作和类型 。

将您的应用程序部署到WildFly 9

将WildFly 9下载并解压缩到您选择的文件夹中。 使用bin / standalone.xml启动。

指标示例

虽然您可以访问服务器中定义的每个JMX MBean,但这里是一系列指标,这些指标可以帮助您立即使用。

堆内存使用情况:

  • http:// localhost:8080 / javaee-devops / metrics / read / java.lang:type = Memory / HeapMemoryUsage
{"request": {"mbean": "java.lang:type=Memory","attribute": "HeapMemoryUsage","type": "read"},"value": {"init": 67108864,"committed": 241696768,"max": 477626368,"used": 141716336},"timestamp": 1437392335,"status": 200
}

服务器环境概述:

  • http:// localhost:8080 / javaee-devops / metrics / read / jboss.as:core-service = server-environment

您不仅可以读取JMX属性,还可以执行操作,例如访问server.log文件的最新10行:

  • http:// localhost:8080 / javaee-devops / metrics / exec / jboss.as.expr:subsystem = logging / readLogFile / server.log / UTF-8 / 10/0 / true

wildfly读取日志文件

保护端点

如您所料,可以像访问应用程序一样访问AgentServlet。 为了防止这种情况,您必须对其进行保护。 好消息是,使用WildFly中的基本身份验证和应用程序领域,这是可能的。 第一步是将用户添加到应用程序领域。 这可以通过bin / add-user.sh | bat脚本来完成。 确保添加角色“ SuperUser”。 现在将以下内容添加到您的web.xml中:

<security-constraint><display-name>Metrics Pages</display-name><web-resource-collection><web-resource-name>Protected Metrics Site</web-resource-name><description>Protected Metrics Site</description><url-pattern>/metrics/*</url-pattern></web-resource-collection><auth-constraint><description/><role-name>SuperUser</role-name></auth-constraint><user-data-constraint><transport-guarantee>NONE</transport-guarantee></user-data-constraint></security-constraint><login-config><auth-method>BASIC</auth-method><realm-name>ApplicationRealm</realm-name></login-config><security-role> <role-name>SuperUser</role-name> </security-role>

这里要做的最后一件事是向WEB-INF /添加一个名为jboss-web.xml的文件。 这将仅包含三行:

<jboss-web><security-domain>other</security-domain>
</jboss-web>

现在,无论何时尝试访问度量标准端点,服务器都会向您发出基本身份验证请求。

寻找更多?

这只是基于WildFly公开的标准JMX指标的一个简单示例。 您可以肯定地注册自己的MBean或通过将单个调用聚合为一个来扩展它。 另一个选择是,将hawt.io用作可立即使用的可扩展UI,该UI已经为WildFly和许多其他子系统提供了各种指标。 但这是非常简单的方法。 Jolokia的下一个主要版本可能会提供更多功能,使DevOps的使用更加便捷。

翻译自: https://www.javacodegeeks.com/2015/07/monitoring-devops-style-with-wildfly-9-and-jolokia.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358507.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深刻理解Servlet运行机制和生命周期

servlet 运行在servlet 容器中,其生命周期由容器来管理。servlet 的生命周期通过 javax.servlet.Servlet接口中的init(),servce(),和destory();方法表示。1&#xff0c;加载和实例化servlet 容器负责加载和实例化servlet 当容器启动或在容器中检测到需要这个servlet来响应一个请…

太原师范学院计算机二级报名,山西计算机等级考试报名地点

2010年下半年全国计算机等级考试时间是2010年9月18日至22日&#xff0c;第一天上午考笔试&#xff0c;上机考试从笔试的当天下午开始(一级从上午开始)。2010年下半年全国计算机等级考试报名时间已经开始&#xff01;如果您是在校生&#xff0c;去学校相关报名处报名最方便&…

教你玩转CSS 图像透明/不透明

目录 图像的透明度 - 悬停效果 透明的盒子中的文字 使用CSS很容易创建透明的图像。 注意:CSS Opacity属性是W3C的CSS3建议的一部分。 img{opacity:0.4;filter:alpha(opacity=40); /* IE8 及其更早版本 */}img:hover{opacity:1.0;filter:alpha(opacity=100); /* IE8 及其更…

QQ聊天记录恢复、迁移教程(改变默认存储位置、个人文件夹保存位置)

方法一&#xff1a;适用于将原QQ聊天记录存储位置迁移至非系统盘 1、 在想要存储的区域新建文件夹&#xff0c;如&#xff1a; E:\099 Chat Data\Tencent Files\。 2、 打开电脑QQ&#xff0c;设置——文件管理。 3、 点击浏览&#xff0c;选择099 Chat Data下的Tencent Files…

进程的逻辑设备如何与一个物理设备建立对应的关系?

逻辑设备与物理设备的联系通常是由操作系统命令语言中提供的信息实现的。 1、 软通道实现设备独立性。使用高级语言提供的指派语句&#xff0c;通过指派一个逻辑设备名来定义一个设备或文件。如fd open(“/dev/lp”,mode) 2、 通过作业说明书实现设备独立性。 3、 &#xf…

教你玩转CSS 精灵图/雪碧图

目录 精灵图/雪碧图 图像拼合 - 简单实例 图像拼合 - 创建一个导航列表 图像拼合s - 悬停效果 精灵图/雪碧图 精灵图/雪碧图就是图像拼合 也就是单个图像的集合。 有许多图像的网页可能需要很长的时间来加载和生成多个服务器的请求。 使用图像拼合会降低服务器的请求数量…

html type=text/css,type=text/css 有什么用啊 ?

用处是告诉浏览器&#xff0c;这段标签内包含的内容是css或text&#xff0c;也就是说如果某种浏览器(特别是wap等手机浏览器械、)不能识别css的&#xff0c;会将代码认为text&#xff0c;从而不显示也不报错。type->类型,这里是style的属性text/css ->文本/css,即css文本…

记一次应急响应到溯源入侵者

文本转载于&#xff1a;https://www.freebuf.com/articles/web/289450.html 1. 前言今年的某月某日&#xff0c;系统监测到客户的一企业官网www.******.com遭到了网页篡改&#xff0c;经过人工确认将浏览器的UA替换为百度UA后访问网站&#xff0c;此时网站链接自动跳转至赌博类…

系统测试集成测试单元测试_单元和集成测试的代码覆盖率

系统测试集成测试单元测试我最近在一个宠物项目中着手构建自动化的UI&#xff08;集成&#xff09;测试以及普通的单元测试。 我想将所有这些集成到我的Maven构建中&#xff0c;并提供代码覆盖率报告&#xff0c;以便我可以了解测试覆盖率不足的区域。 我不仅发布了项目的源代码…

教你玩转CSS 媒体类型

目录 CSS 媒体类型 媒体类型 @media 规则 其他媒体类型 CSS 媒体类型 媒体类型允许你指定文件将如何在不同媒体呈现。该文件可以以不同的方式显示在屏幕上,在纸张上,或听觉浏览器等等。 媒体类型 一些 CSS 属性只设计了某些媒体。例如 voice-family 属性是专为听觉用户…

计算机盘符无法重命名,win8磁盘分区无法重命名怎么办

有些用户在使用Win8系统的过程中遇到C盘分区重命名的时候发生“无法修改名称”,那么win8磁盘分区无法重命名怎么办呢?下文学习啦小编就分享了解决win8磁盘分区无法重命名的方法&#xff0c;希望对大家有所帮助。win8磁盘分区无法重命名解决方法1、 按“WinR”输入“regedit”单…

泽泽计算机科技,《计算机与信息技术》大学技能学习丛书.pdf

计算机与信息技术魏巍摇周霖摇主编摇图书在版编目(悦陨孕)数据摇计算机与信息技术辕魏巍&#xff0c;周霖主编郾—北京&#xff1a;国防摇工业出版社&#xff0c;圆园园猿援苑摇(圆员世纪高新科技专业英语阅读系列)摇陨杂月晕苑原员员愿原园猿员员远原曾摇 郾计摇 郾 魏援援援 …

记一次CNVD通用漏洞审计

本文转载于&#xff1a;https://www.freebuf.com/articles/web/290697.html 0x01 前言写这篇文章的缘由其实还挺魔幻的&#xff0c;起因是在一次实战渗透时通过弱口令拿下一个低权限用户成功进入后台&#xff0c;在后台寻找功能点通过抓包分析&#xff0c;定位到目标系统后台存…

教你玩转CSS 属性选择器

目录 具有特定属性的HTML元素样式 属性选择器 属性和值选择器 属性和值的选择器 - 多值 表单样式 CSS 属性 选择器 具有特定属性的HTML元素样式 具有特定属性的HTML元素样式不仅仅是class和id。 注意:IE7和IE8需声明!DOCTYPE才支持属性选择器!IE6和更低的版本不支持属…

本地CDI限定词:@Any和@Default

让我们看一下CDI中的开箱即用的限定词 CDI规范声明了三个限定符– Any&#xff0c; Default&#xff0c; New Any &#xff1a;将其视为无所不在的限定词。 它在那里&#xff0c;即使不是;-) Default &#xff1a;顾名思义&#xff0c;当没有其他限定符是特定的时&#xff…

Oracle 关于事物的描述

事物在Oracle中的4种状态&#xff1a; commit--提交 rollback--全部回滚 savepoint name;--定义一个回滚到这里的点&#xff1a;例如&#xff1a;savepoint a; rollback to [savepoint]name--回滚到指定的点 例如 rollback to a;就回滚到a这个地方 例子&#xff1a; ----------…

简单CSS 总结

目录 CSS 总结 你已经学习了CSS,下一步学习什么呢? CSS 总结 本教程已向你讲解了如何创建样式表来同时控制多重页面的样式和布局。 你已经学会如何使用 CSS 来添加背景、格式化文本、以及格式化边框&#xff0c;并定义元素的填充和边距。 同时&#xff0c;你也学会了如何定…

计算机管理里边如何分盘,如何给电脑分盘【设置门径】

很多小伙伴都遇到过如何给电脑分盘的困惑吧&#xff0c;一些朋友看过网上零散的如何给电脑分盘的处理方法&#xff0c;并没有完完全全明白如何给电脑分盘是如何解决的&#xff0c;今天小编准备了简单的解决办法&#xff0c;只需要按照1&#xff1a;首先我们找到电脑里面的此电脑…

(九十三)蓝牙的基本使用

蓝牙在GameKit框架中实现&#xff0c;可以实现文件传递和游戏通信等&#xff0c;蓝牙的缺点是不能得到文件传输的进度&#xff0c;因此不宜传输大文件。 使用蓝牙的一般步骤如下&#xff1a; ①创建蓝牙设备拾取器&#xff0c;类似于图片拾取器&#xff0c;通过代理方法获取拾取…

电脑常识——host文件修改(屏蔽网站或解开屏蔽)

1. 什么是host文件&#xff1a; Hosts文件主要作用是定义IP地址和主机名的映射关系&#xff0c;是一个映射IP地址和主机名的规定。可以用文本文件打开&#xff01;当用户在浏览器中输入一个需要登录的网址时&#xff0c;系统会首先自动从Hosts文件中寻找对应的IP地址&#xff…