English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SpringBoot Starter Actuator

SpringBoot Actuatorنعم هو مشروع فرعي من إطار Spring Boot. يتضمن العديد من الوظائف التي تساعدنا على مراقبة وإدارة تطبيقات Spring Boot. يحتوي على نقاط النهاية Actuator (مكان وجود الموارد). يمكننا استخدام HTTP و JMX إذا كنت ترغب في الحصول على وظائف جاهزة للإنتاج في تطبيقك، فعليك استخدام S Spring Boot Actuator.

وظائف Spring Boot Actuator

يملك Spring Boot Actuator ثلاثةالميزات الرئيسية:

نقاط النهاية /actuator/health مراقبة الحسابات

نقطة النهاية: مستقبل التحكم يجعلنا نستطيع مراقبة تطبيقنا والتواصل معه. يقدم Spring Boot العديد من نقاط النهاية المدمجة. يمكننا أيضًا إنشاء نقاط نهاية خاصة. يمكننا تمكين وتعطيل كل نقطة نهاية على حدة. يفضل معظم التطبيقات HTTP HTTP ، ويتم تحديد ID للنقطة النهائية و/actuator prefix

نقطة إلى URL. للأغراض مثل، /health يقدم معلومات صحية أساسية للتطبيق. يتم نقطة Actuator افتراضيًا إلى .

/actuator/healthMetrics : يقدم Spring Boot Actuator من خلالالكيلومتر إلى تقديم معايير الحجم. تم دمج الكيلومتر في Spring Boot. إنه مكتبة أدوات تستخدم لدعم إرسال معايير التطبيق من Spring. إنه يقدم للبيانات ذات نماذج البيانات المقياسيةو مقياس، أداة قياس، معدير، تحليل التوزيعمقياس المهام الطويلة

يقدم واجهة غير مرتبطة بالمزود. Audit: يقدم Spring Boot إطار مرن للتدقيق، والذي ينشر الأحداث إلىAuditEventRepository.

إذا كنت تقوم بتشغيل spring-security، فإنه سيقوم بنشر أحداث التحقق تلقائيًا.

تمكين Spring Boot Actuator يمكننا من خلال إدراج依赖ية في ملف pom.xml spring-boot-starter-actuator

لتمكين Actuator.
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
<version>2.2.2.RELEASE</version>

</dependency>

نقاط النهائية لـ Actuator

الجدول أدناه يصف النقاط النهائية المستخدمة على نطاق واسع.

معرف الاستخدامافتراضي
Actuatorيقدم نقطة انطلاق بناءً على وسائط الهيكلية لأجهزة النهاية الأخرى.صفحة الإكتشاف. يتطلب وجود Spring HATEOAS في مسار الكلاسات.true
auditeventsيفتح معلومات أحداث التدقيق الحالية للتطبيق.true
autoconfigيستخدم لعرض تقرير التكوين التلقائي، والذي يظهر جميع المرشحين للتكوين التلقائي وأسباب "تم" أو "لم يتم" تطبيقهم.true
beansيستخدم لعرض قائمة كاملة لجميع Spring Bean في التطبيق.true
configpropsيستخدم لعرض قائمة مرتبة لجميع@ConfigurationProperties.true
dumpيستخدم لتنفيذ تحويل سجلات الأنماط.true
envيستخدم ل公开 الخاصيات من ConfigurableEnvironment لـ Spring.true
flywayيستخدم لعرض جميع التحويلات الأساسية للأساسي Flyway.true
الحالةيستخدم لعرض معلومات حالة التطبيق.خطأ
infoيستخدم لعرض معلومات التطبيق العشوائية.خطأ
loggersيستخدم لعرض وتعديل تكوين سجلات التطبيق.true
liquibaseيستخدم لعرض جميع التحويلات الأساسية للأساسي Liquibase.true
metricsيستخدم لعرض معلومات مؤشرات التطبيق الحالية.true
mappingsيستخدم لعرض قائمة مرتبة لجميع مسارات @RequestMapping.true
shutdownيستخدم لسمح بإغلاق التطبيق بشكل طبيعي.true
traceيستخدم لعرض معلومات التتبع.true

