All Products
Search
Document Center

Simple Log Service:Mengonversi field log menjadi metrik

Last Updated:Jun 11, 2026

Gunakan fungsi transformasi data e_to_metric untuk mengonversi field log dari Logstore menjadi metrik di MetricStore, lalu lacak perubahannya seiring waktu. Topik ini menggunakan log akses NGINX sebagai contoh.

Latar Belakang

Data waktu proses aplikasi terbagi menjadi tiga kategori: log, jejak (traces), dan metrik. Log mencatat event diskrit, jejak melacak permintaan di seluruh sistem, dan metrik menangkap pengukuran numerik sepanjang waktu. Layanan Log menyediakan dua jenis penyimpanan:

  • Logstore

    Logstore mengumpulkan, menyimpan, dan melakukan kueri terhadap log dalam Layanan Log. Logstore.

  • MetricStore

    MetricStore mengumpulkan, menyimpan, dan melakukan kueri terhadap metrik dalam Layanan Log. MetricStore mendukung kueri PromQL dan kompatibel dengan protokol Prometheus. MetricStore.

Data log biasanya lebih komprehensif dibandingkan data metrik — metrik pada dasarnya adalah entri log terstruktur. Layanan Log mendukung dua metode untuk mengonversi log menjadi metrik:

Skenario

Sebuah Logstore bernama nginx-demo tersedia di Wilayah Tiongkok (Hangzhou) dan menyimpan log akses NGINX.

Tujuannya adalah memantau tren request_time (durasi permintaan) dan upstream_response_time (waktu respons upstream) per server backend. Konversikan request_time dan upstream_response_time dari Logstore menjadi metrik dengan label berdasarkan field host.

body_bytes_sent:1750
host:www.example.com
http_referer:www.guide.example.com
http_user_agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; it-it) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27
http_x_forwarded_for:203.0.113.10
remote_addr:203.0.113.10
remote_user:p288
request_length:13741
request_method:GET
request_time:71
request_uri:/request/path-1/file-1
status:200
time_local:11/Aug/2021:06:52:27
upstream_response_time:0.66

Prasyarat

Data log telah dikumpulkan. Pengumpulan data.

Langkah 1: Buat MetricStore

Buat MetricStore bernama service-metric untuk menyimpan metrik hasil transformasi.

  1. Masuk ke Konsol Simple Log Service.

  2. Pada bagian Projects, klik project yang diinginkan.

    image

  3. Pada tab Metric Storage > Metricstores, klik ikon +.

  4. Pada panel Create Metricstore, konfigurasikan parameter berikut lalu klik OK.

    Parameter

    Deskripsi

    Metricstore Name

    Nama metricstore. Harus unik dalam proyek. Tidak dapat diubah setelah dibuat.

    Data Retention Period

    Lama penyimpanan metrik dalam metricstore.

    • Specified Days: Menyimpan metrik selama 1 hingga 3000 hari.

      Peringatan
      • Metrik yang kedaluwarsa akan dihapus secara otomatis.

      • Jika Anda memperpendek periode retensi, SLS akan menghapus metrik kedaluwarsa dalam waktu 1 jam. Usage Details pada halaman utama Konsol SLS diperbarui keesokan harinya. Misalnya, mengubah periode retensi dari 5 hari menjadi 1 hari akan menghapus metrik empat hari sebelumnya dalam waktu 1 jam.

    • Permanent Storage: Menyimpan metrik tanpa batas waktu.

      Catatan

      Periode retensi 3650 yang dikembalikan oleh SDK menunjukkan penyimpanan permanen.

    Shards

    Jumlah shard. Setiap shard mendukung kapasitas tulis 5 MB/detik dan 500 tulis/detik, serta kapasitas baca 10 MB/detik dan 100 baca/detik. Maksimum: 10 shard per metricstore, 200 per proyek. Untuk informasi lebih lanjut, lihat Shard.

    Automatic Sharding

    Jika Anda mengaktifkan Automatic Sharding, SLS akan menambah jumlah shard saat kapasitas tulis tidak mencukupi. Untuk informasi lebih lanjut, lihat Manage shards.

    Maximum Shards

    Diperlukan saat Automatic Sharding diaktifkan. Jumlah maksimum shard baca/tulis. Nilai maksimum: 256.

