Baca kemunculan yang direkomendasikan
Instal LogBrew CLI dan jalankanlogbrew login. Salin UUID
masalah dari daftar masalah. CLI memvalidasi respons sebelum mencetaknya.
--json untuk agen dan skrip. logbrew explain issue "<issue_id>"
melakukan pembacaan yang sama. Untuk membaca langsung lewat API, minta respons
versi 13. CLI meminta versi yang sama:
response_version 1 sampai 13. Pemilihan kemunculan memerlukan
versi 2 atau yang lebih baru. Panduan ini menjelaskan versi 13.
Kemunculan yang direkomendasikan adalah kemunculan tersimpan yang masih baru
dan memiliki konteks yang berguna. Kemunculan ini bisa lebih lama daripada
kemunculan terbaru. LogBrew membandingkan kemunculan tersimpan yang paling
baru, hingga occurrence_selection.recommendation.candidate_limit. LogBrew
memilih kemunculan dengan konteks investigasi paling banyak. Jika dua
kemunculan memiliki konteks yang sama banyak, kemunculan yang lebih baru
dipilih. Jika
occurrence_selection.recommendation.candidate_window_truncated bernilai
true, masalah ini memiliki kemunculan lebih lama yang tidak dievaluasi oleh
rekomendasi.
Pastikan lingkup investigasi
Filter daftar masalah tidak berlaku untuk investigasi. ID masalah memilih kelompoknya, dan respons dapat menyertakan riwayat kelompok yang tersimpan. ID kemunculan yang persis tidak menghapus riwayat itu. Jika tugas Anda tidak mengizinkan riwayat tersebut, jangan minta investigasi. Sebelum menafsirkan error, pastikan bahwa:subject.project_idadalah proyek yang dimaksud.event.idadalah kemunculan yang dipilih.event.occurred_atberada dalam rentang waktu insiden.- Layanan, lingkungan, dan rilis cocok dengan deployment yang sedang ditinjau.
schema_versionbernilai13.
Pilih kemunculan lain
Kirim satu pemilih:
Jangan kirim
selection dan occurrence_id bersamaan. Di subject,
first_seen_at dan last_seen_at menggambarkan kelompok. Bukti terperinci
terkait dengan event yang dipilih.
occurrence_selection juga mengembalikan ringkasan kemunculan first,
latest, recommended, dan selected. occurrence_selection.reason
menjelaskan alasan LogBrew memilih kemunculan tersebut:
Baca respons secara berurutan
- Baca
subjectuntuk kelompok, lalueventuntuk kemunculan yang dipilih. - Baca
grouping,lifecycle, danoccurrence_analysisuntuk riwayat kelompok. - Baca
fixuntuk lokasi kode. Pertahankanprovenancebersama file, fungsi, baris, dan kolomnya. Frame yang teramati menunjukkan kode yang perlu diperiksa, bukan penyebab yang terbukti. - Baca
cause.statusdan buktinya. Tidak satu pun nilai penyebab membuktikan akar penyebab. - Baca
impact.user_impactterpisah dariimpact.occurrence_count. Pertahankancount_method,coverage, danlimitationsbersama jumlahnya. Satu pengguna dapat menyebabkan beberapa kemunculan. - Baca
reproduction.status, lalucorrelations.
Lokasi kode dan penyebab
fix.status menunjukkan asal lokasi kode:
cause.status bernilai reported_hypothesis, evidence_only, atau
unknown. reported_hypothesis berasal dari aplikasi dan belum
diverifikasi. cause.signals mencantumkan sinyal yang teramati, misalnya
unhandled_exception atau error_trace_span. provenance bernilai
backend_observed atau application_reported. Jangan campurkan keduanya.
Temukan file sumber
source_locator menghubungkan lokasi kode ke repositori jika penyiapan proyek
memiliki repositori untuk layanan tersebut. Gunakan repository_full_name,
revision, dan repository_relative_file untuk membuka file.
revision_source bernilai deployment_commit atau setup_snapshot.
Jika source_locator.status bernilai not_found, layanan tidak memiliki
komponen repositori yang terhubung. Ini tidak berarti file-nya tidak ada.
Jangan menebak komponen dari nama file.
Pengguna yang terdampak
known_affected_users adalah nilai perkiraan, bahkan jika statusnya
complete. Nilai ini tidak menghitung pengguna anonim atau kemunculan tanpa
konteks pengguna. Jumlah null bukan nol. impact.reported berisi nilai yang
dilaporkan aplikasi. Jangan tambahkan nilai itu ke jumlah yang diukur.
Status reproduksi
Pemicu berasal dari
event.request atau impact.reported.failed_action.
Kegagalan yang diharapkan berasal dari event.exception atau
event.request.response_status_code. Lokasi kode adalah fix.location.
reproduction.baseline_occurrence_id adalah kemunculan yang dipilih. Catatan
bukti reproduction.evidence menyimpan setiap input sebagai
reproduction.trigger, reproduction.expected_failure, dan
reproduction.code_location. Status ready tidak membuktikan bahwa
reproduksi berhasil dijalankan. Jangan pernah mengarang body permintaan, nilai
yang disamarkan, atau langkah.
Siklus hidup dan regresi
lifecycle.persisted_status adalah status yang tersimpan.
lifecycle.effective_status bernilai regressed jika ada kemunculan yang
datang setelah masalah diselesaikan. Status tersimpan tetap resolved sampai
seseorang membuka kembali masalah tersebut.
lifecycle.regression.first_reappeared_occurrence menandai kemunculan baru
yang pertama.
Respons investigasi menampilkan masalah yang diarsipkan sebagai ignored di
subject.status dan lifecycle. Lihat
Nilai status.
Tangani bukti yang tidak terekam dan terbatas
correlations.trace.status memiliki nilai berikut:
Untuk
not_linked, lanjutkan dengan exception, frame, breadcrumb, dan bukti
lain yang dikembalikan. Untuk not_found, simpan ID trace yang persis. Untuk
unavailable, coba lagi nanti. Tidak satu pun dari status ini berarti
aplikasi tidak memiliki trace. Trace available bisa saja hanya berisi span
perekaman dari masalah tersebut. Lihat
Span perekaman.
correlations.logs berisi log di sekitar waktu kemunculan dari rilis dan
lingkungan yang sama. Jika kemunculan memiliki ID trace, log berasal dari
trace tersebut. Tanpa ID trace, log berasal dari layanan yang sama. actions,
metrics, dan related_issues memerlukan ID trace. Setiap koleksi memiliki
status, items, dan truncated.
Pisahkan captured_fields, missing_fields, redacted_fields, dan
truncated_fields. Data yang disamarkan bukan data yang tidak terekam. Data
yang dipotong tidak lengkap. evidence.status bernilai partial jika kolom
wajib tidak terekam, disamarkan, dipotong, atau tidak tersedia. Pembaruan SDK
tidak menambahkan bukti ke peristiwa lama.
Ikuti ID yang persis untuk log, masalah, dan rilis terkait. Stempel waktu yang
berdekatan bukan tautan.
Ikuti langkah berikutnya
Prosesnext_actions sesuai urutan priority jika klien Anda mendukung
pasangan code dan target yang persis. Setiap langkah juga memiliki
reason.
Verifikasi deployment kandidat
Gunakan ID kemunculan yang gagal sebagai acuan. Ambil ID deployment kandidat dari bukti deployment atau proses rilis Anda.logbrew deploy mencatat
deployment.
422.
Respons menghitung kemunculan masalah yang sama yang diterima LogBrew setelah
deployment selesai hingga waktu permintaan (observed_after dan
observed_until). Respons juga menghitung trace dari rilis kandidat.
absence_is_proof selalu false. Tidak adanya kemunculan ulang dalam rentang
waktu tersebut tidak membuktikan perbaikan permanen. Ubah status sesuai
panduan Kelola masalah hanya
setelah tim Anda menerima buktinya.
Pulihkan dengan aman
Respons error berisi
error, code, next, dan next_action. Gunakan
code dan next_action untuk kontrol program. Tampilkan next sebagai
panduan. Jangan jalankan sebagai perintah. Jika pembacaan gagal, jangan ganti
kemunculan yang diminta dengan kemunculan lain. Lihat
Error API dan
referensi API Telemetri.