全部产品
Search
文档中心

:Impor data dari Amazon S3 ke Simple Log Service

更新时间:Dec 08, 2025

Impor file log dari Amazon S3 ke Simple Log Service (SLS) untuk kueri, analisis, dan pemrosesan. SLS mendukung impor objek S3 individual hingga 5 GB, dengan batas ini berlaku pada ukuran file setelah dekompresi untuk file yang dikompresi.

Prasyarat

  • File log telah diunggah ke Amazon S3.

  • Proyek dan logstore telah dibuat. Untuk informasi selengkapnya, lihat Kelola proyek dan Buat logstore.

  • Izin kustom:

    • Buat kebijakan kustom yang memberikan izin untuk mengelola resource S3, seperti pada contoh berikut. Untuk informasi selengkapnya, lihat Buat izin kustom di AWS.

      Catatan

      Anda harus mengonfigurasi izin kustom untuk S3 agar dapat mengimpor objek ke SLS.

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "s3:GetObject",
              "s3:ListBucket"
            ],
            "Resource": [
              "arn:aws:s3:::your_bucket_name",
              "arn:aws:s3:::your_bucket_name/*"
            ]
          }
        ]
      }
    • Buat kebijakan kustom yang memberikan izin untuk mengelola resource Amazon Simple Queue Service (SQS). Untuk informasi selengkapnya, lihat Buat izin kustom di AWS.

      Catatan

      Ini hanya diperlukan jika Anda mengaktifkan SQS.

      {
        "Effect": "Allow",
        "Action": [
          "sqs:ReceiveMessage",
          "sqs:DeleteMessage",
          "sqs:GetQueueAttributes",
          "kms:Decrypt"
        ],
        "Resource": "*"
      }

