全部产品
Search
文档中心

Simple Log Service:Gunakan AliyunLogConfig untuk mengelola konfigurasi Logtail

更新时间:Jul 06, 2025

Simple Log Service mendefinisikan CustomResourceDefinition (CRD) bernama AliyunLogConfig. Anda dapat menggunakan file YAML untuk membuat CustomResource (CR) dari CRD ini guna mengelola konfigurasi Logtail. Topik ini menjelaskan cara menggunakan AliyunLogConfig untuk mengelola konfigurasi Logtail.

Prasyarat

Batasan

Anda dapat membuat CR dari CRD AliyunLogConfig untuk membuat konfigurasi Logtail. Jika Anda memodifikasi konfigurasi Logtail di konsol Simple Log Service, modifikasi tersebut tidak disinkronkan ke CR. Jika Anda ingin memodifikasi konfigurasi Logtail dalam CR, Anda harus memperbarui CR. Jika Anda hanya memodifikasi konfigurasi Logtail di konsol Simple Log Service, ketidaksesuaian konfigurasi Logtail mungkin terjadi.

Prosedur

Buat konfigurasi Logtail

Anda harus membuat CR dari CRD AliyunLogConfig. Kemudian, komponen alibaba-log-controller secara otomatis membuat konfigurasi Logtail berdasarkan CR. Setelah konfigurasi Logtail dibuat, konfigurasi tersebut diterapkan secara otomatis, dan Logtail mulai mengumpulkan log ke Simple Log Service sesuai dengan konfigurasi tersebut.

  1. Dapatkan file kubeconfig kluster dan gunakan kubectl untuk terhubung ke kluster.

  2. Jalankan perintah berikut untuk membuat file YAML. Dalam perintah berikut, cube.yaml adalah nama file contoh. Anda dapat menentukan nama file lain sesuai kebutuhan bisnis Anda.

vim cube.yaml
  1. Masukkan skrip berikut ke dalam file YAML dan konfigurasikan parameter sesuai kebutuhan bisnis Anda. Untuk informasi lebih lanjut tentang parameter CR, lihat Parameter CR.

apiVersion: log.alibabacloud.com/v1alpha1      # Nilai default digunakan. Anda tidak perlu memodifikasi parameter ini. 
kind: AliyunLogConfig                          # Nilai default digunakan. Anda tidak perlu memodifikasi parameter ini. 
metadata:
  name: test-config                            # Nama sumber daya. Nama harus unik di kluster Kubernetes saat ini. 
spec:
  logstore: k8s-stdout                         # Nama Logstore. Jika Logstore yang Anda tentukan tidak ada, Simple Log Service secara otomatis membuat Logstore. 
  logtailConfig:                               # Konfigurasi Logtail. 
    inputType: plugin                          # Jenis sumber data. 
    configName: test-config                    # Nama konfigurasi Logtail. 
    inputDetail:                               # Pengaturan detail konfigurasi Logtail. 
      ...
  1. Jalankan perintah berikut untuk membuat CR dari CRD AliyunLogConfig. Komponen alibaba-log-controller membuat konfigurasi Logtail berdasarkan CR. Lalu, konfigurasi Logtail diterapkan secara otomatis. Setelah konfigurasi Logtail diterapkan, Logtail mulai mengumpulkan log ke Simple Log Service. Dalam perintah berikut, cube.yaml adalah nama file contoh. Anda dapat menentukan nama file lain sesuai kebutuhan bisnis Anda.

kubectl apply -f cube.yaml

Lihat konfigurasi Logtail

  • Lihat semua konfigurasi Logtail yang dibuat di kluster Kubernetes saat ini berdasarkan CR dari CRD AliyunLogConfig.

    Anda dapat menjalankan perintah berikut untuk melihat konfigurasi Logtail:

    kubectl get aliyunlogconfigs
  • Lihat pengaturan detail dan status konfigurasi Logtail yang dibuat berdasarkan CR dari CRD AliyunLogConfig.

    Anda dapat menjalankan perintah kubectl get aliyunlogconfigs <config_name> -o yaml untuk melihat konfigurasi Logtail. Dalam perintah ini, <config_name> adalah nama CR yang diperlukan. Anda dapat menentukan nama lain sesuai kebutuhan bisnis Anda.

    Informasi serupa dengan kode berikut akan ditampilkan. Bidang status dan statusCode menunjukkan status konfigurasi Logtail.

    • Jika nilai bidang statusCode adalah 200, konfigurasi Logtail berhasil diterapkan.

    • Jika nilai bidang statusCode bukan 200, konfigurasi Logtail gagal diterapkan.

    apiVersion: log.alibabacloud.com/v1alpha1
    kind: AliyunLogConfig
    metadata:
      name: example-k8s-file
      namespace: kube-system
    spec:
      project: k8s-log-test
      logstore: k8s-file
      logtailConfig:
        inputType: file
        configName: example-k8s-file
        inputDetail:
          logType: common_reg_log
          logPath: /data/logs/app_1
          filePattern: test.LOG
          dockerFile: true
    status:
      status: OK
      statusCode: 200

Perbarui konfigurasi Logtail

