Layanan Knative menghasilkan log di setiap node, tetapi tanpa agen pengumpulan, log tersebut hilang ketika pod diskalakan turun atau direstart. ACK terintegrasi dengan Simple Log Service (SLS) untuk mengumpulkan log teks kontainer dari Layanan Knative tanpa memodifikasi kode aplikasi Anda. Setelah komponen pengumpulan log diinstal, agen DaemonSet dijalankan di setiap node dan meneruskan log dari semua kontainer di node tersebut ke SLS untuk dikueri dan dianalisis.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Mendeploy Knative di kluster Anda. Lihat Deploy dan kelola Knative.
Membuat Layanan Knative. Lihat Deploy aplikasi Knative dengan cepat.
Langkah 1: Instal komponen pengumpulan log
ACK mendukung dua komponen pengumpulan log: LoongCollector dan Logtail. Instal satu komponen per kluster—Anda tidak dapat menjalankan keduanya secara bersamaan.
| Komponen | Status | Kapan digunakan |
|---|---|---|
| LoongCollector | rilis canary | Kluster baru di wilayah yang didukung |
| Logtail (logtail-ds) | Generally available | Kluster yang sudah ada atau wilayah yang belum didukung oleh LoongCollector |
Instal LoongCollector
LoongCollector adalah agen pengumpulan log generasi berikutnya dari SLS dan merupakan versi peningkatan dari Logtail. Agen ini diharapkan mengintegrasikan kemampuan Application Real-Time Monitoring Service (ARMS), termasuk pengumpulan data berbasis Managed Service for Prometheus dan pengumpulan data non-intrusif berbasis Extended Berkeley Packet Filter (eBPF). Untuk informasi lebih lanjut, lihat Pengumpulan data berbasis LoongCollector.
Anda tidak dapat menginstal loongcollector dan logtail-ds secara bersamaan. Jika logtail-ds sudah terinstal di kluster Anda, Anda tidak dapat langsung meningkatkannya ke loongcollector. Solusi peningkatan akan segera tersedia.
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, klik kluster yang ingin Anda kelola. Di panel navigasi kiri, pilih Operations > Add-ons.
Di tab Logs and Monitoring, temukan komponen loongcollector dan klik Install.
Setelah instalasi, SLS secara otomatis membuat proyek bernama k8s-log-${your_k8s_cluster_id} dan resource berikut:
| Jenis resource | Nama resource | Deskripsi | Contoh |
|---|---|---|---|
| Machine group | k8s-group-${your_k8s_cluster_id} | Machine group untuk loongcollector-ds, digunakan untuk pengumpulan log | k8s-group-my-cluster-123 |
| Machine group | k8s-group-${your_k8s_cluster_id}-cluster | Machine group untuk loongcollector-cluster, digunakan untuk pengumpulan metrik | k8s-group-my-cluster-123-cluster |
| Machine group | k8s-group-${your_k8s_cluster_id}-singleton | Machine group untuk instans tunggal, digunakan untuk membuat konfigurasi LoongCollector | k8s-group-my-cluster-123-singleton |
| Logstore | config-operation-log | Menyimpan log loongcollector-operator. Jangan hapus Logstore ini. | config-operation-log |
Instal Logtail
Logtail adalah agen pengumpulan log dari SLS yang mengumpulkan log dari berbagai sumber data—termasuk Instance ECS, server on-premises, dan server cloud pihak ketiga—tanpa memodifikasi kode aplikasi Anda. Untuk informasi lebih lanjut, lihat Pengumpulan data berbasis Logtail.
Instal Logtail di kluster ACK yang sudah ada
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola dan klik namanya. Di panel navigasi kiri, pilih Operations > Add-ons.
Di tab Logs and Monitoring, temukan komponen logtail-ds dan klik Install.
Instal Logtail saat membuat kluster ACK
Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, klik Create Kubernetes Cluster. Di langkah Component Configurations, pilih Enable Log Service. Topik ini hanya mencakup pengaturan terkait SLS. Untuk pengaturan kluster lainnya, lihat Buat kluster managed ACK. Setelah memilih Enable Log Service, pilih cara membuat proyek SLS:
Select Project: gunakan proyek yang sudah ada untuk mengelola log kontainer yang dikumpulkan.

