全部产品
Search
文档中心

Simple Log Service:Pemecahan masalah heartbeat tidak normal

更新时间:Dec 24, 2025

Heartbeat kelompok mesin mencerminkan status komunikasi antara server dan Simple Log Service (SLS). Jika heartbeat tidak normal, data tidak dapat dikirim ke SLS. Topik ini menjelaskan penyebab heartbeat tidak normal dan memberikan solusi untuk kasus penggunaan umum.

Penyebab heartbeat tidak normal

LoongCollector pada server menggunakan item konfigurasi berikut untuk mengidentifikasi proyek tujuan dan melaporkan heartbeat. Pemecahan masalah heartbeat tidak normal melibatkan pemeriksaan item konfigurasi dan verifikasi konektivitas jaringan.

  • Akun Alibaba Cloud yang memiliki proyek SLS: Akun ini harus memiliki izin untuk mengakses server dan mengumpulkan log-nya.

  • Wilayah dan jenis jaringan proyek: Titik akhir SLS dihasilkan secara dinamis berdasarkan wilayah dan jenis jaringan. Pastikan server dapat terhubung ke titik akhir tersebut. Untuk informasi selengkapnya, lihat Jenis jaringan dan titik akhir.

  • Pengenal kustom atau alamat IP: Heartbeat dibentuk dengan mengasosiasikan server ke kelompok mesin menggunakan alamat IP-nya atau pengenal kustom.

Prosedur pembentukan heartbeat

image
  1. LoongCollector membaca konfigurasinya untuk mendapatkan ID akun Alibaba Cloud, titik akhir, serta alamat IP atau pengenal kustom server.

  2. LoongCollector melaporkan heartbeat dengan informasi tersebut ke proyek di wilayah yang ditentukan.

  3. Backend SLS membandingkan alamat IP atau pengenal kustom yang dilaporkan oleh LoongCollector dengan konfigurasi dalam kelompok mesin Anda.

  4. Jika informasinya sesuai, heartbeat berhasil dibentuk dengan satu atau beberapa proyek yang cocok. Status heartbeat kelompok mesin berubah menjadi OK.

Kasus penggunaan umum heartbeat tidak normal

Heartbeat server baru adalah FAIL

