All Products
Search
Document Center

Container Service for Kubernetes:Konfigurasi Simple Log Service

Last Updated:Jun 19, 2026

Pertahankan log pod alur kerja dengan Simple Log Service (SLS) agar dapat dikueri setelah pod dihapus.

Cara kerja

Saat Anda membuat kluster alur kerja, sistem secara otomatis membuat proyek SLS bernama k8s-log-<clusterid>. Semua log pod dikumpulkan ke dalam Logstore bernama workflow-logstore.

Setelah diaktifkan, Anda dapat melihat log melalui Argo CLI, Argo Server, atau Argo UI — baik pod tersebut masih berjalan maupun telah dihapus.

Batasan

  • Dibandingkan dengan oss-artifact-repository, SLS menyediakan manajemen siklus hidup log otomatis dengan durasi retensi yang dapat dikonfigurasi serta kemampuan kueri yang andal. Untuk mengumpulkan log menggunakan SLS, hapus pengaturan archiveLogs: true.

  • Setelah pengumpulan log diaktifkan, Anda dapat melihat log alur kerja sebelum alur kerja tersebut dihapus, meskipun pod-nya telah dihapus.

  • Jika suatu alur kerja dipertahankan ke database, Anda dapat mengunduh log-nya sebagai file ZIP atau melihatnya di Konsol SLS bahkan setelah alur kerja dihapus. Lihat Pertahankan alur kerja.

Aktifkan SLS

Jika proyek k8s-log-<clusterid> tidak dibuat secara otomatis, buatlah secara manual. Lihat Buat proyek SLS.

Pilih salah satu metode berikut:

Metode Paling cocok untuk
Alibaba Cloud Argo CLI Penyiapan cepat dengan satu perintah interaktif
AliyunLogConfig Alur kerja GitOps atau manajemen konfigurasi deklaratif

Aktifkan SLS dengan Alibaba Cloud Argo CLI

Alibaba Cloud Argo CLI memperluas Argo CLI open-source dengan dukungan pengumpulan log untuk pod yang telah dihapus.

Prasyarat

Langkah-langkah

Konfigurasikan SLS. Saat diminta, masukkan jumlah hari retensi log (default: 7).

argo config sls
Please input log retention days. Default is 7 days.
10

Output yang diharapkan:

Start to config SLS for your cluster.
Created AliyunLogConfig CR workflow-sls-config in default namespace.
Created SLS logstore workflow-logstore in SLS project k8s-log-<clusterid>, log retention days is 10 days

Output tersebut mengonfirmasi bahwa SLS telah dikonfigurasi. Semua log alur kerja dikumpulkan ke Logstore workflow-logstore dalam proyek k8s-log-<clusterid>.

Aktifkan SLS dengan AliyunLogConfig

Terapkan YAML berikut untuk membuat resource kustom AliyunLogConfig. Kontroler SLS secara otomatis membuat proyek k8s-log-<clusterid> dan Logstore workflow-logstore.

cat << EOF | kubectl apply -f -
apiVersion: log.alibabacloud.com/v1alpha1
kind: AliyunLogConfig
metadata:
  name: workflow-sls-config
  namespace: default
spec:
  lifeCycle: 5           # Periode retensi log dalam hari
  logstore: workflow-logstore
  logtailConfig:
    configName: workflow-sls-config
    inputType: plugin    # Gunakan metode input berbasis plugin
    inputDetail:
      plugin:
        inputs:
        - type: service_docker_stdout  # Kumpulkan stdout dan stderr kontainer
          detail:
            Stdout: true
            Stderr: true
EOF

Verifikasi pengumpulan log

Setelah mengaktifkan SLS, pastikan bahwa log sedang dikumpulkan:

  1. Masuk ke Konsol SLS.

  2. Temukan proyek k8s-log-<clusterid>.

  3. Klik workflow-logstore dan periksa apakah entri log muncul.