Untuk memperbarui konfigurasi Logtail, cukup modifikasi file YAML yang digunakan untuk membuat CR terkait dan terapkan file baru.

  1. Dapatkan file kubeconfig kluster dan gunakan kubectl untuk terhubung ke kluster.

  2. Modifikasi file YAML yang digunakan untuk membuat CR Anda. Dalam perintah berikut, cube.yaml adalah nama file contoh. Anda dapat menentukan nama file lain sesuai kebutuhan bisnis Anda.

vim cube.yaml
  1. Modifikasi parameter dalam file YAML. Untuk informasi lebih lanjut tentang parameter, lihat Parameter CR.

  2. Jalankan perintah berikut untuk menerapkan file baru. Dalam perintah berikut, cube.yaml adalah nama file contoh. Anda dapat menentukan nama file lain sesuai kebutuhan bisnis Anda.

kubectl apply -f cube.yaml

Hapus konfigurasi Logtail

Untuk menghapus konfigurasi Logtail, cukup hapus CR berdasarkan konfigurasi Logtail yang dibuat. Dalam perintah berikut, <config_name> adalah nama CR yang diperlukan. Anda dapat menentukan nama lain sesuai kebutuhan bisnis Anda.

kubectl delete aliyunlogconfigs <config_name>
Catatan

Setelah CR dihapus, konfigurasi Logtail yang dibuat berdasarkan CR secara otomatis dihapus.