Saat status heartbeat adalah FAIL, mungkin diperlukan waktu untuk membentuk heartbeat awal. Tunggu sekitar dua menit, lalu refresh status heartbeat. Jika status tetap FAIL, lakukan langkah-langkah berikut:

  1. Verifikasi bahwa Anda memilih kasus penggunaan instalasi LoongCollector yang benar. Jika kasus penggunaannya benar, lanjutkan ke langkah berikutnya. Jika tidak, uninstal lalu instal ulang LoongCollector.

    Metode instalasi

    Kasus penggunaan

    Akun dan wilayah sama

    Metode ini hanya berlaku ketika server merupakan Instance ECS Alibaba Cloud, dan Instance ECS serta proyek tersebut dimiliki oleh Akun Alibaba Cloud yang sama serta berada di wilayah yang sama.

    Akun sama tetapi wilayah berbeda

    Metode ini berlaku ketika server merupakan Instance ECS Alibaba Cloud, dan Instance ECS serta proyek tersebut dimiliki oleh Akun Alibaba Cloud yang sama tetapi berada di wilayah yang berbeda.

    Akun berbeda tetapi wilayah sama

    Metode ini berlaku ketika server merupakan Instance ECS Alibaba Cloud, dan Instance ECS serta proyek tersebut berada di wilayah yang sama tetapi dimiliki oleh Akun Alibaba Cloud yang berbeda.

    Server cloud lain atau on-premises

    • Metode ini berlaku ketika server bukan Instance ECS Alibaba Cloud, seperti server on-premises atau server dari penyedia cloud lain.

    • Metode ini juga berlaku ketika server merupakan Instance ECS Alibaba Cloud, tetapi Instance ECS dan proyek tersebut dimiliki oleh Akun Alibaba Cloud yang berbeda serta berada di wilayah yang berbeda. Dalam kasus ini, server dapat diperlakukan sebagai server on-premises.

  2. Pada server, jalankan perintah sudo /etc/init.d/loongcollectord status untuk memeriksa status LoongCollector. Jika respons `loongcollector is running` dikembalikan, LoongCollector telah berjalan. Jika tidak, jalankan perintah berikut untuk memulai LoongCollector:

    Jika Anda menggunakan collector Logtail, jalankan sudo /etc/init.d/ilogtaild status untuk memeriksa statusnya dan sudo /etc/init.d/ilogtaild start untuk memulainya.
    sudo /etc/init.d/loongcollectord start
  3. Jika Anda berada dalam skenario cross-account di mana proyek dan server dimiliki oleh Akun Alibaba Cloud yang berbeda, Anda harus mengonfigurasi file ID pengguna secara manual untuk memberikan izin kepada akun pemilik proyek agar dapat mengakses server dan mengumpulkan log-nya.

    Periksa isi file ID pengguna

    1. Periksa apakah file /etc/ilogtail/users/{Alibaba Cloud account ID} ada. Jika tidak ada, buatlah.

      1. Masuk ke Konsol Simple Log Service. Arahkan kursor ke gambar profil di pojok kanan atas. Di menu yang muncul, lihat dan salin ID akun Alibaba Cloud.

      2. Pada server tempat LoongCollector diinstal, buat file ID pengguna dengan nama sesuai ID akun Alibaba Cloud.

        touch /etc/ilogtail/users/{Alibaba Cloud account ID} # Gunakan ID akun Alibaba Cloud sebagai nama file, tanpa ekstensi file.
    2. Periksa apakah nama file memenuhi persyaratan berikut. Jika tidak, ubahlah.

      • {Alibaba Cloud account ID} harus merupakan ID akun Alibaba Cloud.

      • {Alibaba Cloud account ID} harus merupakan ID akun Alibaba Cloud yang memiliki proyek SLS, bukan akun yang memiliki server.

  4. Konfirmasi bahwa wilayah dan jenis jaringan sudah benar serta Anda dapat terhubung ke titik akhir. Periksa apakah file /usr/local/ilogtail/ilogtail_config.json pada server berisi informasi region yang benar dan konsisten dengan ID Wilayah proyek SLS. Jika konsisten, lanjutkan ke langkah berikutnya. Jika tidak, ubahlah:

    Uji konektivitas titik akhir dan modifikasi konfigurasi server

    1. Masuk ke Konsol Simple Log Service. Di bagian Proyek, klik proyek target.

    2. Klik ikon image di sebelah kanan nama proyek untuk membuka halaman ikhtisar proyek.

    3. Di bagian Endpoints, lihat informasi nama domain proyek saat ini. Ganti ${project_name} dengan nama proyek dan ${domain_name_information} dengan titik akhir Internet. Lalu, jalankan perintah tersebut di server.

      curl https://${project_name}.${domain_name_information}
    4. Jika respons yang mirip dengan {"Error":{"Code":"OLSInvalidMethod","Message":"The script name is invalid : /","RequestId":"5D****09"}} dikembalikan, koneksi jaringan normal. Jika tidak, periksa apakah alamat tujuan diblokir dan lakukan pemeriksaan jaringan lainnya. Misalnya, periksa apakah Port 80 (HTTP) dan 443 (HTTPS) terbuka untuk lalu lintas outbound serta periksa konfigurasi DNS dan security group.

      Error ini diharapkan dan menunjukkan bahwa koneksi jaringan berfungsi. Error terjadi karena perintah curl hanya menguji konektivitas jaringan dan tidak menyertakan parameter API yang diperlukan untuk permintaan yang valid.
    5. Modifikasi parameter dalam /usr/local/ilogtail/ilogtail_config.json:

      • config_servers: Parameter ini menentukan path untuk mendapatkan konfigurasi pengumpulan. Ubah nilainya menjadi "http://logtail.${domain_name_information}", di mana ${domain_name_information} adalah titik akhir Internet.

      • data_servers:

        • region: Parameter ini menentukan wilayah untuk transmisi data. Ubah nilainya menjadi "${RegionID}", di mana ${RegionID} adalah ID Wilayah proyek SLS.

        • endpoint_list: Parameter ini menentukan path untuk transmisi data. Ubah nilainya menjadi "${domain_name_information}", di mana ${domain_name_information} adalah titik akhir Internet.

    6. Setelah menyimpan perubahan, restart LoongCollector.

      Jika Anda menggunakan collector Logtail, jalankan sudo /etc/init.d/ilogtaild restart
      sudo /etc/init.d/loongcollectord restart
  5. Periksa nilai pengenal kustom atau alamat IP:

    1. Masuk ke Konsol Simple Log Service. Di bagian Proyek, klik proyek target.

    2. Di panel navigasi kiri, pilih image Resources > Machine Groups. Di halaman Machine Groups, klik kelompok mesin target.

    3. Di halaman Machine Group Settings, lihat Machine Group Identifier dan lakukan operasi yang sesuai:

      Custom identifier

      1. Konfirmasi bahwa file /etc/ilogtail/user_defined_id ada di server. Jika tidak ada, buatlah.

      2. Tulis string kustom ke file tersebut sebagai pengenal kustom. Contoh ini menggunakan user-defined-test-1.

        # Tulis string kustom ke file yang ditentukan.
        echo "user-defined-test-1" > /etc/ilogtail/user_defined_id 
      3. Atur Custom Identifier ke string kustom tersebut. Dalam contoh ini, nilainya adalah user-defined-test-1.

      IP address

      Tambahkan nilai bidang ip dari file /usr/local/ilogtail/app_info.json di server ke bidang IP Address.

      Aturan nilai IP: Jika Anda telah mengatur pemetaan hostname ke alamat IP di file /etc/hosts pada server, alamat IP yang dipetakan akan diambil secara otomatis. Jika tidak ada pemetaan hostname, alamat IP dari network interface card (NIC) pertama akan diambil secara otomatis. Jika parameter working_ip diatur di /usr/local/ilogtail/ilogtail_config.json, nilainya akan digunakan sebagai alamat IP server. Pastikan alamat IP dapat diambil dengan setidaknya salah satu cara tersebut. Jika tidak, bidang ip akan kosong dan heartbeat tidak dapat dibentuk.

