全部产品
Search
文档中心

Simple Log Service:Kumpulkan hasil kueri MySQL

更新时间:Jul 11, 2025

Topik ini menjelaskan cara membuat konfigurasi Logtail untuk mengumpulkan hasil kueri MySQL.

Prasyarat

  • Logtail V0.16.0 atau lebih baru terpasang di Server Linux, atau Logtail V1.0.0.8 atau lebih baru terpasang di Server Windows. Untuk informasi lebih lanjut, lihat Instal, Jalankan, Tingkatkan, dan Hapus Instalasi Logtail.

    Penting

    Pastikan server tempat Logtail terinstal dapat terhubung ke database MySQL.

  • Alamat IP server tempat Logtail terinstal ditambahkan ke daftar putih database MySQL dari mana Anda ingin mengumpulkan hasil kueri MySQL.

    Sebagai contoh, untuk mengonfigurasi daftar putih untuk instance ApsaraDB RDS for MySQL, lihat Konfigurasikan Daftar Putih Alamat IP.

  • Untuk mengumpulkan hasil kueri MySQL menggunakan CRD-AliyunPipelineConfig, pastikan komponen Logtail terinstal di kluster.

    Untuk informasi lebih lanjut, lihat Instal Komponen Logtail.

Prosedur

Konsol Simple Log Service

  1. Masuk ke Konsol Simple Log Service.

  2. Di sisi kanan halaman yang muncul, klik kartu Quick Data Import.

    image

  3. Di halaman Data Import, pilih MySQL Query Result - Plug-in.

  4. Pilih proyek dan penyimpanan log, lalu klik Next.

  5. Di langkah Machine Group Configurations, konfigurasikan grup mesin.

    1. Konfigurasikan parameter Skenario dan Lingkungan Instalasi sesuai kebutuhan.

      Penting

      Anda harus mengonfigurasi parameter Skenario dan Lingkungan Instalasi terlepas dari apakah grup mesin tersedia atau tidak. Pengaturan parameter memengaruhi konfigurasi selanjutnya.

    2. Pastikan grup mesin ditampilkan di bagian Applied Server Groups, dan klik Next.

      Grup mesin tersedia

      Pilih grup mesin dari bagian Source Machine Group.

      image

      Tidak ada grup mesin tersedia

      Klik Create Machine Group. Di panel Create Machine Group, konfigurasikan parameter. Anda dapat menyetel parameter Pengenal Grup Mesin ke IP Address atau Custom Identifier. Untuk informasi lebih lanjut, lihat Buat Grup Mesin Berbasis Pengenal Kustom atau Buat Grup Mesin Berbasis Alamat IP.

      Penting

      Jika Anda menerapkan grup mesin segera setelah membuat grup mesin, status detak jantung grup mesin mungkin menjadi FAIL. Masalah ini terjadi karena grup mesin belum terhubung ke Simple Log Service. Untuk menyelesaikan masalah ini, Anda dapat mengklik Automatic Retry. Jika masalah tetap ada, lihat Apa yang Harus Saya Lakukan Jika Tidak Ada Koneksi Detak Jantung yang Terdeteksi pada Logtail?.

  6. Di langkah Configure Data Source, konfigurasikan parameter Configuration Name dan Plug-in Configuration. Lalu, klik Next.

    Anda dapat mengonfigurasi sumber data menggunakan formulir atau editor (konfigurasi JSON). Untuk informasi lebih lanjut, lihat Konfigurasi Input Ekstensi: Plugin Input MySQL.

    image

  7. Buat indeks dan pratinjau data, lalu klik Next. Secara default, pengindeksan teks penuh diaktifkan di Simple Log Service. Anda juga dapat secara manual membuat indeks bidang untuk log yang dikumpulkan atau klik Automatic Index Generation. Lalu, Simple Log Service menghasilkan indeks bidang. Untuk informasi lebih lanjut, lihat Buat Indeks.

    Penting

    Untuk menanyakan semua bidang dalam log, kami sarankan Anda menggunakan indeks teks penuh. Untuk menanyakan hanya bidang tertentu, kami sarankan Anda menggunakan indeks bidang. Ini membantu mengurangi lalu lintas indeks. Untuk menganalisis bidang, buat indeks bidang. Anda harus menyertakan pernyataan SELECT dalam pernyataan kueri Anda untuk analisis.

  8. Klik Query Log. Anda akan dialihkan ke halaman kueri dan analisis logstore Anda.

    Tunggu sekitar 1 menit agar indeks berlaku. Lalu, lihat log yang dikumpulkan di tab Raw Logs. Untuk informasi lebih lanjut, lihat Panduan Kueri dan Analisis Log.

