All Products
Search
Document Center

Elastic Container Instance:Analisis exception aplikasi menggunakan coredump

Last Updated:Aug 05, 2026

Coredump adalah file yang berisi status memori aplikasi saat mengalami crash atau dihentikan secara tidak terduga. Sistem operasi membuat file ini untuk keperluan debugging dan analisis lebih lanjut. Topik ini menjelaskan cara mengaktifkan coredump pada instans Elastic Container Instance (ECI), sehingga Anda dapat menganalisis file core dari terminasi kontainer yang tidak terduga untuk mengidentifikasi penyebab masalah dan memperbaiki aplikasi.

Informasi latar belakang

Di Linux, ketika aplikasi dihentikan secara tidak terduga atau mengalami crash, sistem operasi merekam status memorinya dan menyimpannya ke dalam sebuah file—proses ini dikenal sebagai coredump. File core tersebut kemudian dapat dianalisis untuk mengidentifikasi akar permasalahan.

Gambar berikut menunjukkan sinyal Linux yang memicu coredump. Untuk sinyal-sinyal ini, aksi default-nya adalah Core.

Untuk informasi lebih lanjut, lihat coredump file.

Ikhtisar

Secara default, coredump dinonaktifkan pada instans ECI untuk mencegah penggunaan disk berlebihan yang dapat mengganggu layanan. Anda dapat mengaktifkan coredump dengan salah satu metode berikut:

  • Metode 1: Aktifkan task O&M coredump

    Setelah Anda mengaktifkan coredump secara manual, sistem akan membuat task O&M. Saat kontainer dihentikan secara abnormal atau keluar, file core yang dihasilkan akan secara otomatis disimpan ke OSS.

  • Metode 2: Sesuaikan path penyimpanan file core

    Anda dapat menyimpan file core di penyimpanan eksternal dengan menentukan path penyimpanan khusus. Setelah path ditetapkan, coredump akan diaktifkan secara otomatis. Saat kontainer mengalami crash atau keluar secara tidak terduga, file core yang dihasilkan akan disimpan ke path yang ditentukan.

Catatan
  • Metode 1 mudah digunakan tetapi memiliki batasan waktu dan wilayah. Metode ini cocok untuk debugging dan diagnostik sementara.

    • Task O&M yang dihasilkan merupakan task satu kali pakai. Setelah file core berhasil ditangkap, coredump akan secara otomatis dinonaktifkan. Task O&M berlaku selama 12 jam dan kedaluwarsa jika tidak dipicu dalam periode tersebut.

    • Metode ini tidak didukung di wilayah berikut: Tiongkok (Ulanqab), Tiongkok (Heyuan), Tiongkok (Guangzhou), Tiongkok (Nanjing), Filipina (Manila), Korea Selatan (Seoul), dan Thailand (Bangkok).

  • Metode 2 mengharuskan Anda mengonfigurasi penyimpanan eksternal. Jika aplikasi Anda tidak stabil, metode ini dapat memastikan file core tertangkap. Namun, jika aplikasi bermasalah terus-menerus restart, sejumlah besar file core dapat dihasilkan.

Metode 1: Aktifkan task O&M coredump

Konsol

  1. Masuk ke Konsol Elastic Container Instance.

  2. Aktifkan coredump untuk instans ECI.

    1. Klik ID instans target untuk membuka halaman detail instans.

    2. Klik tab O&M, pilih tab Coredump, lalu klik Enable.

      Setelah Anda mengaktifkan coredump, sistem akan menghasilkan task O&M. Jika coredump belum dipicu, status task-nya adalah Pending.

  3. Picu coredump.

    Sambungkan ke instans ECI. Di dalam kontainer, jalankan perintah sleep 100, lalu tekan Ctrl+\ untuk memicu coredump. File core yang dihasilkan akan secara otomatis disimpan ke OSS.

    # sleep 100
    ^\Quit (core dumped)
  4. Unduh file core.

    Setelah coredump dipicu dan file core dihasilkan, status task O&M berubah menjadi Successful. Klik Download di kolom Result untuk mengunduh file core.

    Catatan

    Jika unduhan tidak dimulai, periksa pengaturan izin situs di browser Anda.

API

  1. Aktifkan coredump untuk instans ECI.

    Panggil operasi CreateInstanceOpsTask untuk membuat task O&M. Tentukan instans ECI target, atur parameter OpsType ke coredump, dan atur parameter OpsValue ke enable. Untuk informasi lebih lanjut, lihat CreateInstanceOpsTask.

    Catatan

    Saat menentukan instans ECI, pastikan parameter CorePattern tidak diatur saat pembuatan instans.

  2. Picu coredump.

    Sambungkan ke instans ECI. Di dalam kontainer, jalankan perintah sleep 100, lalu tekan Ctrl+\ untuk memicu coredump. File core yang dihasilkan akan secara otomatis disimpan ke OSS.

  3. Unduh file core.

    Panggil operasi DescribeInstanceOpsRecords untuk melihat hasil task O&M. Di dalam respons, bidang ResultContent berisi URL file core di OSS. Anda dapat mengakses URL tersebut untuk mengunduh file core.

Metode 2: Sesuaikan path penyimpanan

File core biasanya digunakan untuk analisis offline. Oleh karena itu, kami menyarankan agar Anda menyimpannya ke penyimpanan eksternal, bukan ke path lokal di dalam kontainer, guna mencegah hilangnya file core saat kontainer keluar. ECI memungkinkan Anda menentukan path penyimpanan khusus untuk file core. Setelah path tersebut ditetapkan, coredump akan diaktifkan secara otomatis.