Buat konfigurasi impor data

  1. Masuk ke Konsol Simple Log Service.

  2. Pada tab Data Import di area Import Data, pilih S3 - Data Import.

  3. Pilih proyek dan logstore tujuan, lalu klik Next.

  4. Konfigurasikan pengaturan impor.

    1. Pada langkah Import Configuration, atur parameter berikut.

      Parameter

      Deskripsi

      Job Name

      Nama unik dari task SLS.

      S3 Region

      Wilayah tempat bucket yang menyimpan objek yang akan diimpor berada.

      AWS AccessKey ID

      ID AccessKey yang digunakan untuk mengakses AWS.

      Penting

      Pastikan AccessKey Anda memiliki izin untuk mengakses resource AWS yang sesuai.

      AWS Secret AccessKey

      Secret AccessKey yang digunakan untuk mengakses AWS.

      SQS Queue URL

      Identifier dari antrian SQS. Untuk informasi selengkapnya, lihat Queue and message identifiers.

      Penting

      Fitur ini hanya berlaku setelah Anda mengaktifkan SQS.

      File Path Prefix Filter

      Filter objek S3 berdasarkan awalan path file untuk menemukan objek yang akan diimpor. Misalnya, jika semua objek yang akan diimpor berada di direktori `csv/`, atur awalan menjadi `csv/`.

      Jika Anda tidak mengatur parameter ini, seluruh bucket S3 akan ditraversed.

      Catatan

      Atur parameter ini. Jika bucket berisi banyak objek, traversing seluruh bucket tidak efisien.

      File Path Regex Filter

      Filter objek S3 berdasarkan ekspresi reguler pada path file untuk menemukan objek yang akan diimpor. Hanya objek yang namanya, termasuk path-nya, sesuai dengan ekspresi reguler yang akan diimpor. Secara default, parameter ini kosong, artinya tidak ada penyaringan yang dilakukan.

      Misalnya, jika sebuah objek S3 bernama testdata/csv/bill.csv, atur ekspresi reguler menjadi (testdata/csv/)(.*).

      Untuk informasi selengkapnya tentang cara men-debug ekspresi reguler, lihat Debug a regular expression.

      File Modification Time Filter

      Filter objek S3 berdasarkan waktu modifikasinya untuk menemukan objek yang akan diimpor.

      • All: Pilih opsi ini untuk mengimpor semua objek S3 yang memenuhi kondisi tertentu.

      • From Specific Time: Pilih opsi ini untuk mengimpor file yang dimodifikasi setelah titik waktu tertentu.

      • Specific Time Range: Pilih opsi ini jika Anda ingin mengimpor file yang dimodifikasi dalam rentang waktu tertentu.

      Data Format

      Format parsing objek. Opsi-opsinya dijelaskan sebagai berikut.

      • CSV: File teks yang dipisahkan oleh delimiter. Tentukan baris pertama sebagai nama field atau tentukan nama field secara manual. Semua baris kecuali baris pertama diparse sebagai nilai field log.

      • Single-line JSON: File S3 dibaca per baris. Setiap baris diparse sebagai objek JSON. Field dalam objek JSON menjadi field log.

      • Single-line Text Log: Setiap baris dalam file S3 diparse sebagai log.

      • Multi-line Text Logs: Beberapa baris dalam objek S3 diparse sebagai satu log. Tentukan ekspresi reguler untuk mencocokkan baris pertama atau baris terakhir dari log.

      Compression Format

      Format kompresi objek S3 yang akan diimpor. SLS akan mendekompresi objek tersebut dan membaca datanya berdasarkan format yang ditentukan.

      Encoding Format

      Format encoding objek S3 yang akan diimpor. Hanya UTF-8 dan GBK yang didukung.

      New File Check Cycle

      Jika objek baru terus-menerus dihasilkan di direktori tertentu dari objek S3, konfigurasikan New File Check Cycle sesuai kebutuhan. Setelah mengonfigurasi parameter ini, task impor data akan terus berjalan di latar belakang, dan objek baru akan dideteksi serta dibaca secara otomatis dalam interval tertentu. Sistem memastikan bahwa data dalam objek S3 tidak ditulis ulang ke SLS.

      Jika tidak ada lagi objek baru yang dihasilkan di path S3 target, atur opsi menjadi Never Check. Task impor kemudian akan keluar secara otomatis setelah membaca semua objek yang memenuhi kondisi yang ditentukan.

      Log Time Configuration

      Time Field

      Saat Anda mengatur Data Format ke CSV atau Single-line JSON, tentukan field waktu. Field ini adalah nama kolom dalam file yang merepresentasikan waktu dan digunakan untuk menentukan timestamp log saat diimpor ke SLS.

      Regular Expression To Extract Time

      Gunakan ekspresi reguler untuk mengekstrak waktu dari log.

      Misalnya, jika contoh log adalah 127.0.0.1 - - [10/Sep/2018:12:36:49 0800] "GET /index.html HTTP/1.1", atur Regular Expression To Extract Time menjadi [0-9]{0,2}\/[0-9a-zA-Z]+\/[0-9:,]+.

      Catatan

      Untuk format data lainnya, Anda juga dapat menggunakan ekspresi reguler untuk mengekstrak hanya bagian tertentu dari field waktu.

      Time Field Format

      Tentukan format waktu untuk memparse nilai field waktu.

      • Tentukan format waktu yang mengikuti sintaks Java SimpleDateFormat. Contohnya: yyyy-MM-dd HH:mm:ss. Untuk informasi selengkapnya tentang sintaks tersebut, lihat Class SimpleDateFormat. Untuk informasi selengkapnya tentang format waktu umum, lihat Time formats.

      • Format epoch didukung, termasuk epoch, epochMillis, epochMicro, dan epochNano.

      Time Zone

      Pilih zona waktu untuk field waktu. Saat format field waktu bertipe epoch, Anda tidak perlu mengatur zona waktu.

      Jika waktu daylight saving perlu dipertimbangkan saat memparse waktu log, pilih format UTC. Jika tidak, pilih format GMT.

      Catatan

      Zona waktu default adalah UTC+8.

      Jika Anda mengatur Data Format ke CSV, Anda harus mengonfigurasi parameter tambahan yang dijelaskan dalam tabel berikut.

      • Parameter khusus CSV

        Parameter

        Deskripsi

        Delimiter

        Atur delimiter untuk log. Nilai default adalah koma (,).

        Quote

        Karakter quote yang digunakan untuk string CSV.

        Escape Character

        Konfigurasikan karakter escape untuk log. Nilai default adalah backslash (\).

        Maximum Lines

        Jika Anda mengaktifkan First Line As Field Name, baris pertama dalam file CSV digunakan sebagai nama field.

        Custom Fields

        Jika Anda menonaktifkan First Line As Field Name, Anda dapat menentukan nama field kustom. Pisahkan beberapa nama field dengan koma (,).

        Lines To Skip

        Tentukan jumlah baris log yang dilewati. Misalnya, jika Anda mengatur nilai ini ke 1, pengumpulan log dimulai dari baris kedua file CSV.

      • Parameter khusus log teks multi-baris

        Parameter

        Deskripsi

        Position to Match Regular Expression

        Atur posisi untuk pencocokan ekspresi reguler. Opsi-opsinya dijelaskan sebagai berikut:

        • Regular Expression To Match First Line: Jika Anda memilih opsi ini, ekspresi reguler yang Anda tentukan digunakan untuk mencocokkan baris pertama entri log. Baris yang tidak cocok dikumpulkan sebagai bagian dari entri log hingga jumlah maksimum baris yang Anda tentukan tercapai.

        • Regular Expression To Match Last Line: Menggunakan ekspresi reguler untuk mencocokkan baris terakhir entri log. Baris yang tidak cocok dianggap sebagai bagian dari entri log berikutnya hingga jumlah maksimum baris tercapai.

        Regular Expression

        Atur ekspresi reguler yang benar berdasarkan konten log.

        Untuk informasi selengkapnya tentang cara men-debug ekspresi reguler, lihat Debug a regular expression.

        Maximum Lines

        Jumlah maksimum baris untuk satu entri log.

    2. Klik Preview untuk melihat hasil impor.

    3. Setelah mengonfirmasi informasi, klik Next.

  5. Pratinjau data, konfigurasikan indeks, lalu klik Next.

    Secara default, indeks teks penuh diaktifkan di SLS. Anda juga dapat membuat indeks bidang secara manual berdasarkan log yang dikumpulkan, atau klik Automatic Index Generation agar SLS menghasilkannya secara otomatis. Untuk informasi selengkapnya, lihat Buat indeks.

    Penting

    Untuk melakukan kueri dan analisis log, Anda harus mengaktifkan indeks teks penuh atau indeks bidang. Jika keduanya diaktifkan, indeks bidang memiliki prioritas lebih tinggi.

