الميزة الرئيسية لـ Spring Boot هي AutoconFig (التكوين التلقائي) ، وبالنسبة للمستخدمين ، فهي مجرد مبتدئين مختلفون.
يوفر SPRING Boot-Actuator أيضًا بداية ، تم تكوينها تلقائيًا بالنسبة لنا. فيما يتعلق بالاستخدام ، نحتاج فقط إلى إضافة بداية إلى تبعياتنا ثم بدء المشروع.
<Rependency> <roupiD> org.springframework.boot </rougiD> <intifactid> spring-boot-starter-actuator </shintifactid> </sependency>
نقطة النهاية شائعة الاستخدام
يوفر Fring Boot-Actuator العديد من نقاط النهاية المفيدة ويوفر مراقبة مختلفة لتطبيقات Boot Spring. دعنا نتحدث عن نقاط النهاية الشائعة الاستخدام:
/الحالة الصحية للتطبيق الصحي
/configprops الحصول على معلومات التكوين للتطبيق ، لأن Boot Spring قد يكون حزمة جرة منفصلة عند نشرها ، وقد يتم تضمين ملف التكوين. عندما نحتاج إلى التحقق من ملف التكوين ، يمكننا استخدام ConfigPropSendPoint لمعرفة ما إذا كانت بعض التكوينات صحيحة.
/تتبع أحدث معلومات طلب HTTP
HealthEndPoint
عندما نقوم بزيارة http: // localhost: 8088/Health ، يمكننا أن نرى أن HealthEndPoint يوفر لنا نتائج المراقبة الافتراضية ، بما في ذلك اكتشاف القرص والكشف عن قاعدة البيانات.
{"الحالة": "UP" ، "Diskspace": {"الحالة": "UP" ، "Total": 39845875904 ، "Free": 315106918400 ، "Threshold": 10485760} ، "db": {"status:" up "،" في الواقع ، بالنظر إلى رمز مصدر التمثيل الصوتي للبلاغ ، ستجد أن المعلومات المقدمة من HealthEndPoint لا تقتصر على ذلك. تحت org.springframework.boot.actuate.health package ، ستجد ElasticsearchHealthIndicator ، RedishealthIndicator ، RabbithealthIndicator ، إلخ.
وهذا يعني أن HealthEndPoint يوفر أيضًا معلومات صحية لمكونات مثل ES و Redis.
مؤشر مخصص تمديد HealthEndPoint
بالنظر إلى الكود المصدري ، يتم تنفيذ المعلومات الصحية للقرص وقواعد البيانات بواسطة DiskSpaceHealthIndicator و DataSourceHealthIndicator. عندما نراقب بعض مكوناتنا المخصصة ، يمكننا أيضًا تنفيذ مؤشر:
يقوم مستخدم فئة COMPONENTPERCEPARCERPARBERCURE بتنفيذ HealthIndicator {/** * مراقبة المستخدم الوصول: http: // localhost: 8088/Health * * @RETURN Monitor Health */ @Override Health Health () "Up"). Up (). Build () ؛ }}في هذا الوقت ، نزور مرة أخرى: http: // localhost: 8088/Health النتيجة التي تم إرجاعها في هذا الوقت هي كما يلي ، بما في ذلك معلوماتنا الصحية المخصصة.
{"الحالة": "UP" ، "user": {"الحالة": "UP" ، "UserCount": 10 ، "Userstatus": "Up" ، "Diskspace": {"status": "up" ، "Total": "Total": "10485760}} "الحالة": "Up" ، "Database": "MySQL" ، "Hello": 1}}نقطة نهاية مخصصة
في الواقع ، بالإضافة إلى تمديد HealthEndPoint لإضافة بعض الاختبارات الصحية ، يمكننا أيضًا تخصيص بعض نقاط النهاية لتوفير بعض المعلومات أثناء تشغيل البرنامج:
ConfigurationPublic Class EndPointAutoconFig {bean public point <map <string ، object >> customEndPoint () {return new SystemEndPoint () ؛ }}@configurationProperties (prefix = "EndPoints.CustomSystem") SystemEndPoint ExtructionEndPoint AbstractEndPoint <map ، object >> {public SystemEndPoint () {super ("customsystem") ؛ } Override Public Map <String ، Object> invoke () {map <string ، Object> result = new HashMap <> () ؛ الخريطة <string ، string> map = system.getenv () ؛ النتيجة. result.put ("computername" ، map.get ("computername")) ؛ result.put ("userDomain" ، map.get ("userDomain")) ؛ نتيجة العودة }}تفضل بزيارة http: // localhost: 8088/customsystem لعرض نقطة النهاية المخصصة لدينا ، والنتيجة هي كما يلي:
{"username": "xxx" ، "userDomain": "Desktop-6ean1h4" ، "Computername": "Desktop-6ean1h4"}بعد أن نضيف مشغلًا إلى تطبيق Boot Spring الخاص بنا ، تعيد الواجهة الصحية المتوقعة أن النتيجة يجب أن تكون مثل ما يلي:
{الحالة: "Up" ، Diskspace: {الحالة: "UP" ، المجموع: 250182889472 ، مجاني: 31169568768 ، العتبة: 10485760} ، DB: {الحالة: "UP" ، Database: "H2" ، مرحبًا: 1}}}}إذا تم إرجاعها للتو
{الحالة: "UP"}تحتاج إلى إضافة تكوين جديد للتطبيق. أخذ ملف تكوين YML كمثال ، تحتاج إلى إضافة التكوين التالي:
الإدارة: الأمان: ممكّن: FalseEndpoints: الصحة: حساس: خطأ
management.endpoint.health.show details = دائما
لخص
ما سبق هو فحص ومراقبة مشروع تنفيذ Springboot الذي أدخله المحرر. آمل أن يكون ذلك مفيدًا للجميع. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر على الجميع في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!