Parameter CR

  • apiVersion

    Nilainya tetap sebagai log.alibabacloud.com/v1alpha1.

  • kind

    Nilainya tetap sebagai AliyunLogConfig.

  • metadata

    Bidang

    Tipe

    Diperlukan

    Deskripsi

    name

    string

    Ya

    Pengenal unik CR. Kami sarankan Anda menetapkan bidang ini ke nilai yang sama dengan bidang Spec.logtailConfig.configName.

    namespace

    string

    Tidak

    Namespace tempat CR berada.

  • Spec

    Bidang

    Tipe

    Diperlukan

    Deskripsi

    project

    string

    Tidak

    Nama proyek. Anda harus memasukkan nama proyek default kluster saat ini. Anda dapat memperoleh nama dari variabel lingkungan ALICLOUD_LOG_PROJECT yang dikonfigurasi untuk komponen alibaba-log-controller.

    Catatan

    Jika proyek yang ditentukan tidak ada, Simple Log Service secara otomatis membuat proyek.

    logstore

    string

    Ya

    Nama Logstore.

    Catatan
    • Jika Logstore yang ditentukan tidak ada, Simple Log Service secara otomatis membuat Logstore.

    • Jika Logstore yang ditentukan ada, bidang terkait Logstore berikutnya dalam tabel ini tidak berlaku.

    logtailConfig

    AliyunLogConfigDetail

    Ya

    Pengaturan detail konfigurasi Logtail.

    uid

    string

    Tidak

    ID akun. Jika Anda mengumpulkan log lintas akun, Anda harus mengonfigurasi bidang ini dan menyertakan ALICLOUD_LOG_ACCOUNT_INFOS={"<uid>":{"accessKeyID":"<your_access_key_id>","accessKeySecret":"<your_access_key_secret>"}} dalam pengaturan variabel lingkungan untuk komponen alibaba-log-controller.

    Catatan
    • Bidang ini tersedia hanya jika Anda menggunakan alibaba-log-controller V0.3.2 dan yang lebih baru.

    • Bidang ini menentukan akun tempat proyek berada. Untuk mengumpulkan log ke akun menggunakan Logtail, Anda harus mengonfigurasi pengenal pengguna untuk Logtail Anda. Untuk informasi lebih lanjut, lihat Konfigurasikan pengenal pengguna.

    endpoint

    string

    Tidak

    Endpoint proyek. Untuk informasi lebih lanjut, lihat Endpoint. Secara default, endpoint untuk wilayah tempat kluster saat ini berada digunakan. Jika proyek dan kluster berada di wilayah yang berbeda, Anda harus mengonfigurasi bidang ini.

    Catatan
    • Bidang ini tersedia hanya jika Anda menggunakan alibaba-log-controller V0.4.1 dan yang lebih baru.

    • Bidang ini menentukan endpoint untuk wilayah tempat konfigurasi Logtail berada. Untuk mengumpulkan log ke proyek berdasarkan endpoint menggunakan Logtail, Anda juga harus mengonfigurasi bidang config_server_address dan data_server_list untuk Logtail Anda. Untuk informasi lebih lanjut, lihat File konfigurasi Logtail dan file rekaman.

    logstoreMode

    string

    Tidak

    Tipe Logstore. Untuk informasi lebih lanjut, lihat Tipe Logstore. Nilai default: standard. Nilai valid:

    • query: Query Logstore

    • standard: Standard Logstore

    Catatan

    Bidang ini tersedia hanya jika Anda menggunakan alibaba-log-controller V0.3.3 dan yang lebih baru.

    shardCount

    int

    Tidak

    Jumlah shard dalam Logstore. Untuk informasi lebih lanjut, lihat Shard. Nilai default: 2. Nilai valid: 1 hingga 10.

    logstoreMaxSplitShard

    int

    Tidak

    Jumlah maksimum shard menjadi mana shard yang ada dalam Logstore dapat dibagi secara otomatis. Untuk informasi lebih lanjut, lihat Sharding Otomatis. Nilai default: 32. Nilai valid: 1 hingga 256.

    logstoreAutoSplit

    bool

    Tidak

    Menentukan apakah akan mengaktifkan sharding otomatis untuk Logstore. Untuk informasi lebih lanjut, lihat Sharding Otomatis. Nilai default: true.

    lifeCycle

    int

    Tidak

    Periode retensi log di Logstore. Satuan: hari. Untuk informasi lebih lanjut, lihat Data Retention Period. Nilai default: 180. Nilai valid: 1 hingga 3.650. Jika Anda mengatur bidang ini ke 3.650, log akan disimpan secara permanen.

    logstoreHotTTL

    int

    Tidak

    Periode retensi log di lapisan penyimpanan panas Logstore. Satuan: hari. Untuk informasi lebih lanjut, lihat Penyimpanan Berlapis Cerdas. Nilai default: 0. Nilai dari bidang ini harus lebih kecil dari nilai dari bidang lifeCycle dan lebih besar atau sama dengan 7.

    logstoreTelemetryType

    string

    Tidak

    Tipe data terobservasi dalam Logstore. Untuk informasi lebih lanjut, lihat telemetryType. Nilai default: None. Nilai valid:

    • None: data log

    • Metrics: data metrik

    logstoreAppendMeta

    bool

    Tidak

    Menentukan apakah akan mencatat alamat IP publik untuk Logstore. Untuk informasi lebih lanjut, lihat Log IP Publik. Nilai default: true.

    logstoreEnableTracking

    bool

    Tidak

    Menentukan apakah akan mengaktifkan fitur pelacakan web untuk Logstore. Untuk informasi lebih lanjut, lihat WebTracking. Nilai default: false.

    logstoreEncryptConf

    object

    Tidak

    Pengaturan enkripsi Logstore. Untuk informasi lebih lanjut, lihat Struktur data umum. Bidang ini kosong secara default.

    logstoreMeteringMode

    string

    Tidak

    Mode penagihan Logstore. Untuk informasi lebih lanjut, lihat Mode Penagihan. Bidang ini kosong secara default. Nilai valid:

    • ChargeByFunction: mode penagihan berdasarkan fitur

    • ChargeByDataIngest: mode penagihan berdasarkan data yang di-ingest

    Catatan
    • Bidang ini tersedia hanya jika Anda menggunakan alibaba-log-controller V0.4.3 dan yang lebih baru.

    • Jika Anda menetapkan bidang logstoreMode ke query, Anda harus menetapkan bidang ini ke ChargeByFunction.

    • Jika mode penagihan berdasarkan data yang di-ingest dinonaktifkan untuk akun Anda, Anda hanya dapat menetapkan bidang ini ke ChargeByFunction.

    machineGroups

    array

    Tidak

    Grup mesin yang terkait dengan konfigurasi Logtail. Untuk informasi lebih lanjut, lihat Pengantar. Saat Anda memasang komponen logtail-ds, Simple Log Service secara otomatis membuat grup mesin bernama k8s-group-${your_k8s_cluster_id}. Secara default, grup mesin ini digunakan.

    configTags

    map

    Tidak

    Tag kustom yang ditambahkan untuk mengidentifikasi konfigurasi Logtail.

    Catatan

    Bidang ini tersedia hanya jika Anda menggunakan alibaba-log-controller V0.4.2 dan yang lebih baru.

    AliyunLogConfigDetail

    Untuk informasi lebih lanjut tentang bidang-bidangnya, lihat Konfigurasi Logtail. Format data parameter AliyunLogConfigDetail sama dengan format data konfigurasi Logtail.

    Bidang

    Tipe

    Diperlukan

    Deskripsi

    configName

    string

    Ya

    Nama konfigurasi Logtail. Nama harus unik di proyek tempat konfigurasi Logtail berada. Setelah konfigurasi Logtail dibuat, Anda tidak dapat mengubah nama konfigurasi Logtail. Kami sarankan Anda menetapkan bidang ini ke nilai yang sama dengan bidang metadata.name.

    Nama harus memenuhi persyaratan berikut:

    • Nama hanya dapat berisi huruf kecil, angka, tanda hubung (-), dan garis bawah (_).

    • Nama harus dimulai dan diakhiri dengan huruf kecil atau angka.

    • Nama harus memiliki panjang 2 hingga 128 karakter.

    logSample

    string

    Tidak

    Contoh log. Nilainya harus kurang dari 1.500 byte panjangnya.

    inputType

    string

    Ya

    Metode pengumpulan log. Nilai valid:

    • plugin: Log seperti stdout dan stderr serta log biner MySQL dikumpulkan menggunakan plugin Logtail.

    • file: Log teks dikumpulkan menggunakan mode yang ada, termasuk mode regex penuh dan mode pembatas.

    inputDetail

    Object

    Ya

    Pengaturan detail sumber data. Untuk informasi lebih lanjut, lihat inputDetail.