للمخدمات Spring MVC، تم استخدام نقاط الوصول الإضافية التالية.

معرفشرحافتراضي
docsيستخدم لعرض الوثائق، بما في ذلك طلبات وردود مثال لنقاط الوصول Actuator.خطأ
heapdumpيستخدم لعرض ملفات التخزين الناتجة عن GZip للهيكل الذاكرة.true
jolokiaيستخدم لعرض JMX bean عبر HTTP (عندما يكون Jolokia في مسار الكلاسات).true
logfileيستخدم لعرض محتويات ملف السجلات.true
prometheusيستخدم ل公开 معايير يمكن لخادم Prometheus التقاطها. يتطلب تثبيت Prometheus.true

خصائص Spring Boot Actuator

يقدم Spring Boot أمانًا لجميع نقاط الوصول Actuator. يستخدم التحقق بناءً على النموذجالتحقق، يقدم هذا التحقق معرف المستخدم بصفتك مستخدمًا، وتقديم كلمة المروريمكننا أيضًا الوصول إلى نقاط الوصول المحدودة من Actuator من خلال تخصيص أمان التحقق الأساسي للنقاط النهائية. نحتاج إلى management.security.roles استبدال الخاصية تغطي هذا التكوين. على سبيل المثال:

management.security.enabled=true
management.security.roles=ADMIN
security.basic.enabled=true
security.user.name=admin
security.user.passowrd=admin

مثال على Spring Boot Actuator

لنفهم مفهوم Actuator من خلال مثال.

الخطوة 1: فتح Spring Initializr https://start.spring.io/ وأنتج Maven المشروع.

خطوة 2: تقديم النوعالاسم. قمنا بتقديم com.w3codebox.

خطوة 3: تقديم المنتج معرف. قمنا بتقديم spring-boot-actuator-example.

خطوة 4: . أضف التبعيات التالية: Spring Web،Spring Boot Starter Actuatorو مستعرض Spring Data Rest HAL.

خطوة 5: نقر. إنشاءعندما ننقر على زر "إنشاء"، سيقوم بضمان جميع المعايير المتعلقة بالمشروع. زر. ملف، وأسقطه في نظامنا المحلي.

خطوة 6: استخراج ملف Jar ونسخه إلى منطقة العمل لـ STS.

خطوة 7: إدخال مجلد المشروع.

ملف->إدخال->مشروع Maven موجود->استعراض->اختيار مجلد spring-boot-actuator-example->إتمام

يستغرق الدخول بعض الوقت. بعد إدخال المشروع، يمكننا رؤية مسار المشروع في جزء "مدير الموارد للصفحة".

خطوة 8: : أنشئ فئة Controller. لقد أنشأنا فئة DemoRestController كنوع من التحكم.

DemoRestController.java

package com.w3codebox;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class DemoRestController 
{
@GetMapping("/hello")
public String hello() 
{
return "Hello User!";
}
}

خطوة 9: فتح application.properties ملف، وإضافة الجملة التالية لتحديد تعطيل وظيفة الأمان لـ Actuator.

application.properties

management.security.enabled=false

خطوة 10: تشغيل SpringBootActuatorExampleApplication.java ملف.

خطوة 11: فتح متصفح الويب واستدعاء URL http: //localhost: 8080/actuator. يرجى تقديم الصفحة التالية:

{"_links":{"self":{"href":"http://localhost:8080/actuator","templated":false},"health":{"href":"http://localhost:8080/actuator/health","templated":false},"health-path":{"href":"http://localhost:8080/actuator/health/{*path}","templated":true},"info":{"href":"http://localhost:8080/actuator/info","templated":false}}}

بافتراض، يعمل التطبيق على منفذ 8080. بعد بدء Actuator، يمكننا رؤية قائمة جميع نقاط النهاية المفتوحة عبر HTTP.

لنستدعو URL http://localhost:8080/ لنستدعو الحالة نقطة النهاية. Actuator/الحالة. إنها تمثل حالة UP ، مما يعني أن التطبيق يعمل بشكل صحيح وأنه يعمل بشكل صحيح.

بالطبع، يمكننا استدعاء نقاط النهاية الأخرى لمساعدتنا في مراقبة وإدارة تطبيقات Spring Boot.