Lihat konfigurasi impor

Setelah membuat konfigurasi impor, lihat konfigurasi tersebut dan laporan statistiknya di Konsol.

  1. Di daftar Project, klik proyek target.

  2. Di Log Storage > Logstores, temukan logstore target, pilih Data Collection > Data Import, lalu klik nama konfigurasi.

  3. Lihat informasi dasar dan laporan statistik untuk konfigurasi impor data.

    Anda juga dapat memodifikasi konfigurasi, memulai atau menghentikan impor, serta menghapus konfigurasi.

    Peringatan

    Operasi penghapusan bersifat ireversibel. Lakukan dengan hati-hati.

Tagihan

Fitur impor di SLS tidak dikenai biaya. Namun, fitur ini memerlukan akses ke API penyedia layanan dan akan dikenai biaya trafik serta permintaan. Model penetapan harga adalah sebagai berikut, dan biaya akhir ditentukan oleh tagihan dari penyedia layanan.

image

Field

Deskripsi

T

Total volume impor data harian dalam GB.

p_read

Biaya per GB trafik internet arah keluar.

p_put

Biaya per 10.000 permintaan Put.

p_get

Biaya per 10.000 permintaan Get.

Interval pemeriksaan file baru dalam menit.

Anda dapat mengatur New File Check Cycle saat membuat konfigurasi impor data.

N

Jumlah file yang dapat dicantumkan dalam bucket berdasarkan awalan.

FAQ

Masalah

Kemungkinan penyebab

Solusi

Tidak ada data yang ditampilkan dalam pratinjau.

Tidak ada objek di S3, objek tidak berisi data, atau tidak ada objek yang memenuhi kondisi filter.

  • Verifikasi bahwa bucket berisi objek non-kosong atau file CSV berisi lebih dari sekadar baris header. Jika tidak ada objek yang berisi data, tunggu hingga data tersedia sebelum mengimpornya.

  • Modifikasi parameter untuk memfilter path file dan waktu file.

Teks menjadi tidak terbaca (garbled) dalam data.

Format data, format kompresi, atau format encoding dikonfigurasi secara salah.

Periksa format objek S3, lalu modifikasi pengaturan Data Format, Compression Format, atau Encoding Format sesuai kebutuhan.

Untuk memperbaiki data garbled yang sudah ada, Anda harus membuat logstore baru dan konfigurasi impor baru.

Waktu log di SLS tidak konsisten dengan waktu aktual dalam data.

Saat membuat konfigurasi impor, field waktu log tidak ditentukan, atau format waktu atau zona waktu dikonfigurasi secara salah.