Create Project: SLS secara otomatis membuat proyek. Nama proyek mencakup
ClusterIDkluster baru.
PentingDi langkah Component Configurations, Enable dipilih secara default untuk Control Plane Component Logs. Saat diaktifkan, sistem secara otomatis mengumpulkan log dari komponen lapisan kontrol kluster dan menagih Anda berdasarkan metode penagihan pay-as-you-go. Tentukan apakah akan mengaktifkannya berdasarkan kebutuhan Anda. Untuk informasi lebih lanjut, lihat Kumpulkan log komponen lapisan kontrol di kluster managed ACK.

Setelah instalasi, SLS secara otomatis membuat proyek bernama k8s-log-<YOUR_CLUSTER_ID> dan resource berikut:
| Jenis resource | Nama resource | Deskripsi | Contoh |
|---|---|---|---|
| Machine group | k8s-group-<YOUR_CLUSTER_ID> | Machine group untuk logtail-daemonset, digunakan untuk pengumpulan log | k8s-group-my-cluster-123 |
| Machine group | k8s-group-<YOUR_CLUSTER_ID>-statefulset | Machine group untuk logtail-statefulset, digunakan untuk pengumpulan metrik | k8s-group-my-cluster-123-statefulset |
| Machine group | k8s-group-<YOUR_CLUSTER_ID>-singleton | Machine group untuk instans tunggal, digunakan untuk membuat konfigurasi Logtail | k8s-group-my-cluster-123-singleton |
| Logstore | config-operation-log | Menyimpan log komponen alibaba-log-controller. Kami menyarankan agar Anda tidak membuat konfigurasi Logtail untuk Logstore ini. Anda dapat menghapus Logstore ini; sistem berhenti mengumpulkan log operasional setelah penghapusan. Dikenai biaya yang sama seperti Logstore biasa. Lihat Item yang dikenai biaya dalam mode bayar per data yang diingest. | — |
Langkah 2: Buat konfigurasi pengumpulan
Pilih salah satu metode berikut untuk membuat konfigurasi pengumpulan. Gunakan hanya satu metode per konfigurasi.
| Metode | Paling cocok untuk |
|---|---|
| CRD - AliyunPipelineConfig (direkomendasikan) | Pengumpulan dan pemrosesan kompleks; konsistensi versi antara konfigurasi Logtail dan kontainer Logtail di kluster ACK. Memerlukan logtail-ds versi lebih baru dari V1.8.10. |
| Konsol SLS | Pengaturan sederhana melalui GUI; beberapa fitur lanjutan dan pengaturan kustom tidak tersedia. |
| Variabel lingkungan | Hanya pengaturan sederhana; log teks satu baris; tidak ada pemrosesan kompleks. Mendukung pengumpulan dari beberapa aplikasi ke Logstore yang sama atau berbeda. |
| CRD - AliyunLogConfig | Skenario lama yang menggunakan CRD lama. Migrasikan ke AliyunPipelineConfig untuk ekstensibilitas dan stabilitas yang lebih baik. |
CRD - AliyunPipelineConfig (direkomendasikan)
Gunakan metode ini untuk konfigurasi baru. AliyunPipelineConfig menyediakan ekstensibilitas dan stabilitas yang lebih baik daripada AliyunLogConfig, serta mendukung pipeline pengumpulan dan pemrosesan yang kompleks. Hanya Logtail V0.5.1 atau lebih baru yang mendukung AliyunPipelineConfig.
Buat Custom Resource (CR) dari Custom Resource Definition (CRD) AliyunPipelineConfig. Konfigurasi diterapkan secara otomatis saat CR dibuat. Untuk memodifikasi konfigurasi, perbarui CR tersebut.
Batasan utama:
Nilai
configNameharus unik dalam proyek SLS.Buat satu CR per konfigurasi Logtail. Jika beberapa CR mereferensikan konfigurasi yang sama, hanya CR pertama yang berlaku.
Langkah-langkah:
Dapatkan file kubeconfig dan hubungkan ke kluster Anda menggunakan kubectl.
Buat file YAML:
vim cube.yamlTambahkan konfigurasi ke file YAML. Lihat contoh di bawah.
Terapkan konfigurasi:
kubectl apply -f cube.yamlLogtail mulai mengumpulkan log dari kontainer yang ditentukan dan mengirimkannya ke SLS.
Setelah pengumpulan log dimulai, buat indeks di Logstore agar Anda dapat mengkueri dan menganalisis log. Lihat Buat indeks.
Kumpulkan log teks satu baris dari kontainer tertentu
Contoh ini membuat konfigurasi Logtail bernama example-k8s-file untuk mengumpulkan log teks satu baris dari kontainer yang namanya mengandung app. File log adalah test.LOG di path /data/logs/app_1. Log disimpan di Logstore k8s-file dalam proyek k8s-log-test.
apiVersion: telemetry.alibabacloud.com/v1alpha1
# Buat CR dari CRD ClusterAliyunPipelineConfig.
kind: ClusterAliyunPipelineConfig
metadata:
# Nama harus unik dalam kluster Kubernetes. Nama ini juga digunakan sebagai nama konfigurasi Logtail.
name: example-k8s-file
spec:
# Tentukan proyek tempat log dikumpulkan.
project:
name: k8s-log-test
# Buat Logstore untuk menyimpan log.
logstores:
- name: k8s-file
config:
inputs:
# Gunakan input_file untuk mengumpulkan log teks dari kontainer.
- Type: input_file
# Path file log di dalam kontainer.
FilePaths:
- /data/logs/app_1/**/test.LOG
# Aktifkan penemuan kontainer.
EnableContainerDiscovery: true
# Filter kontainer. Beberapa kondisi menggunakan logika AND.
ContainerFilters:
# Cocokkan kontainer di namespace default.
K8sNamespaceRegex: default
# Cocokkan kontainer yang namanya mengandung "app".
K8sContainerRegex: ^(.*app.*)$
flushers:
# Gunakan flusher_sls untuk mengirim log ke Logstore.
- Type: flusher_sls
Logstore: k8s-file
# Untuk nilai endpoint dan region yang valid, lihat https://www.alibabacloud.com/help/en/sls/developer-reference/service-entrance
Endpoint: cn-hangzhou.log.aliyuncs.com
Region: cn-hangzhou
TelemetryType: logsUntuk semua parameter AliyunPipelineConfig, lihat (Direkomendasikan) Gunakan AliyunPipelineConfig untuk mengelola konfigurasi Logtail dan CreateLogtailPipelineConfig.
Kumpulkan log teks multi-baris dari semua kontainer
Contoh ini membuat konfigurasi Logtail bernama example-k8s-file untuk mengumpulkan log teks multi-baris dari semua kontainer di kluster. File log adalah test.LOG di path /data/logs/app_1. Log diurai dengan ekspresi reguler dan disimpan di Logstore k8s-file dalam proyek k8s-log-test.
Plugin input_file membaca log dalam format {"content": "2024-06-19 16:35:00 INFO test log\nline-1\nline-2\nend"} dan plugin processor_parse_regex_native menguraikannya menjadi {"time": "2024-06-19 16:35:00", "level": "INFO", "msg": "test log\nline-1\nline-2\nend"}.
apiVersion: telemetry.alibabacloud.com/v1alpha1
# Buat CR dari CRD ClusterAliyunPipelineConfig.
kind: ClusterAliyunPipelineConfig
metadata:
name: example-k8s-file
spec:
project:
name: k8s-log-test
logstores:
- name: k8s-file
config:
# Opsional: tambahkan log contoh sebagai referensi.
sample: |
2024-06-19 16:35:00 INFO test log
line-1
line-2
end
inputs:
- Type: input_file
FilePaths:
- /data/logs/app_1/**/test.LOG
EnableContainerDiscovery: true
# Aktifkan pengumpulan log multi-baris.
Multiline:
# Gunakan regex kustom untuk mengidentifikasi baris pertama setiap entri log.
Mode: custom
StartPattern: \d+-\d+-\d+.*
processors:
# Uraikan log menggunakan ekspresi reguler. Grup penangkapan menentukan field yang diekstraksi.
- Type: processor_parse_regex_native
SourceKey: content
Regex: (\d+-\d+-\d+\s*\d+:\d+:\d+)\s*(\S+)\s*(.*)
Keys: ["time", "level", "msg"]
flushers:
- Type: flusher_sls
Logstore: k8s-file
Endpoint: cn-hangzhou.log.aliyuncs.com
Region: cn-hangzhou
TelemetryType: logsCRD - AliyunLogConfig
Buat CR dari CRD AliyunLogConfig. Konfigurasi diterapkan secara otomatis. Untuk memodifikasinya, perbarui CR tersebut.
Jika beberapa CR mereferensikan konfigurasi Logtail yang sama, menghapus atau memodifikasi satu CR akan memengaruhi semua CR lainnya. Statusnya menjadi tidak konsisten dengan konfigurasi di SLS.
Langkah-langkah:
Dapatkan file kubeconfig dan hubungkan ke kluster Anda menggunakan kubectl.
Buat file YAML:
vim cube.yamlTambahkan konfigurasi. Lihat contoh di bawah. Nilai
configNameharus unik dalam proyek SLS.Terapkan konfigurasi:
kubectl apply -f cube.yaml
Setelah pengumpulan log dimulai, buat indeks agar Anda dapat mengkueri dan menganalisis log. Lihat Buat indeks.
Kumpulkan log teks satu baris dari kontainer tertentu
Contoh ini membuat konfigurasi bernama example-k8s-file untuk mengumpulkan log teks satu baris dari pod yang namanya diawali dengan app. File log adalah test.LOG di path /data/logs/app_1. Log disimpan di Logstore k8s-file dalam proyek k8s-log-test.
apiVersion: log.alibabacloud.com/v1alpha1
kind: AliyunLogConfig
metadata:
name: example-k8s-file
namespace: kube-system
spec:
# Jika dibiarkan kosong, proyek bernama k8s-log-<your_cluster_id> digunakan.
project: k8s-log-test
# Jika Logstore yang ditentukan tidak ada, SLS membuatnya secara otomatis.
logstore: k8s-file
logtailConfig:
# Atur ke "file" untuk log teks.
inputType: file
configName: example-k8s-file
inputDetail:
# Mode sederhana untuk log teks.
logType: common_reg_log
logPath: /data/logs/app_1
# Mendukung karakter wildcard (* dan ?). Contoh: log_*.log
filePattern: test.LOG
# Diperlukan untuk pengumpulan log kontainer.
dockerFile: true
advanced:
k8s:
K8sPodRegex: '^(app.*)$'Untuk semua parameter CR, lihat Gunakan AliyunLogConfig untuk mengelola konfigurasi Logtail dan CreateConfig.
Konsol SLS
Masuk ke Konsol Simple Log Service.
Di bagian Quick Data Import, klik Import Data. Di kotak dialog Import Data, klik kartu Kubernetes - File.