Heartbeat sebelumnya berhasil tetapi sekarang menjadi FAIL

Heartbeat yang sebelumnya berhasil menunjukkan bahwa item konfigurasi sudah benar. Jika kelompok mesin menggunakan pengenal kustom, konfigurasinya bersifat statis. Masalah kemungkinan besar terkait jaringan. Verifikasi konektivitas jaringan ke titik akhir SLS. Jika kelompok mesin menggunakan alamat IP, status FAIL kemungkinan besar disebabkan oleh konflik alamat IP atau perubahan alamat IP. Lakukan langkah-langkah berikut untuk mengatasi masalah tersebut:

  1. Pada server, restart LoongCollector untuk mengambil informasi alamat IP terbaru.

    Jika Anda menggunakan collector Logtail, jalankan sudo /etc/init.d/ilogtaild restart
    sudo /etc/init.d/loongcollectord restart
  2. Pada server, lihat informasi di bidang ip dari file /usr/local/ilogtail/app_info.json.

    Aturan nilai IP: Jika Anda telah mengatur pemetaan hostname ke alamat IP di file /etc/hosts pada server, alamat IP yang dipetakan akan diambil secara otomatis. Jika tidak ada pemetaan hostname, alamat IP dari NIC pertama akan diambil secara otomatis. Jika parameter working_ip diatur di /usr/local/ilogtail/ilogtail_config.json, nilainya akan digunakan sebagai alamat IP server.
  3. Masuk ke Konsol Simple Log Service. Di bagian Proyek, klik proyek target.

  4. Di panel navigasi kiri, pilih image Resources > Machine Groups. Di halaman Machine Groups, klik kelompok mesin target.

  5. Di halaman Machine Group Settings, periksa apakah bidang IP Address berisi nilai dari bidang ip di file /usr/local/ilogtail/app_info.json. Jika tidak, tambahkan nilai bidang ip ke bidang IP Address.

  6. Jika alamat IP cocok tetapi heartbeat tetap FAIL, hal ini mungkin menunjukkan bahwa IP server tidak stabil atau mengalami konflik. Pertimbangkan untuk beralih ke pengenal kustom untuk identifikasi yang lebih andal.

