Skip to main content
LogBrew CLI open source membaca telemetri dan mengelola data akun dari terminal. Mulai dengan panduan Gunakan CLI untuk instalasi, login, dan tugas umum.

Cara kerja CLI

Gunakan teks yang mudah dibaca di terminal. Gunakan --json di skrip dan agen coding. Login akun diperlukan untuk pembacaan akun. Sebelum Anda memulai login, jalankan logbrew status --json. Manusia harus menyelesaikan otorisasi di browser. Kunci ingest proyek mengirim telemetri. Kunci itu tidak bisa menggantikan login akun. Pembuatan proyek, pembuatan kunci, perubahan status, prioritas, dan penanggung jawab masalah, deployment, serta pembaruan dukungan mengubah data akun. Sebelum Anda menjalankan salah satunya, pastikan tindakan dan targetnya benar. Jalankan logbrew --help untuk melihat semua perintah. Tambahkan --help ke perintah, seperti logbrew read logs --help, untuk melihat flag-nya. Jalankan logbrew help json untuk aturan JSON.

Baca laporan doctor proyek

Gunakan ID proyek dari logbrew projects --json:
Perintah ini membaca status proyek dan satu log terbaru. Perintah ini tidak membuat proyek, mengubah kunci, atau mencatat penyiapan. Laporan berisi status, checks, dan next. Setiap pemeriksaan berisi check, status, dan next. Pemeriksaannya adalah api, auth, project, ingest_key, setup, telemetry, dan logs. Kode keluar 0 berarti CLI menulis laporan. Kode itu tidak berarti proyek sudah siap. Baca status laporan dan setiap pemeriksaan. Pemeriksaan not_checked tidak lolos. Saat pembacaan proyek berhasil, pemeriksaan logs bernilai visible, empty, unavailable, error, atau invalid_response. Pemeriksaan ini tidak mengubah status laporan. Hasil log kosong tidak mengatakan apa pun tentang sinyal lain. Pembacaan yang gagal bukan hasil kosong. Gunakan next sebagai panduan pemulihan. Nilai ini tidak memberi izin untuk mengubah status akun atau proyek.

Contoh: akses akun tidak ada

Tanpa kredensial akun, perintah ini tidak membuat permintaan API. Perintah ini menulis laporan berikut ke standard output dan keluar dengan kode 0:
Laporan ini berbeda dari diagnosis API proyek. Laporan ini tidak berisi kolom API state, setup_status, atau next_action.

Filter

--since menerima durasi seperti 24h atau 7d, atau stempel waktu RFC 3339. --until menerima stempel waktu RFC 3339. Nilai ini adalah waktu akhir yang eksklusif dan harus lebih akhir dari --since. Pembacaan satu masalah berdasarkan ID tidak menerima --until. Tingkat keparahan log bernilai info, warning, error, atau critical. Status masalah adalah status alur kerja masalah, bukan tingkat keparahannya. --status ignored adalah nama lama untuk --status archived. --status open berarti unresolved, dan --status closed berarti resolved. --assignee none memilih masalah tanpa penanggung jawab, dan --assignee my_teams memilih masalah milik tim Anda. Nilai --assignee lain gagal dengan invalid_assignee. CLI juga menerima alias berikut: --project-id, --env, --service-name, --trace-id, --distinct-id, dan --level untuk --severity. Gunakan nama di tabel untuk skrip baru. Perintah ini membaca error selama 1 hari:
ID proyek memilih proyek. Nama layanan memilih komponen di proyek itu. Beri tanda kutip pada nilai yang berisi spasi:
Untuk teks pencarian yang diawali tanda hubung, letakkan -- sebelum teks:

Pilih kemunculan masalah

Masalah mengelompokkan kemunculan yang cocok. Baca masalah untuk melihat status, jumlah kemunculan, serta waktu pertama terlihat dan terakhir terlihat:
Gunakan explain issue atau investigate issue untuk bukti dari satu kemunculan. Tanpa --occurrence, LogBrew memilih kemunculan yang direkomendasikan. Kemunculan ini tidak selalu peristiwa terbaru. Untuk membaca peristiwa terbaru:
--occurrence juga menerima recommended, first, atau ID kemunculan yang dikembalikan LogBrew. Perintah ini menolak filter proyek, rilis, lingkungan, dan waktu. Sebelum Anda membandingkan bukti, baca stempel waktu kemunculan yang dipilih. Lihat Investigasi masalah untuk kolom bukti.

Ubah status dan prioritas masalah