Pilih proyek dan Logstore yang akan digunakan, lalu klik Next. Pilih proyek yang dibuat saat Anda menginstal komponen Logtail.
Di langkah Machine Group Configurations, konfigurasikan hal berikut:
Pilih opsi machine group berdasarkan pengaturan Anda:
Kubernetes Clusters > ACK Daemonset
Kubernetes Clusters > Self-managed Cluster in DaemonSet Mode
PentingPengaturan selanjutnya bervariasi tergantung opsi yang Anda pilih.
Konfirmasi bahwa machine group yang diperlukan muncul di bagian Applied Server Groups, lalu klik Next. Setelah menginstal Logtail di kluster ACK, SLS secara otomatis membuat machine group bernama
k8s-group-${your_k8s_cluster_id}yang dapat Anda gunakan langsung.PentingUntuk membuat machine group baru, klik Create Machine Group dan konfigurasikan parameter. Lihat Kumpulkan log kontainer dari kluster ACK.
Jika status heartbeat machine group adalah FAIL, klik Automatic Retry. Jika masalah berlanjut, lihat Bagaimana cara memecahkan masalah error terkait machine group Logtail?
Buat konfigurasi Logtail dan klik Next. SLS mulai mengumpulkan log setelah konfigurasi dibuat. Opsi filter kontainer Opsi filter berikut tersedia untuk Logtail 1.0.34 dan versi lebih baru. Untuk versi sebelumnya, gunakan hanya variabel lingkungan dan label kontainer.
K8s Pod Name Regular Matching: Cocokkan kontainer berdasarkan nama pod menggunakan ekspresi reguler. Contoh:
^(nginx-log-demo.*)$mencocokkan semua kontainer di pod yang namanya diawali dengannginx-log-demo.K8s Namespace Regular Matching: Cocokkan kontainer berdasarkan namespace. Contoh:
^(default|nginx)$mencocokkan kontainer di namespacenginxdandefault.K8s Container Name Regular Matching: Cocokkan kontainer berdasarkan nama kontainer (seperti yang didefinisikan di
spec.containers). Contoh:^(container-test)$mencocokkan kontainer bernamacontainer-test.Whitelist / Blacklist Label Kontainer: Filter kontainer berdasarkan label kontainer (pasangan kunci-nilai). Namespace dan nama kontainer Kubernetes dipetakan ke label
io.kubernetes.pod.namespacedanio.kubernetes.container.name. Pasangan kunci-nilai dievaluasi dengan logika OR. Pencocokan string adalah default; awali dengan^dan akhiri dengan$untuk pencocokan regex.Whitelist / Blacklist Variabel Lingkungan: Filter kontainer berdasarkan pasangan kunci-nilai variabel lingkungan. Logika OR berlaku. Contoh: atur Environment Variable Name ke
NGINX_SERVICE_PORTdan Environment Variable Value ke^(80|6379)$untuk mencocokkan kontainer di port 80 atau 6379.Whitelist / Blacklist Label Pod Kubernetes: Filter kontainer berdasarkan label pod Kubernetes (berbeda dari label kontainer). Logika OR berlaku. Contoh: atur Label Name ke
environmentdan Label Value ke^(dev|pre)$untuk mencocokkan kontainer dengan label podenvironment:devatauenvironment:pre.
Catatan Konfigurasi Logtail memerlukan waktu hingga 3 menit untuk berlaku.PentingLabel kontainer (diambil melalui
docker inspect) berbeda dari label Kubernetes. Lihat Dapatkan label dan Dapatkan variabel lingkungan.Konfigurasi global
Parameter Deskripsi Nama konfigurasi Masukkan nama unik untuk konfigurasi dalam proyek. Nama tidak dapat diubah nanti. Jenis topik log Pilih cara topik log dihasilkan. Opsi: Machine Group Topic (menggunakan topik machine group untuk membedakan log dari grup berbeda), File Path Extraction (menggunakan regex untuk mengekstrak bagian path file sebagai topik), Custom (tentukan topik kustom). Lihat Topik log. Parameter lanjutan Opsional. Konfigurasikan parameter global lanjutan. Lihat CreateLogtailPipelineConfig. Konfigurasi input
Parameter Deskripsi Logtail deployment mode Pilih Daemonset untuk kasus penggunaan ini. File path type Pilih Path in Container dalam kebanyakan kasus. Pilih Host Path hanya jika volume hostPath dipasang dan Anda ingin mengumpulkan log berdasarkan path yang dipetakan di host kontainer. File path Tentukan path file log. Path Linux diawali dengan /(contoh:/apsara/nuwa//app.Log`). Path Windows diawali dengan huruf drive (contoh: `C:\Program Files\Intel\\*.Log). Gunakan*dan?sebagai karakter wildcard saja. Contoh:/apsara/nuwa/**/*.logmengumpulkan semua file.logdi bawah/apsara/nuwasecara rekursif./var/logs/app_*/**/*.logmengumpulkan file.logdi subdirektori yang cocok denganapp_*di bawah/var/logs./var/log/nginx/**/access*mengumpulkan file yang diawali denganaccessdi bawah/var/log/nginxsecara rekursif.Maximum directory monitoring depth Atur jumlah maksimum level subdirektori yang dipantau untuk wildcard **di path file. Nilai0hanya memantau direktori yang ditentukan. Pertahankan nilai ini serendah mungkin sesuai kebutuhan Anda—nilai besar meningkatkan konsumsi resource pemantauan dan dapat menyebabkan latensi pengumpulan.Enable container metadata preview Saat diaktifkan, menampilkan informasi kontainer yang cocok dan metadata kontainer lengkap setelah konfigurasi dibuat. Container filtering Filter kontainer mana yang akan dikumpulkan lognya. Perilaku filter tergantung pada versi Logtail: jika Logtail sebelum 1.0.34, gunakan hanya variabel lingkungan dan label kontainer. Jika Logtail 1.0.34 atau lebih baru, gunakan filter tingkat Kubernetes (Nama Pod K8s, Namespace, Nama Kontainer, dan Label Pod). Lihat opsi filter kontainer di bawah. Log tag enrichment Tambahkan tag log dari variabel lingkungan dan label pod. File encoding Pilih format encoding file log. First collection size Ukuran data yang dikumpulkan Logtail dari file pada pengumpulan pertama. Default: 1.024 KB. Rentang: 0–10.485.760 KB. Jika file lebih kecil dari 1.024 KB, Logtail dimulai dari awal. Jika lebih besar, Logtail mengumpulkan 1.024 KB terakhir. Collection blacklist Kecualikan direktori atau file tertentu dari pengumpulan menggunakan path eksak atau wildcard ( *dan?). Disarankan maksimal 10 entri. Path tidak boleh diakhiri dengan/. Mendukung File Path Blacklist, File Blacklist, dan Directory Blacklist.Allow file to be collected multiple times Secara default, hanya satu konfigurasi Logtail yang dapat mengumpulkan log dari file tertentu. Aktifkan ini untuk mengizinkan beberapa konfigurasi mengumpulkan dari file yang sama. Advanced parameters Konfigurasikan parameter tambahan secara manual. Lihat Buat konfigurasi pipeline Logtail. Konfigurasi prosesor
Parameter Deskripsi Contoh log Tambahkan contoh log dari skenario nyata untuk membantu konfigurasi pemrosesan. Panjang total maksimum: 1.500 karakter. Mode multi-baris Identifikasi entri log multi-baris. Opsi: Custom (gunakan Regex to Match First Line untuk mengidentifikasi batas log), Multi-line JSON (setiap objek JSON mencakup beberapa baris). Konfigurasikan Processing Method If Splitting Fails: Discard (buang log yang tidak cocok) atau Retain Single Line (pertahankan setiap baris sebagai entri log terpisah). Metode pemrosesan Tambahkan prosesor untuk pemrosesan data. Logtail V2.0 memungkinkan penggabungan prosesor native dan extended secara bebas (prosesor extended harus mengikuti prosesor native). Versi sebelumnya tidak dapat mencampur prosesor native dan extended. Buat indeks dan pratinjau data, lalu klik Next. Indeks teks penuh diaktifkan secara default. Untuk membuat indeks bidang secara otomatis, klik Automatic Index Generation. Untuk informasi lebih lanjut, lihat Buat indeks.
PentingGunakan indeks teks penuh untuk mengkueri semua bidang. Gunakan indeks bidang untuk mengkueri bidang tertentu dan mengurangi trafik indeks. Indeks bidang diperlukan untuk analisis log (kueri harus menyertakan pernyataan SELECT).
Klik Query Log untuk membuka halaman kueri dan analisis Logstore Anda. Tunggu sekitar 1 menit agar indeks berlaku, lalu lihat log yang dikumpulkan di tab Raw Logs. Lihat Panduan kueri dan analisis log.
Variabel lingkungan
Gunakan variabel lingkungan untuk mengonfigurasi pengumpulan log langsung di YAML Layanan Knative Anda. Semua nama variabel lingkungan untuk pengumpulan log harus menggunakan awalan aliyun_logs_. Bagian {key} hanya boleh berisi huruf kecil, angka, dan tanda hubung (-).
Konfigurasi berbasis variabel lingkungan tidak didukung dalam skenario komputasi tepi.
Aktifkan SLS saat membuat Layanan Knative
Masuk ke ACK console. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola dan klik namanya. Di panel navigasi kiri, pilih Applications > Knative.
Klik tab Services, pilih namespace, dan klik Create from Template. Pilih Custom di bagian Sample Template dan gunakan YAML berikut:
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: helloworld-go-log
spec:
template:
spec:
containers:
- name: my-demo-app
image: 'registry.cn-hangzhou.aliyuncs.com/log-service/docker-log-test:latest'
env:
# Kumpulkan stdout ke Logstore "log-stdout".
- name: aliyun_logs_log-stdout
value: stdout
# Kumpulkan file /var/demo/*.log ke Logstore "log-varlog".
- name: aliyun_logs_log-varlog
value: /var/demo/*.log
# Tambahkan tag kustom ke semua log yang dikumpulkan oleh kontainer ini.
- name: aliyun_logs_mytag1_tags
value: tag1=v1
volumeMounts:
- name: volumn-sls-mydemo
mountPath: /var/demo
# Opsional: tambahkan perintah sleep jika pod sering restart.
command: ["sh", "-c"]
args: ["sleep 3600"]
volumes:
- name: volumn-sls-mydemo
emptyDir: {}Cara kerja variabel lingkungan:
aliyun_logs_{key}:{key}menjadi nama Logstore dan nama konfigurasi. Aturvaluekestdoutuntuk mengumpulkan stdout kontainer, atau ke path file untuk mengumpulkan file log.aliyun_logs_log-stdout: stdoutmembuat Logstorelog-stdoutdan mengumpulkan stdout dari kontainer.aliyun_logs_log-varlog: /var/demo/*.logmembuat Logstorelog-varlogdan mengumpulkan file yang cocok.
aliyun_logs_{key}_tags: Menambahkan tag ke semua log dari kontainer. Format:{tag-key}={tag-value}.{key}adalah nama tag (tanpa garis bawah).volumeMounts: Diperlukan saat mengumpulkan file log non-stdout.mountPathharus sesuai dengan direktori di variabel path log.
Klik Create untuk mengirimkan konfigurasi.
(Opsional) Pengaturan variabel lingkungan lanjutan
| Variabel | Wajib | Deskripsi | Contoh | Catatan |
|---|---|---|---|---|
aliyun_logs_{key} | Ya | Menentukan sumber log. Atur ke stdout atau path file log. Membuat Logstore {key} jika aliyun_logs_{key}_logstore tidak diatur. | value: stdout atau value: /var/log/nginx/access.log | Log dikumpulkan dalam mode sederhana secara default. Untuk penguraian, gunakan konsol SLS atau CRD. |
aliyun_logs_{key}_tags | Tidak | Menambahkan tag ke log. Format: {tag-key}={tag-value}. | value: app=catalina | — |
aliyun_logs_{key}_project | Tidak | Menentukan proyek SLS. Default ke proyek yang dibuat saat instalasi Logtail. | value: my-k8s-project | Proyek harus berada di wilayah yang sama dengan Logtail. |
aliyun_logs_{key}_logstore | Tidak | Menentukan nama Logstore. Default ke {key}. | value: my-logstore | — |
aliyun_logs_{key}_shard | Tidak | Jumlah shard untuk Logstore. Nilai valid: 1–10. Default: 2. | value: '4' | Tidak berpengaruh jika Logstore sudah ada. |
aliyun_logs_{key}_ttl | Tidak | Periode retensi log dalam hari. Nilai valid: 1–3650. Atur ke 3650 untuk penyimpanan permanen. Default: 90 hari. | value: '3650' | Tidak berpengaruh jika Logstore sudah ada. |
aliyun_logs_{key}_machinegroup | Tidak | Machine group tempat aplikasi dideploy. Default ke machine group Logtail. | value: my-machine-group | Lihat Kumpulkan log kontainer dari kluster ACK. |
aliyun_logs_{key}_logstoremode | Tidak | Jenis Logstore. Default: standard. Opsi: standard (mendukung analisis log; pemantauan waktu nyata dan analisis interaktif) atau query (kueri berkinerja-tinggi; biaya indeks sekitar separuh dari standard; tidak ada analisis SQL; cocok untuk volume data besar atau retensi panjang tanpa analisis — jika log disimpan selama berminggu-minggu atau berbulan-bulan, periode retensi log dianggap panjang). | value: standard atau value: query | Memerlukan image logtail-ds v1.3.1 atau lebih baru. Tidak berpengaruh jika Logstore sudah ada. |
Langkah 3: Kueri dan analisis log
Masuk ke Konsol Simple Log Service.
Di bagian Projects, klik proyek untuk membuka halaman detailnya.

Di panel navigasi kiri, klik ikon
di sebelah Logstore. Di daftar drop-down, pilih Search & Analysis.
Tunggu sekitar 1 menit agar indeks berlaku, lalu lihat log di tab Raw Logs. Lihat Panduan kueri dan analisis log.
Bidang default dalam log teks kontainer
Setiap log teks kontainer mencakup bidang berikut secara default:
| Bidang | Deskripsi |
|---|---|
__tag__:__hostname__ | Nama host kontainer |
__tag__:__path__ | Path file log di kontainer |
__tag__:_container_ip_ | Alamat IP kontainer |
__tag__:_image_name_ | Nama image yang digunakan oleh kontainer |
__tag__:_pod_name_ | Nama pod |
__tag__:_namespace_ | Namespace pod |
__tag__:_pod_uid_ | UID pod |
Langkah selanjutnya
Untuk memecahkan masalah error pengumpulan log, lihat Bagaimana cara melihat error pengumpulan Logtail? dan Apa yang harus saya lakukan jika terjadi error saat mengumpulkan log dari kontainer?
Untuk deploy Logtail melalui DaemonSet guna mengumpulkan log teks dari kluster ACK, lihat Kumpulkan log kontainer dari kluster ACK.
Untuk melihat dasbor pemantauan Knative, lihat Lihat dasbor pemantauan Knative.
Untuk mengonfigurasi peringatan pemantauan untuk Layanan Knative, lihat Konfigurasi alerting untuk Layanan Knative.