Rumah > Java > javaTutorial > teks badan

Pemantauan dan pengelogan seni bina perkhidmatan mikro Java

WBOY
Lepaskan: 2024-06-03 17:02:01
asal
1140 orang telah melayarinya

Pemantauan seni bina perkhidmatan mikro melibatkan pengumpulan penunjuk termasuk Prometheus, Grafana dan Zipkin rangka kerja yang biasa digunakan termasuk Log4j 2, Slf4j dan Logback. Contoh praktikal khusus termasuk: menggunakan Prometheus dan Grafana untuk memantau bilangan permintaan, menggunakan Zipkin untuk menjejaki permintaan perkhidmatan, menggunakan Log4j 2 untuk merekod penerimaan permintaan dan menggunakan Slf4j untuk pengelogan.

Pemantauan dan pengelogan seni bina perkhidmatan mikro Java

Memantau dan mengelog dalam seni bina perkhidmatan mikro Java

Peningkatan seni bina perkhidmatan mikro telah membawa cabaran unik kepada pemantauan dan pengelogan aplikasi. Aplikasi yang diedarkan mengandungi banyak perkhidmatan bebas dan gandingan longgar yang memerlukan pemantauan dan pengelogan berterusan untuk memastikan kebolehpercayaan dan prestasinya.

Panduan ini akan memperkenalkan amalan terbaik untuk memantau dan mengelog dalam seni bina perkhidmatan mikro Java dan memberikan contoh praktikal.

Pemantauan

Pemantauan seni bina perkhidmatan mikro melibatkan pengumpulan dan analisis metrik tentang setiap komponen perkhidmatan dan infrastruktur. Alat pemantauan biasa termasuk:

  • Prometheus: Sistem pemantauan sumber terbuka untuk mengumpul dan menyimpan data siri masa.
  • Grafana: Alat papan pemuka sumber terbuka untuk visualisasi data dan papan pemuka.
  • Zipkin: Sistem pengesanan sumber terbuka untuk mengesan dan menganalisis sistem teragih.

Kes praktikal:

Memantau perkhidmatan mikro Java menggunakan Prometheus dan Grafana:

dependencies {
    implementation 'io.micrometer:micrometer-registry-prometheus:1.8.1'
    implementation 'io.prometheus:simpleclient_hotspot:0.11.0'
}
Salin selepas log masuk
Counter requestCounter = Counter
    .builder("web.requests")
    .description("Number of HTTP requests")
    .register(Metrics.globalRegistry);
Salin selepas log masuk

Menjejaki perkhidmatan mikro Java menggunakan Zipkin:

dependencies {
    implementation 'io.github.openzipkin.brave:brave:5.14.7'
    implementation 'io.zipkin.brave:brave-http:5.14.7'
    implementation 'io.zipkin.brave:brave-opentracing:5.14.7'
}
Salin selepas log masuk
Span span = tracer.newTrace().start();
HttpClient client = HttpClient.create().newBuilder()
    .tracers(new ZipkinBraveTracer()).build();
Salin selepas log masuk

mencatat masalah, menyahlogi perkhidmatan

audit yang berguna

menyahlogi

Ia penting. Rangka kerja pengelogan biasa termasuk:
  • Log4j 2:
  • Rangka kerja pengelogan berkuasa yang menyokong berbilang format log dan destinasi output.
  • Slf4j:
  • Fasad pembalakan ringkas untuk pembalakan yang membolehkan pertukaran mudah antara rangka kerja pembalakan yang berbeza.
  • Log balik:
  • Rangka kerja pengelogan yang fleksibel dan boleh dikonfigurasikan direka untuk meningkatkan prestasi.

Kes praktikal:

Gunakan Log4j 2 untuk merakam perkhidmatan mikro Java:

dependencies {
    implementation 'org.apache.logging.log4j:log4j-api:2.18.0'
    implementation 'org.apache.logging.log4j:log4j-core:2.18.0'
}
Salin selepas log masuk
private final Logger logger = LogManager.getLogger(MyService.class);

logger.info("Received request for {}", request);
Salin selepas log masuk

Gunakan Slf4j untuk merakam perkhidmatan mikro Java: 🎜
dependencies {
    implementation 'org.slf4j:slf4j-api:2.0.0'
}
Salin selepas log masuk
private static final Logger logger = LoggerFactory.getLogger(MyService.class);

logger.info("Received request for {}", request);
Salin selepas log masuk

Atas ialah kandungan terperinci Pemantauan dan pengelogan seni bina perkhidmatan mikro Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!