Jika tidak ada log yang muncul, periksa apakah resource kustom AliyunLogConfig telah dibuat:

kubectl get aliyunlogconfigs -n default

Output harus mencantumkan workflow-sls-config tanpa status error. Jika tidak muncul atau mengalami error, ulangi langkah pengaktifan atau verifikasi izin Pengguna RAM.

Akses log dengan Argo CLI

Argo CLI menyediakan dua cara untuk melihat log alur kerja. Metode langsung (flag --sls) direkomendasikan karena tidak memerlukan Argo Server.

Anda dapat menjalankan kubectl logs <pod-name> untuk melihat log pod yang masih ada, tetapi perintah ini secara default hanya menampilkan hingga 2.000 baris. Untuk melihat lebih banyak log atau log pod yang telah dihapus, gunakan salah satu metode berikut.

Gunakan Argo CLI secara langsung (direkomendasikan)

Prasyarat

  • Alibaba Cloud Argo CLI versi 3.4.12 telah terinstal.

  • Jika Anda menggunakan Pengguna RAM, kebijakan AliyunLogReadOnlyAccess harus telah dilampirkan pada Pengguna RAM tersebut.

Langkah-langkah

  1. Berikan akses Argo CLI ke kluster Anda:

    argo config init  # Ikuti prompt untuk memasukkan ID AccessKey dan Rahasia AccessKey Anda.
  2. Kueri log:

    # Lihat log untuk pod tertentu
    argo logs <workflow-name> <pod-name> --sls
    
    # Unduh semua log untuk suatu alur kerja sebagai file ZIP
    argo logs <workflow-name> --sls

Gunakan Argo Server

Untuk mengakses SLS melalui Argo Server, atur variabel lingkungan berikut.

Untuk mengkueri log SLS melalui Argo Server, Anda harus menentukan <pod-name>. Untuk mengakses namespace yang berbeda, peroleh KUBE_TOKEN untuk namespace tersebut.
  1. Atur variabel lingkungan yang diperlukan:

    export ARGO_SERVER=argo.<cluster id>.<region>.alicontainer.com:2746
    export KUBE_TOKEN=$(kubectl create token default -n default --duration 24h)
    export ARGO_TOKEN="Bearer $KUBE_TOKEN"
    export ARGO_INSECURE_SKIP_VERIFY=true
  2. Kueri log untuk pod tertentu:

    argo logs <workflow-name> <pod-name>

Lihat log untuk alur kerja yang dipertahankan ke database

Jika suatu alur kerja dipertahankan ke database, Anda dapat mengunduh log-nya setelah alur kerja tersebut dihapus.

  1. Berikan akses Argo CLI ke kluster Anda:

    argo config init  # Ikuti prompt untuk memasukkan ID AccessKey dan Rahasia AccessKey Anda.
  2. Dapatkan UID alur kerja yang diarsipkan:

    argo archive list

    Output yang diharapkan:

    NAMESPACE   NAME                   STATUS      AGE   DURATION   PRIORITY   MESSAGE   P/R/C   PARAMETERS   UID
    default     hello-world-l6c2r      Succeeded   3d    1m         0                    0/0/0                179eaef0-fde3-496f-946d-549e8f******
  3. Unduh log alur kerja menggunakan UID:

    argo archive logs 179eaef0-fde3-496f-946d-549e8f******

    Log disimpan sebagai <workflow-name>.zip di direktori saat ini.

Lihat log di Argo UI

Argo UI menampilkan log pod alur kerja secara langsung. Jika suatu pod dihapus, log SLS akan ditampilkan menggantikan output pod langsung.

View logs

Nonaktifkan SLS

  1. Hapus resource kustom AliyunLogConfig:

    kubectl delete aliyunlogconfigs.log.alibabacloud.com workflow-sls-config -n default
  2. Masuk ke Konsol SLS dan hapus Logstore workflow-logstore.

Langkah selanjutnya