Menggabungkan ID Korelasi ke dalam Go Log dengan Pakej Slog
Apabila menggunakan pakej Go Slog untuk pengelogan JSON, anda mungkin menghadapi keperluan untuk log jejak yang berkaitan dengan permintaan khusus menggunakan korelasi atau ID jejak. Begini cara untuk mencapainya:
Masalahnya terletak pada kekurangan cara yang mudah untuk mengkonfigurasi pilihan ID surih dalam pakej Slog. Penyelesaian yang dicadangkan adalah untuk mendapatkan kembali ID jejak daripada konteks dan menjana pembalak baharu dengannya. Logger baharu ini kemudiannya boleh digunakan untuk menambahkan ID surih pada semua mesej berikutnya.
Untuk melaksanakan penyelesaian ini, ikut langkah berikut:
Dapatkan kembali ID surih daripada konteks:
<code class="go">traceId := ctx.Value("traceId")</code>
Buat pembalak baharu dengan ID surih:
<code class="go">newLogger := logger.With("traceId", traceId)</code>
Gunakan pembalak baharu untuk log mesej:
<code class="go">// use newLogger that will add traceId to all messages</code>
Pendekatan ini membolehkan anda menjejak log yang berkaitan dengan permintaan tertentu dengan menambahkan ID surih pada semua mesej yang dijana menggunakan pembalak baharu.
Atas ialah kandungan terperinci Bagaimana untuk Menambah ID Korelasi pada Log Pergi Anda dengan Pakej Slog?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!