Tentukan field waktu log dan atur format waktu serta zona waktu yang benar. Untuk informasi selengkapnya, lihat Log Time Configuration.

Data tidak dapat dikueri atau dianalisis setelah diimpor.

  • Data berada di luar rentang waktu kueri.

  • Indeks belum dikonfigurasi.

  • Indeks belum berlaku.

  • Verifikasi bahwa waktu data yang ingin Anda kueri berada dalam rentang waktu kueri yang ditentukan.

    Jika tidak, sesuaikan rentang waktu dan lakukan kueri ulang.

  • Verifikasi bahwa indeks telah dikonfigurasi untuk logstore tersebut.

    Jika belum, konfigurasikan indeks. Untuk informasi selengkapnya, lihat Buat indeks dan Reindex.

  • Jika indeks telah dikonfigurasi dan jumlah data yang berhasil diimpor pada Dasbor Data Processing Insight sesuai ekspektasi, indeks mungkin belum berlaku. Anda dapat melakukan reindex.

Jumlah entri log yang diimpor lebih sedikit dari yang diharapkan.

Beberapa objek berisi satu baris data yang lebih besar dari 3 MB, sehingga dibuang selama impor. Untuk informasi selengkapnya, lihat Collection limits.

Saat menulis data ke objek S3, pastikan satu baris data tidak melebihi 3 MB.

Jumlah objek dan total volume data besar, tetapi kecepatan impor lebih lambat dari kecepatan yang diharapkan hingga 80 MB/detik.

Jumlah shard dalam logstore terlalu sedikit. Untuk informasi selengkapnya, lihat Performance limits.

Jika jumlah shard dalam logstore kecil, tingkatkan jumlah shard menjadi 10 atau lebih, lalu periksa latensi. Untuk informasi selengkapnya, lihat Kelola shard.

Beberapa objek tidak diimpor.

Kondisi filter diatur secara salah, atau beberapa objek individual melebihi ukuran 5 GB. Untuk informasi selengkapnya, lihat Collection limits.

  • Verifikasi bahwa objek yang akan diimpor memenuhi kondisi filter. Jika tidak, modifikasi kondisi filter tersebut.

  • Pastikan ukuran setiap objek yang akan diimpor kurang dari 5 GB.

    Jika suatu objek melebihi 5 GB, kurangi ukurannya.

Log teks multi-baris diparse secara salah.

Ekspresi reguler baris pertama atau ekspresi reguler baris terakhir diatur secara salah.

Verifikasi kebenaran ekspresi reguler baris pertama atau ekspresi reguler baris terakhir.

Latensi tinggi terjadi saat mengimpor objek baru.

Terlalu banyak objek yang sudah ada. Artinya, terlalu banyak objek yang sesuai dengan filter awalan path file.

Jika jumlah objek yang sesuai dengan filter awalan path file terlalu besar (misalnya, lebih dari 1 juta), kami menyarankan agar Anda menetapkan awalan yang lebih spesifik dan membuat beberapa task impor data. Jika tidak, efisiensi penemuan file baru akan berkurang secara signifikan.

Penanganan error

Error

Deskripsi

File read failure

Saat membaca file, jika terjadi error file tidak lengkap karena pengecualian jaringan atau kerusakan file, task impor akan mencoba ulang secara otomatis. Jika pembacaan gagal setelah tiga kali percobaan ulang, file tersebut dilewati.

Interval percobaan ulang sama dengan interval pemeriksaan file baru. Jika interval pemeriksaan file baru diatur ke Never Check, interval percobaan ulang adalah 5 menit.

Compression format parsing error

Saat mendekompresi file, jika terjadi error format kompresi tidak valid, task impor akan melewati file tersebut.

Data format parsing error

Jika data gagal diparse, job impor data akan menyimpan konten teks asli dalam field content log.

S3 bucket does not exist

Task impor mencoba ulang secara berkala. Setelah bucket dibuat ulang, task impor akan melanjutkan secara otomatis.

Permission error

Jika terjadi error izin saat membaca data dari bucket S3 atau menulis data ke logstore SLS, task impor akan mencoba ulang secara berkala. Setelah masalah izin diperbaiki, task impor akan melanjutkan secara otomatis.

Saat terjadi error izin, task impor tidak melewatkan file apa pun. Oleh karena itu, setelah masalah izin diperbaiki, task impor akan secara otomatis mengimpor data dari objek yang belum diproses di bucket ke logstore SLS.