Gunakan 1 ID masalah untuk mengubah 1 masalah:
archive menetapkan archived, resolve menetapkan resolved, dan reopen menetapkan unresolved. Prioritas bernilai high, medium, atau low. Prioritas yang Anda tetapkan akan tetap seperti itu. Jika Anda tidak menetapkannya, prioritas mengikuti tingkat keparahan masalah. Untuk mengubah lebih dari 1 masalah, tambahkan --project. Semua masalah harus berada di proyek itu. Satu perintah mengubah hingga 100 masalah:
Hasilnya berisi 1 entri untuk setiap masalah. Setiap entri bernilai updated, unchanged, atau not_found. Masalah unchanged sudah berisi nilai yang diminta. Anda bisa menjalankan lagi perintah yang sama setelah kegagalan jaringan. Perintah ini tidak meminta konfirmasi. Periksa ID masalah terlebih dahulu. Pembacaan dan perubahan masalah menampilkan archived, bukan ignored, serta priority, priority_source, dan assignee setiap masalah. Lihat respons masalah.

Tugaskan masalah

Masalah punya 0 atau 1 penanggung jawab: satu akun atau satu tim. Tampilkan daftar akun dan tim yang bisa Anda tugaskan di suatu proyek:
Tugaskan 1 masalah ke suatu akun, ke diri Anda sendiri dengan me, atau ke suatu tim:
Batalkan penugasan:
Tambahkan --project untuk mengubah hingga 100 masalah di proyek itu, sama seperti untuk status dan prioritas. Akun harus bisa membaca proyek, dan tim harus berada di organisasi proyek. Untuk menemukan masalah yang ditugaskan kepada Anda atau tim Anda:
Output teks menampilkan nama penanggung jawab, atau team #<slug> untuk tim. Jika akun tidak punya nama, output menampilkan alamat email, lalu ID pengguna. Masalah tanpa penanggung jawab menampilkan unassigned.

Pemilik, riwayat, dan kotak masuk

issues owners menampilkan daftar usulan pemilik dan bukti yang diperiksanya. issues ownership set mengirim file lokal dengan ukuran maksimal 128 KiB per file. File kosong menghapus isinya. issues activity dan inbox menerima --limit dari 1 sampai 200, serta --cursor-time dengan --cursor-id dari next_cursor. Lihat Cari pemilik masalah.

Tetapkan aturan tingkat keparahan

Tingkat keparahan bernilai info, warning, error, critical, atau source. source kembali menampilkan tingkat keparahan yang terekam. --ignore menyembunyikan log yang cocok dari daftar log default. Tanpa --ignore, aturan itu menampilkannya.

Baca halaman berikutnya

Log, masalah, aksi, metrik, dan trace menerima paginasi berbasis kursor. Rilis tidak. Gunakan --pagination cursor untuk halaman pertama:
Respons berisi logs dan next_cursor. next_cursor yang tidak null berisi time dan id. Kirim keduanya dengan --cursor-time dan --cursor-id:
Pertahankan filter dan batas yang sama di setiap halaman. Berhenti saat next_cursor bernilai null. Gunakan kursor, bukan jumlah baris, untuk menentukan apakah masih ada halaman lain. Halaman terakhir bisa kosong:
Masalah, aksi, dan metrik memakai bentuk yang sama, dengan issues, actions, atau metrics sebagai ganti logs.

Pantauan langsung

logbrew watch --json men-stream log, masalah, dan aksi secara langsung. Tambahkan logs, issues, atau actions untuk men-stream satu jenis saja. tail, follow, dan stream adalah alias dari watch. Watch tidak mendukung trace atau span. Watch memerlukan --json. Tanpa flag itu, perintah menulis watch streams JSON for agents dan keluar dengan kode 1. Peristiwa masalah di watch menampilkan masalah yang diarsipkan sebagai ignored, tanpa prioritas. Baca masalah untuk mendapatkan status dan prioritas terkininya. Watch hanya menerima --severity, seperti --severity error,critical. logbrew watch actions tidak menerima --severity. CLI menerapkan filter ini setelah menerima peristiwa. Filter ini tidak mengurangi data yang dikirim server. Watch tidak punya filter proyek, rilis, lingkungan, atau waktu. Untuk filter itu, gunakan perintah read. Setelah koneksi terputus sementara, CLI menunggu lalu menyambung kembali.

Baca hasil dan error

Letakkan --json sebelum atau sesudah perintah. Baca kode keluar sebelum Anda memakai output. Jangan mem-parse output yang ditujukan untuk manusia. Output itu bisa berubah antarversi. Output sukses mempertahankan format respons API. Output bisa berupa array atau objek. Tanpa paginasi berbasis kursor, pembacaan log mengembalikan array. Array kosong berarti tidak ada log yang cocok. Itu bukan error. Error dikirim ke standard error. Pengecualiannya adalah debug-artifacts --json, yang menulis error ke standard output. Error JSON berisi ok, error, message, dan next. Gunakan error sebagai kode kegagalan yang stabil. Periksa next sebelum Anda menjalankan perintah yang disarankannya. Misalnya, logbrew watch traces --json keluar dengan kode 2 dan menulis:
logbrew read logs --limit 0 --json keluar dengan kode 2 dan menulis:
Perbaiki nilainya dan jalankan perintah lagi. Perintah yang ditolak bukan hasil kosong. Lihat Error API untuk error HTTP dan referensi API Telemetri untuk permintaan API langsung.