2015-10-28 10 views
9

मेरे पास मौजूदा स्प्रिंग एमवीसी वेब एप्लिकेशन है। अब मैं सिर्फ वसंत-बूट स्टार्टर-एक्ट्यूएटर में मौजूद स्वास्थ्य जांच सुविधा का उपयोग करना चाहता हूं।मौजूदा वेबएप पर स्प्रिंग बूट स्वास्थ्य जांच

मैं वसंत बूट के लिए नया हूं, इसलिए सुनिश्चित नहीं है कि मुझे अपनी पूरी परियोजना को स्वास्थ्य जांच के लिए वसंत बूट प्रोजेक्ट में परिवर्तित करने की आवश्यकता है या नहीं। क्या मैं केवल निर्भरता शामिल कर सकता हूं और किसी भी तरह से केवल आवश्यक सुविधा को सक्षम कर सकता हूं?

उत्तर

11

मैंने इसे स्वयं समझ लिया। spring-boot-starter-actuator के बजाय मैं spring-boot-actuator समेत हूं। और मुझे @SpringBootApplication का उपयोग कर एप्लिकेशन को प्रारंभ करने की आवश्यकता नहीं है। इसके बजाय अब मैं आवश्यक ऑटो-कॉन्फ़िगरेशन क्लास आयात करता हूं। config वर्ग अब इस

@Configuration 
@ComponentScan(basePackages = { "org.example" }) 
@Import({MyApplicationContext.class, EndpointWebMvcAutoConfiguration.class, 
    ManagementServerPropertiesAutoConfiguration.class, EndpointAutoConfiguration.class, 
    HealthIndicatorAutoConfiguration.class}) 
@PropertySource("classpath:app.properties") 
@EnableWebMvc 
public class MyWebApplicationContext { 
... 
} 

EndpointWebMvcAutoConfiguration तरह लग रहा है तो ManagementServerProperties पर निर्भर करता है इसलिए यह आयात करने के लिए किया था। यह मेरे लिए न्यूनतम न्यूनतम विन्यास प्रतीत होता है। अगर कोई बेहतर विकल्प है तो

+0

_/metrics_ endpoint – Angad

+1

पर jvm/threads मेट्रिक्स उपलब्ध कराने के लिए आप 'PublicMetricsAutoConfiguration.class' भी आयात कर सकते हैं वसंत-बूट-एडमिन का उपयोग करके ऐसे गैर वसंत-बूट एप्लिकेशन की निगरानी कैसे करें? – user34567

+0

यह मेरे लिए काम करता है, थैक्स! –

2

सबसे पहले मुझे यह बताना है कि sidgate's answer सही है। लेकिन शायद किसी को सभी मेट्रिक्स को सक्षम करने या मेट्रिक्स के विभिन्न सेट को चुनने की आवश्यकता है।

तुम अब भी सभी मैट्रिक्स

@org.springframework.context.annotation.Configuration 
@org.springframework.boot.autoconfigure.EnableAutoConfiguration 
@org.springframework.boot.actuate.autoconfigure.ManagementContextConfiguration 
public class MyApplicationContext { 
} 

जहां @EnableAutoConfiguration

org.springframework.boot.actuate.autoconfigure.AuditAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.CacheStatisticsAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.CrshAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.EndpointAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.EndpointMBeanExportAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.EndpointWebMvcAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.HealthIndicatorAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.InfoContributorAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.JolokiaAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.ManagementServerPropertiesAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.ManagementWebSecurityAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.MetricFilterAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.MetricRepositoryAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.MetricsDropwizardAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.MetricsChannelAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.MetricExportAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.PublicMetricsAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.TraceRepositoryAutoConfiguration, 
org.springframework.boot.actuate.autoconfigure.TraceWebFilterAutoConfiguration.class 

और @ManagementContextConfiguration

को सक्षम करने के लिए spring-boot-actuator

के बजाय spring-boot-starter-actuator उपयोग कर सकते हैं

org.springframework.boot.actuate.autoconfigure.EndpointWebMvcManagementContextConfiguration, org.springframework.boot.actuate.autoconfigure.EndpointWebMvcHypermediaManagementContextConfiguration 

स्प्रिंग बूट विन्यास

सक्षम बनाता है कुछ प्रबंधन अंतिमबिंदुओं आप अंत बिंदु के कॉन्फ़िगरेशन आयात कर सकता है सीधे रूप में sidgate के पहले से ही समझाया

@Configuration 
@Import({ 
org.springframework.boot.actuate.autoconfigure.AuditAutoConfiguration.class, 
org.springframework.boot.actuate.autoconfigure.CacheStatisticsAutoConfiguration.class, 

... 

}) 
public class MyApplicationContext { 
} 

पी.एस. को सक्षम करने के लिए बेशक स्प्रिंग एप्लिकेशन संदर्भ और गुण प्रारंभिकरण हमेशा एनोटेशन या एक्सएमएल कॉन्फ़िगरेशन के माध्यम से कॉन्फ़िगर किया जा सकता है।

संबंधित मुद्दे