Di mana Juju menyimpan log semua perintah berjalan dan outputnya untuk setiap unit?

8

Kadang-kadang ketika mengerahkan layanan (dan lebih khusus lagi unit baru) untuk pesona Juju, kesalahan terjadi dan sepertinya tidak ada cara untuk mencari tahu persis apa itu.

Apakah ada semacam log keluaran dari semua perintah yang dijalankan unit?

Nathan Osman
sumber

Jawaban:

6

Tampaknya setiap unit menyimpan log dari perintah yang dijalankan . Anda dapat mengaksesnya dengan memanfaatkan perintah Juju seperti:/var/log/juju/unit/unit-service_name-service_number.logssh

juju ssh service_name/service_number

Ini akan menjatuhkan Anda ke dalam shell untuk unit itu. Anda kemudian dapat menggunakan editor teks atau bahkan hanya cat | lessuntuk membaca log.

Nathan Osman
sumber
3

Anda dapat menggunakan juju debug-loguntuk mendapatkan log terdistribusi dari semua operasi oleh semua agen. Hal ini memungkinkan menekan hal-hal berdasarkan level log, jadi beri juju debug-log -hbaca. Memang melewatkan beberapa hal, tetapi sebagian besar itu harus memberi Anda apa yang Anda cari.

Perintah berikut menunjukkan semua log dari awal waktu. Jadi itu juga akan menampilkan log dari sebelum Anda mulaijuju debug-log

juju debug-log --replay
SpamapS
sumber
Tetapi apakah ini menjawab pertanyaan? Saya perlu output dari perintah setelah dieksekusi.
Nathan Osman
Itulah yang disediakan oleh log-debug .. output dari semua perintah yang dijalankan oleh semua agen (kait, panggilan API, semuanya). Mantra juga dapat mengontrol level log yang digunakan untuk output dengan menggunakan 'juju-log'.
SpamapS
Tetapi apakah ini mengembalikan output dari perintah yang telah berjalan sebelum saya menelepon juju debug-log?
Nathan Osman
Tidak, debug-log memberi tahu agen bahwa mereka harus mulai mengirim log mereka. Jika Anda ingin melihat log aktivitas agen yang lalu, Anda harus masuk ke setiap unit dan memeriksa log di / var / log / juju dan / var / lib / juju
SpamapS
Ya, itu pertanyaan yang saya ajukan dan jawaban di bawah ini berisi informasi itu.
Nathan Osman
1

Anda dapat menemukan log lengkap di dalam data-dirset di environments.yamlfile Anda .

Buka dengan gksudo <path_to_data-dir>, navigasikan melalui folder ke unitsfolder Anda , buka folder layanan yang ingin Anda lihat dan lihat unit.logfile.

Bruno Pereira
sumber