Heartbeat menjadi FAIL setelah mengganti tipe pengenal kelompok mesin

Ketika terjadi konflik atau perubahan alamat IP, kelompok mesin berbasis IP tidak lagi sesuai. Anda perlu beralih ke kelompok mesin yang menggunakan pengenal kustom. Mengganti tipe kelompok mesin tidak memengaruhi konektivitas jaringan, informasi Akun Alibaba Cloud, atau pengaturan wilayah dan jenis jaringan. Oleh karena itu, Anda hanya perlu memastikan bahwa nilai pengenal kustom sudah benar.

  1. Konfirmasi bahwa file /etc/ilogtail/user_defined_id ada. Jika tidak ada, buatlah.

  2. Tulis string kustom ke file tersebut sebagai pengenal kustom. Contoh ini menggunakan user-defined-test-1.

    # Tulis string kustom ke file yang ditentukan.
    echo "user-defined-test-1" > /etc/ilogtail/user_defined_id 
  3. Masuk ke Konsol Simple Log Service. Di bagian Proyek, klik proyek target.

  4. Di panel navigasi kiri, pilih image Resources > Machine Groups. Di halaman Machine Groups, klik kelompok mesin target.

  5. Di halaman Machine Group Settings, konfirmasi nilai dua parameter berikut. Jika salah, klik Modify di pojok kanan atas, lakukan perubahan yang diperlukan, lalu simpan.

    • Machine Group Identifier: Custom identifier.

    • Custom Identifier: String kustom tersebut. Dalam contoh ini, nilainya adalah user-defined-test-1.

FAQ

Mengapa status heartbeat tetap FAIL meskipun semua konfigurasi sudah benar?

Jika Anda memastikan bahwa konfigurasi sudah benar dan jaringan normal, status heartbeat mungkin tetap FAIL karena dua alasan berikut:

  • Collector mengurangi frekuensi heartbeat karena tidak ada konfigurasi pengumpulan yang diterapkan di wilayah tersebut dalam waktu lama.

    • Untuk mengurangi beban server, collector mengurangi frekuensi permintaan konfigurasi dari suatu wilayah jika tidak ada konfigurasi yang dikembalikan. Interval permintaan dapat meningkat hingga maksimal 12 menit. Jika interval ini melebihi ambang batas FAIL heartbeat wilayah tersebut, status heartbeat berubah menjadi FAIL.

    • Solusi: Abaikan status heartbeat FAIL tersebut. Terapkan konfigurasi pengumpulan ke kelompok mesin yang berisi server tersebut. Heartbeat akan pulih saat permintaan berikutnya ke wilayah tersebut. Untuk memulihkan heartbeat segera, restart collector.

  • Konfigurasi aktif tidak sesuai dengan file ilogtail_config.json.

    • Contoh: Collector dimulai dengan konfigurasi non-default. Kemudian, file ilogtail_config.json dimodifikasi, tetapi collector tidak direstart.

    • Cara memeriksa:

      • Metode paling langsung adalah merestart collector agar secara otomatis memuat konfigurasi terbaru.

      • Jika Anda khawatir tentang dampaknya terhadap pengumpulan log, lihat file /usr/local/ilogtail/ilogtail.LOG. Dari awal file, cari kata kunci load logtail config file. Entri log pada baris tersebut berisi konfigurasi yang sedang digunakan. Periksa apakah sesuai dengan file lokal.