-4

I am exploring about jmx. I read about jmx I got JMX is using for monitoring application or device. For monitoring spring boot Application I got two option one is Spring Boot Actuator and Spring Boot Admin. I refer following link for Spring Boot Admin.

http://codecentric.github.io/spring-boot-admin/1.5.7/#spring-cloud-discovery-static-config

I have lot of confusion about Spring boot Admin.

  1. what is it exactly?
  2. why we are using?
  3. monitoring end point means what exactly doing?
  4. Is it really need in production environment?

I am new in spring environment. Can anyone help me to clarify my confusions please?

SpringUser
  • 1,351
  • 4
  • 29
  • 59

3 Answers3

4

A short summary:

JMX is a technology that is suitable for monitoring and managing applications. However, it still requires you to write managed beans to set up the monitoring or the managing of your applications.

Spring boot actuator is a library that can be used with Spring boot applications and which will provide:

  • A framework for creating your own metrics using CounterService, GaugeService, ... (Spring boot 1.x) or Micrometer (Spring boot 2.x)
  • Automatic generation of certain endpoints (health of the application, metrics, ...) over certain protocols (HTTP/REST or JMX)

Spring boot admin on the other hand is a web application/graphical user interface that works on top of Spring boot actuator to manage Spring boot applications. It also integrates with Spring cloud to automatically discover Spring boot applications.

So, all three mentioned technologies do a different thing, but are often used together to monitor Spring boot applications.

Is it really necessary in a production environment? That's up to you to decide, and that's purely opinion-based and not suitable to answer on Stack Overflow.

g00glen00b
  • 41,995
  • 13
  • 95
  • 133
1

I just summarize my google search about your question:

1. what is it exactly?

Spring Boot Admin is a application to manage and monitor your Spring Boot Applications. The applications register with our Spring Boot Admin Client (via HTTP) or are discovered using Spring Cloud (e.g. Eureka). The UI is just an AngularJs application on top of the Spring Boot Actuator endpoints.

2. why we are using? 3.monitoring end point means what exactly doing? 4.Is it really need in production environment?

In essence, Actuator brings production-ready features to our application.

Monitoring our app, gathering metrics, understanding traffic or the state of our database becomes trivial with this dependency.

The main benefit of this library is that we can get production grade tools without having to actually implement these features ourselves.

Actuator is mainly used to expose operational information about the running application – health, metrics, info, dump, env, etc. It uses HTTP endpoints or JMX beans to enable us to interact with it.

Once this dependency is on the classpath several endpoints are available for us out of the box. As with most Spring modules, we can easily configure or extend it in many ways.

Patrick
  • 12,336
  • 15
  • 73
  • 115
0

Basically, Spring boot admin is used for health checks of our microservices.Lets assume you have more number of microservices, and deployed in a server...if any of the service wents down..how the developer get intimated with that?..thats where spring boot admin plays a role to initimate the developer about the service downtime and alert whenever any of the microservices went down..it can be done by spring boot admin and remaind notifier