Langkah 2: Buat pekerjaan transformasi data

Gunakan fungsi e_to_metric untuk membuat pekerjaan transformasi data yang menghasilkan output ke MetricStore yang telah Anda buat pada Langkah 1.

  1. Buka halaman Data Transformation.

  2. Pada pojok kanan atas, pilih rentang waktu sehingga log target muncul di tab Raw Logs.

  3. Masukkan pernyataan transformasi data berikut. Ini mengonversi request_time dan upstream_response_time menjadi metrik, serta mengganti nama host menjadi hostname sebagai label.

    e_to_metric(
        names=[("request_time", "RequestTime"), ("upstream_response_time", "ResponseTime")],
        labels=[("host", "hostname")],
    )
  4. Klik Preview Data dan periksa tab Transformation Results.

    Tab tersebut menampilkan dua titik data metrik: __name__=RequestTime dengan __value__=71.0, dan __name__=ResponseTime dengan __value__=0.66. Keduanya memiliki __labels__=hostname#$#www.example.com dan __time_nano__=1716172083000000000.

  5. Buat pekerjaan transformasi data.

    1. Klik Save as Transformation Job.

    2. Di panel Create Data Transformation Job, konfigurasikan parameter berikut, lalu klik OK. Untuk detail parameter, lihat Membuat pekerjaan transformasi data.

      Parameter

      Deskripsi

      Job name, Display name

      Nama pekerjaan harus unik. Nama tampilan ditentukan pengguna, misalnya log2metric.

      Authorization method

      Pilih Default Role untuk memberikan izin baca pada Logstore sumber.

      Destination

      Destination name

      Nama tujuan, misalnya log2metric.

      Destination region

      Wilayah Project tujuan, misalnya Tiongkok (Hangzhou).

      Destination Project

      Project tujuan yang menyimpan hasil transformasi.

      Destination store

      MetricStore tujuan, misalnya service-metric.

      Authorization method

      Pilih Default Role untuk memberikan izin tulis pada layanan MetricStore tujuan service-metric.

      Processing scope

      Time range

      Pilih All.

  1. Periksa status pekerjaan transformasi data.

    Pada panel navigasi kiri, klik ikon Logstore, perluas Logstore target, pilih Data Processing > Data Transformation, lalu klik pekerjaan target untuk melihat progresnya.

Langkah 3: Lakukan kueri terhadap data deret waktu

  1. Pada panel navigasi kiri, pilih Metric Storage > Metricstores, lalu pilih MetricStore target.

  2. Pada pojok kanan atas, klik Last 15 Minutes (Relative) untuk mengatur rentang waktu kueri.

    Catatan

    Hasil kueri dan analisis mungkin memiliki latensi hingga satu menit.

  3. Klik Preview Raw Data. Pada panel yang muncul, pilih rentang waktu untuk memverifikasi bahwa metrik telah ditulis.

    Pratinjau menampilkan dua metrik dari service-metric: __name__:RequestTime __value__:71.0 dan __name__:ResponseTime __value__:0.66.

  4. Masukkan pernyataan kueri menggunakan salah satu metode berikut. Untuk langkah-langkah detail, lihat Lakukan kueri dan analisis data deret waktu.

    • Masukkan pernyataan PromQL lalu klik Execute Now.

      Anda dapat menambahkan beberapa kueri. Hasilnya akan ditumpuk dalam grafik deret waktu yang sama.

    • Pada panel Metrics Explore, klik ikon Add di samping metrik untuk menghasilkan pernyataan kueri secara otomatis.

      Anda juga dapat mengklik Continue to Explore untuk metrik di panel Metrics Explore guna mengatur nilai label dan menghasilkan kueri secara otomatis. Eksplorasi metrik.

    • Tren RequestTime untuk setiap hostRequestTime

    • Tren ResponseTime untuk setiap hostReponseTime