Saat Anda memanggil operasi CreateContainerGroup untuk membuat instans ECI, Anda dapat meneruskan parameter CorePattern untuk mengatur path penyimpanan file core. Tabel berikut menjelaskan parameter terkait. Untuk informasi lebih lanjut, lihat CreateContainerGroup.

Catatan

Konfigurasikan parameter volume sesuai dengan jenis volume Anda.

Parameter

Tipe

Contoh

Deskripsi

CorePattern

String

/data/dump-a/core

Path penyimpanan file core. Path ini harus berada di dalam volume yang dimount.

Penting

Path tidak boleh diawali dengan karakter pipe (|). Artinya, Anda tidak dapat mengonfigurasi program executable menggunakan coredump.

Volume.N.Name

String

volume1

Nama volume.

Volume.N.Type

String

NFSVolume

Jenis volume. Pada contoh ini, NFSVolume digunakan.

Volume.N.NFSVolume.Path

String

/dump

Path volume NFS.

Volume.N.NFSVolume.Server

String

143b24****-gfn3.cn-beijing.nas.aliyuncs.com

Alamat server NFS.

Jika Anda menggunakan Penyimpanan File NAS Alibaba Cloud, ini adalah alamat mount point dari sistem file NAS.

Container.N.VolumeMount.N.Name

String

volume1

Nama volume yang akan dimount. Nilai ini harus sesuai dengan nilai Volume.N.Name.

Container.N.VolumeMount.N.MountPath

String

/data/dump-a/

Path mount.

Konten volume akan menimpa konten apa pun yang sudah ada di path mount di dalam kontainer. Pastikan path-nya benar.

Contoh berikut menunjukkan cara menggunakan sistem file Penyimpanan File NAS Alibaba Cloud sebagai penyimpanan eksternal:

  1. Buat instans ECI bernama instance A, mount sistem file NAS, dan atur path penyimpanan file core.

    Panggil operasi CreateContainerGroup untuk membuat instance A. Atur parameter berikut untuk mount direktori /dump/ dari sistem file NAS ke /data/dump-a/ di dalam kontainer, dan atur path penyimpanan file core ke /data/dump-a/core.

    ContainerGroupName=test-a
    SecurityGroupId=sg-bp1daxpbz9lzpvvc****
    VSwitchId=vsw-bp1gds63lmlm7ib05****
    # Declare a volume
    Volume.1.Name=volume1
    Volume.1.Type=NFSVolume
    Volume.1.NFSVolume.Path=/dump/
    Volume.1.NFSVolume.Server=143b24****-gfn3.cn-beijing.nas.aliyuncs.com
    # Mount the volume to the container
    Container.1.Name=nginx
    Container.1.Image=registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:1.14.2
    Container.1.VolumeMount.1.Name=volume1
    Container.1.VolumeMount.1.MountPath=/data/dump-a/
    # Set the save path for core files
    CorePattern=/data/dump-a/core
  2. Picu coredump di direktori mana pun di dalam kontainer instance A.

    Di dalam kontainer, jalankan perintah sleep 100, lalu tekan Ctrl+\ untuk memicu coredump. File core disimpan ke /data/dump-a/core di dalam kontainer.

    # ls
    bin  boot  data  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
    # cd /data/dump-a/
    # ls
    # sleep 100
    ^\Quit (core dumped)
    # ls
    core.17
  3. Lepaskan instance A.

  4. Mount sistem file NAS yang sama ke instans ECI lain bernama instance B.

    Panggil operasi CreateContainerGroup untuk membuat instance B. Teruskan parameter berikut untuk mount direktori /dump/ yang sama dari sistem file NAS ke direktori /data/dump-b/ di dalam kontainer.

    ContainerGroupName=test-nas-b
    SecurityGroupId=sg-bp1daxpbz9lzpvvc****
    VSwitchId=vsw-bp1gds63lmlm7ib05****
    # Declare a volume
    Volume.1.Name=volume1
    Volume.1.Type=NFSVolume
    Volume.1.NFSVolume.Path=/dump/
    Volume.1.NFSVolume.Server=143b24****-gfn3.cn-beijing.nas.aliyuncs.com
    # Mount the volume to the container
    Container.1.Name=nginx
    Container.1.Image=registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:1.14.2
    Container.1.VolumeMount.1.Name=volume1
    Container.1.VolumeMount.1.MountPath=/data/dump-b/
  5. Lihat file core di dalam kontainer instance B.

    Anda dapat melihat file core di direktori /data/dump-b di dalam kontainer. Karena file core disimpan di penyimpanan eksternal, file tersebut tidak hilang setelah instance A dilepaskan dan tetap tersedia untuk analisis.

    # ls
    bin  boot  data  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
    # cd /data/dump-b/
    # ls
    core.17

FAQ

Unduhan tidak dimulai saat saya mengklik Download di konsol. Apa yang harus saya lakukan?

Jika unduhan tidak dimulai, periksa pengaturan izin situs di browser Anda. Misalnya, di Chrome, ikuti langkah-langkah berikut untuk memberikan izin yang diperlukan:

  1. Klik ikon gembok di sebelah kiri bilah alamat browser Chrome, lalu di panel popup, klik Site settings.

  2. Di daftar izin situs, temukan Insecure content dan atur izinnya ke Allow.