CRD-AliyunPipelineConfig

Bagian ini menjelaskan cara membuat konfigurasi koleksi di kluster ACK.

  1. Masuk ke Konsol ACK. Di panel navigasi di sebelah kiri, klik Clusters.

  2. Di halaman Clusters, temukan kluster target. Di kolom Actions, klik More, lalu klik Manage Cluster.

  3. Buat file bernama example-k8s-file.yaml.

    Deskripsi Parameter

    Contoh

    apiVersion: telemetry.alibabacloud.com/v1alpha1
    # Buat CR dari ClusterAliyunPipelineConfig CRD.
    kind: ClusterAliyunPipelineConfig
    metadata:
      # Nama sumber daya. Nama harus unik di kluster Kubernetes saat ini. Nama sama dengan nama konfigurasi Logtail yang dibuat
      name: example-crd-mysql
    spec:
      # Tentukan proyek ke mana log dikumpulkan.
      project:
        name: k8s-log-clusterid
      # Buat Logstore untuk menyimpan log.
      logstores:
        - name: crd-mysql-test
      # Konfigurasikan parameter untuk konfigurasi Logtail.
      config:
        # Masukkan log sampel. Anda bisa membiarkan parameter ini kosong.
        sample: ''
        inputs:
        - Type: service_mysql
          Address: "rm-*.mysql.rds.aliyuncs.com"
          CheckPoint: true
          CheckPointColumn: id
          CheckPointColumnType: int
          CheckPointSavePerPage: true
          CheckPointStart: "0"
          Database: ****
          IntervalMs: 1000
          Limit: true
          MaxSyncSize: 100
          PageSize: 100
          User: ****
          Password: *******
          StateMent: "select * from test where id > ? order by id"
        # Konfigurasikan plugin output.
        flushers:
          # Gunakan plugin flusher_sls untuk mengirim log ke Logstore tertentu.
          - Type: flusher_sls
            Logstore: crd-mysql-test
            Endpoint: cn-hangzhou.log.aliyuncs.com
            Region: cn-hangzhou
            TelemetryType: logs

    Tipe string (wajib)

    Tipe sumber data. Atur nilainya ke service_mysql.

    Alamat string (opsional)

    Alamat MySQL, misalnya, rm-****.mysql.rds.aliyuncs.com.

    Nilai default: 127.0.0.1:3306.

    Jenis alamat:

    • Internal (virtual private cloud (VPC)): digunakan hanya untuk akses internal dari instance (seperti ECS dan instance ACK) di VPC yang sama.

    • Titik akhir publik: digunakan ketika bisnis Anda ditempatkan di VPC lain atau di mesin lokal dan Anda perlu mengakses instance melalui Internet. Anda harus mengajukan titik akhir publik secara manual terlebih dahulu. Untuk informasi lebih lanjut, lihat Ajukan atau Lepaskan Titik Akhir Publik.

    Catatan

    Kami sarankan Anda menggunakan titik akhir pembagian beban baca/tulis internal untuk terhubung ke instance RDS karena koneksi melalui Internet rentan terhadap fluktuasi.

    Pengguna string (opsional)

    Nama pengguna akun yang digunakan untuk masuk ke database MySQL. Nilai default: root.

    Kata Sandi string (opsional)

    Kata sandi akun yang digunakan untuk masuk ke database MySQL.

    Jika Anda memiliki persyaratan keamanan tinggi, kami sarankan Anda menyetel nama pengguna dan kata sandi ke xxx. Setelah konfigurasi koleksi disinkronkan ke server lokal, temukan konfigurasi yang sesuai di file /usr/local/ilogtail/user_log_config.json di server lokal dan ubah konfigurasi. Untuk informasi lebih lanjut, lihat Kumpulkan Hasil Kueri MySQL.

    Penting

    Jika Anda mengubah parameter ini di konsol Simple Log Service, pengaturan parameter dalam konfigurasi Logtail di server Logtail akan ditimpa setelah modifikasi disinkronkan ke server.

    Database string (opsional)

    Nama database MySQL.

    DialTimeOutMs int (opsional)

    Periode timeout untuk koneksi ke database MySQL. Unit: milidetik. Nilai default: 5000.

    ReadTimeOutMs int (opsional)

    Periode timeout untuk membaca dari database MySQL. Unit: milidetik. Nilai default: 5000.

    StateMent string (opsional)

    Pernyataan SELECT.

    Jika Anda menyetel CheckPoint ke true, kondisi WHERE dalam Statement harus mencakup kolom CheckPoint (CheckPointColumn). Anda dapat menggunakan tanda tanya (?) untuk menunjukkan karakter pengganti. Jika Anda menggunakan tanda tanya (?) dalam pernyataan SELECT, Anda juga harus mengonfigurasi parameter CheckPointColumn.

    Sebagai contoh, jika Anda menyetel CheckPointColumn ke id, menyetel CheckPointStart ke 0, dan menyetel StateMent ke SELECT * from ... where id > ?. Setiap kali kueri dilakukan, sistem menyimpan ID catatan data terakhir sebagai checkpoint. Dalam kueri berikutnya, tanda tanya (?) yang ditentukan dalam pernyataan SELECT diganti dengan ID yang sesuai dengan checkpoint yang disimpan.

    Limit boolean (opsional)

    Menentukan apakah menggunakan klausa LIMIT untuk membagi hasil kueri menjadi halaman. Nilai valid:

    • true: menggunakan klausa LIMIT.

    • false (default): tidak menggunakan klausa LIMIT.

    Kami sarankan Anda menggunakan klausa LIMIT untuk membagi hasil kueri menjadi halaman. Jika Anda menyetel Limit ke true, sistem secara otomatis menambahkan klausa LIMIT ke pernyataan SELECT saat kueri SQL dilakukan.

    PageSize int (opsional)

    Jumlah entri per halaman. Parameter ini diperlukan jika Anda menyetel Limit ke true.

    MaxSyncSize int (opsional)

    Jumlah maksimum log yang dapat disinkronkan sekaligus. Nilai default: 0, yang menunjukkan bahwa tidak ada batasan yang diberlakukan.

    CheckPoint boolean (opsional)

    Menentukan apakah akan menggunakan checkpoint selama pengumpulan data. Nilai yang valid:

    • true: menggunakan checkpoint.

    • false (default): tidak menggunakan checkpoint.

    Checkpoint dapat digunakan sebagai titik awal untuk pengumpulan data berikutnya, sehingga data inkremental dapat dikumpulkan.

    CheckPointColumn string (opsional)

    Nama kolom yang menyimpan checkpoint.

    Parameter ini diperlukan jika Anda menyetel CheckPoint ke true.

    Peringatan

    Nilai dalam kolom checkpoint harus bertambah. Jika tidak, beberapa data mungkin tidak dikumpulkan. Nilai maksimum dalam hasil operasi kueri digunakan sebagai input untuk operasi kueri berikutnya.

    CheckPointColumnType string (opsional)

    Parameter ini diperlukan jika Anda menyetel CheckPoint ke true.

    Tipe data kolom CheckPoint. Nilai valid: int dan time. Jika Anda menyetel parameter ini ke int, nilai dalam kolom checkpoint disimpan sebagai bilangan bulat 64-bit. Jika Anda menyetel parameter ini ke time, nilai dalam kolom checkpoint dapat berupa tipe date, time, atau datetime yang didukung oleh MySQL.

    CheckPointStart string (opsional)

    Parameter ini diperlukan jika Anda menyetel CheckPoint ke true.

    Nilai awal kolom checkpoint.

    CheckPointSavePerPage boolean (opsional)

    Parameter ini diperlukan jika Anda menyetel CheckPoint ke true.

    Menentukan apakah menyimpan checkpoint setiap kali hasil kueri dibagi menjadi halaman.

    • true (default): menyimpan checkpoint setiap kali hasil kueri dibagi menjadi halaman.

    • false: menyimpan checkpoint setiap kali hasil kueri disinkronkan.

    IntervalMs int (wajib)

    Interval sinkronisasi. Unit: milidetik. Nilai default: 60000.

  4. Jalankan kubectl apply -f example-k8s-file.yaml. Logtail mulai mengumpulkan data MySQL.

  5. Masuk ke Konsol Simple Log Service. Di bagian Projects, klik yang Anda inginkan.

  6. Klik ikon ikon di sisi kanan logstore yang sesuai, dan pilih Search & Analysis untuk melihat log kueri.

    image