All Products
Search
Document Center

Simple Log Service:Plugin pemrosesan waktu

Last Updated:Jun 05, 2026

Uraikan, ekstrak, dan standarkan stempel waktu log menggunakan plugin pemrosesan waktu native atau ekstensi.

Contoh efek plugin

Perbandingan data log mentah di SLS dengan dan tanpa plugin penguraian waktu (native).

Raw log

Tanpa plugin

Plugin penguraian waktu (native)

Stempel waktu presisi detik:

{
  "level":"INFO",
  "timestamp":"2025-09-29T09:56:01+0800",
  "cluster":"yilu-cluster-0728",
  "message":"User logged in successfully",
  "userId":"user-123"
}

Content: "{"level":"INFO","timestamp":"2025-09-29T09:56:01+0800","cluster":"yilu-cluster-0728","message":"User logged in successfully","userId":"user-123"}"

image

Stempel waktu presisi milidetik:

{
  "time": "2026-01-05T11:58:40,647Z",
  "filename": "out_data.py",
  "levelname": "INFO",
  "threadName": "MainThread"
}

Content: "{"time":"2026-01-05T11:58:40,647Z",

"filename":"out_data.py","levelname": "INFO",

"threadName":"MainThread"}"

image

Stempel waktu presisi nanodetik:

{
  "time": "2026-01-05T11:40:22,298837465Z07:00",
  "filename": "out_data.py",
  "levelname": "INFO",
  "threadName": "MainThread"
}

Content: "{"time": "2026-01-05T11:40:22,298837465Z07:00","filename":"out_data.py","levelname":"INFO","threadName": "MainThread"}"

image

Plugin pemrosesan waktu

SLS menyediakan plugin pemrosesan waktu berikut.

Nama

Jenis

Deskripsi

time parsing

native

Mengurai dan menstandarkan bidang waktu dalam log.

extract log time

extension

Mengurai bidang waktu mentah dan menetapkannya sebagai stempel waktu log.

Titik masuk

Untuk menggunakan plugin Logtail dalam pemrosesan log, tambahkan plugin tersebut saat membuat atau memodifikasi konfigurasi Logtail. Untuk informasi selengkapnya, lihat Ikhtisar.

Perbedaan antara plugin native dan ekstensi

Plugin native: Diimplementasikan dalam C++ untuk performa lebih tinggi.

Plugin ekstensi: Diimplementasikan dalam Go untuk ekosistem yang lebih kaya dan fleksibel. Gunakan plugin ekstensi jika plugin native tidak dapat menangani format log Anda.

  • Batas performa plugin ekstensi

    • Plugin ekstensi mengonsumsi lebih banyak sumber daya (terutama CPU). Sesuaikan parameter LoongCollector di manajemen konfigurasi jika diperlukan.

    • Jika data mentah melebihi 5 MB/detik, hindari kombinasi plugin yang kompleks. Gunakan plugin ekstensi yang sederhana dan alihkan pemrosesan lanjutan ke Transformasi Data.

  • Batas koleksi log

    • Plugin ekstensi memproses log teks dalam mode baris. Artinya, metadata tingkat file seperti __tag__:__path__ dan __topic__ disimpan di setiap entri log.

    • Menambahkan plugin ekstensi memengaruhi fitur terkait tag:

      • Kueri konteks dan LiveTail menjadi tidak tersedia kecuali Anda menambahkan konfigurasi aggregators.

      • Bidang __topic__ diganti namanya menjadi __log_topic__. Saat Anda menambahkan konfigurasi aggregators, log berisi kedua bidang __topic__ dan __log_topic__. Jika Anda tidak memerlukan bidang __log_topic__, Anda dapat menggunakan plugin drop field untuk menghapusnya.

      • Bidang seperti __tag__:__path__ kehilangan indeks bidang native-nya. Anda harus membuat indeks untuknya.

Plugin penguraian waktu (native)

Mengurai bidang waktu dalam log dan menetapkan hasilnya ke bidang __time__.

Konfigurasi

Parameter

Deskripsi

Original Field

Bidang yang berisi konten log untuk diurai. Default: content.

Catatan

Saat menggunakan plugin penguraian regex, atur bidang sumber ke time dan sertakan time sebagai bidang yang diekstraksi dalam konfigurasi regex Anda.

Time Format

Format stempel waktu dalam log. Misalnya, jika stempel waktu adalah 10/Sep/2023:12:36:49, format waktu yang sesuai adalah %d/%b/%Y:%H:%M:%S.

Time Zone

Zona waktu stempel waktu dalam log. Jika dikosongkan, plugin menggunakan zona waktu mesin tempat Logtail berjalan.

Secara default, Simple Log Service memproses stempel waktu dengan presisi detik. Anda hanya perlu mengonfigurasi format waktu hingga detik dan dapat mengabaikan satuan yang lebih kecil seperti milidetik atau mikrodetik. Untuk mempertahankan presisi milidetik, mikrodetik, atau nanodetik, aktifkan presisi nanodetik seperti yang ditunjukkan di bawah ini. Koleksi log yang mendukung stempel waktu nanodetik.

Raw log

Konfigurasi plugin penguraian waktu

Format waktu

{
  "time": "2026-01-05T11:40:22,298837465Z07:00",
  "filename": "out_data.py",
  "levelname": "INFO",
  "threadName": "MainThread"
}

image.png

%Y-%m-%dT%H:%M:%S,%f

Untuk mengaktifkan presisi nanodetik:

Pada halaman konfigurasi Logtail, navigasikan ke Global Configurations > Other Global Configurations, aktifkan Advanced Parameters, lalu masukkan:

{
  "EnableTimestampNanosecond": true
}
Aktifkan juga EnableTimestampNanosecond saat menggunakan plugin ekstensi untuk mengurai stempel waktu dengan presisi nanodetik atau milidetik.

Plugin ekstraktor waktu log

Gunakan processor_gotime atau processor_strptime untuk mengurai bidang waktu dalam log mentah.

Catatan

Untuk mempertahankan presisi sub-detik, lihat Koleksi log yang mendukung stempel waktu nanodetik.

Format waktu Go (processor_gotime)

Plugin processor_gotime mengurai bidang waktu menggunakan format waktu Go dan dapat menetapkan hasilnya sebagai waktu log di SLS.

Penting
  • Logtail versi 0.16.28 dan yang lebih baru mendukung plugin processor_gotime.

  • Konfigurasi berbasis formulir: Tersedia saat Anda mengumpulkan log teks dan output standar kontainer.

  • Konfigurasi JSON: Tidak tersedia saat Anda mengumpulkan log teks.

Konfigurasi formulir

  • Parameter

    Atur Processor Type ke Extract Log Time (Go Time Format).

    image

    Parameter:

    Parameter

    Deskripsi

    Original Time Field

    Nama bidang yang berisi waktu untuk diurai.

    Original Time Format

    String format waktu Go untuk bidang sumber.

    Original Time Zone

    Zona waktu waktu sumber. Jika Anda memilih System Time Zone, Logtail menggunakan zona waktu host atau kontainer-nya.

    New Time Field

    Nama bidang untuk menyimpan waktu yang telah diurai dan diformat. Anda tidak dapat mengatur parameter ini ke __time__.

    New Time Format

    String format waktu Go untuk bidang tujuan.

    Custom New Time Zone

    Zona waktu untuk bidang waktu tujuan. Jika Anda memilih System Time Zone, Logtail menggunakan zona waktu host atau kontainer-nya.

    Advanced parameters > Use as Log Time

    Menentukan apakah akan menggunakan waktu yang diurai sebagai waktu log.

    Advanced parameters > Retain Original Field

    Menentukan apakah akan mempertahankan bidang sumber dalam log yang diproses.

    Advanced parameters > Report error when source field is missing

    Menentukan apakah akan melaporkan kesalahan jika bidang sumber tidak ada dalam log mentah.

    Advanced parameters > Report error on extraction failure

    Menentukan apakah akan melaporkan kesalahan jika ekstraksi waktu gagal.

  • Contoh

    Mengurai bidang s_key dalam format 2006-01-02 15:04:05 (UTC+8), mengonversinya ke 2006/01/02 15:04:05 (UTC+9), menyimpan hasilnya di d_key, dan menetapkannya sebagai waktu log.

    • Raw log

      "s_key":"2022-07-05 19:28:01"
    • Konfigurasi plugin LogtailExtract log time (Go time format)

    • Hasil

      "s_key":"2022-07-05 19:28:01"
      "d_key":"2022/07/05 20:28:01"

Konfigurasi JSON

  • Parameter

    Atur type ke processor_gotime. Parameter dalam objek detail:

    Parameter

    Jenis

    Wajib

    Deskripsi

    SourceKey

    String

    Ya

    Nama bidang yang berisi waktu untuk diurai.

    SourceFormat

    String

    Ya

    String format waktu Go untuk bidang sumber.

    SourceLocation

    Int

    Ya

    Offset UTC dalam jam untuk zona waktu sumber. Misalnya, gunakan 8 untuk UTC+8. Jika Anda mengosongkan parameter ini, Logtail menggunakan zona waktu host atau kontainer-nya.

    DestKey

    String

    Ya

    Nama bidang untuk menyimpan waktu yang telah diurai dan diformat. Anda tidak dapat mengatur parameter ini ke __time__.

    DestFormat

    String

    Ya

    String format waktu Go untuk bidang tujuan.

    DestLocation

    Int

    Tidak

    Offset UTC dalam jam untuk zona waktu tujuan. Jika Anda mengosongkan parameter ini, Logtail menggunakan zona waktu host atau kontainer-nya.

    SetTime

    Boolean

    Tidak

    Menentukan apakah akan menggunakan waktu yang diurai sebagai waktu log.

    • true (default): Menggunakan waktu yang diurai sebagai waktu log.

    • false: Tidak menggunakan waktu yang diurai sebagai waktu log.

    KeepSource

    Boolean

    Tidak

    Menentukan apakah akan menyimpan bidang sumber dalam log yang diproses.

    • true (default): Menyimpan bidang sumber.

    • false: Membuang bidang sumber.

    NoKeyError

    Boolean

    Tidak

    Menentukan apakah akan melaporkan kesalahan jika bidang sumber tidak ada dalam log mentah.

    • true (default): Melaporkan kesalahan.

    • false: Tidak melaporkan kesalahan.

    AlarmIfFail

    Boolean

    Tidak

    Menentukan apakah akan melaporkan kesalahan jika ekstraksi waktu gagal.

    • true (default): Melaporkan kesalahan.

    • false: Tidak melaporkan kesalahan.

  • Contoh

    Mengurai bidang s_key dalam format 2006-01-02 15:04:05 (UTC+8), mengonversinya ke 2006/01/02 15:04:05 (UTC+9), menyimpan hasilnya di d_key, dan menetapkannya sebagai waktu log.

    • Raw log

      "s_key":"2019-07-05 19:28:01"
    • Konfigurasi plugin Logtail

      {
        "processors":[
          {
            "type":"processor_gotime",
            "detail": {
              "SourceKey": "s_key",
              "SourceFormat":"2006-01-02 15:04:05",
              "SourceLocation":8,
              "DestKey":"d_key",
              "DestFormat":"2006/01/02 15:04:05",
              "DestLocation":9,
              "SetTime": true,
              "KeepSource": true,
              "NoKeyError": true,
              "AlarmIfFail": true
            }
          }
        ]
      }
    • Hasil

      "s_key":"2019-07-05 19:28:01"
      "d_key":"2019/07/05 20:28:01"

Format waktu strptime (processor_strptime)

Plugin processor_strptime mengurai bidang waktu menggunakan format strptime Linux dan dapat menetapkan hasilnya sebagai waktu log.

Penting

Plugin processor_strptime tersedia di Logtail versi 0.16.28 dan yang lebih baru.

Formulir

  • Parameter

    Atur processor type ke Extract Log Time (strptime Time Format).

    Parameter

    Deskripsi

    Original Field

    Nama bidang sumber.

    Original Time Format

    Format waktu sumber.

    Retain Original Field

    Mempertahankan bidang sumber dalam log yang diproses.

    Report Extraction Failure Error

    Memicu alarm jika ekstraksi waktu gagal.

    Use Time Offset

    Mengaktifkan pengaturan offset waktu kustom dalam satuan detik.

    Time Offset (Unit: Seconds)

    Offset waktu dalam detik. Misalnya, 28800 menunjukkan UTC+8, dan -3600 menunjukkan UTC-1.

  • Contoh konfigurasi

    Mengurai waktu dalam format %Y/%m/%d %H:%M:%S dari bidang log_time dan menetapkannya sebagai waktu log. Asumsikan zona waktu host adalah UTC+8.

    • Raw log

      "log_time":"2016/01/02 12:59:59"
    • Konfigurasi plugin Logtail strptime time format

    • Hasil pemrosesan

      "log_time":"2016/01/02 12:59:59"
      Log.Time = 1451710799
  • Ekspresi waktu umum

    Catatan

    Plugin processor_strptime mendukung spesifikasi format %f, yang merepresentasikan bagian pecahan dari detik dengan presisi hingga nanodetik.

    Contoh

    Ekspresi waktu

    2016/01/02 12:59:59

    %Y/%m/%d %H:%M:%S

    2016/01/02 12:59:59.1

    %Y/%m/%d %H:%M:%S.%f

    2016/01/02 12:59:59.987654321 +0700 (UTC)

    %Y/%m/%d %H:%M:%S.%f %z (%Z)

    2016/Jan/02 12:59:59,123456

    %Y/%b/%d %H:%M:%S,%f

    2019-07-15T04:16:47.123Z

    %Y-%m-%dT%H:%M:%S.%f

JSON

  • Parameter

    Atur type ke processor_strptime. Parameter dalam objek detail:

    Parameter

    Jenis

    Wajib

    Deskripsi

    SourceKey

    String

    Ya

    Nama bidang sumber.

    Format

    String

    Ya

    Format waktu sumber.

    AdjustUTCOffset

    Boolean

    Tidak

    Menentukan apakah akan menyesuaikan zona waktu.

    • true: Menyesuaikan zona waktu.

    • false (default): Tidak menyesuaikan zona waktu.

    UTCOffset

    Int

    Tidak

    Offset zona waktu dalam detik. Pengaturan ini hanya berlaku saat AdjustUTCOffset bernilai true.

    AlarmIfFail

    Boolean

    Tidak

    Menentukan apakah akan memicu alarm jika plugin gagal mengekstraksi waktu log.

    • true (default): Memunculkan alarm.

    • false: Tidak memunculkan alarm.

    KeepSource

    Boolean

    Tidak

    Menentukan apakah akan mempertahankan bidang sumber dalam log yang diproses.

    • true (default): Mempertahankan bidang sumber.

    • false: Membuang bidang sumber.

  • Contoh

    Mengurai waktu dalam format %Y/%m/%d %H:%M:%S dari bidang log_time dan menetapkannya sebagai waktu log. Logtail menggunakan zona waktu mesin host.

    • Contoh 1: Asumsikan zona waktu adalah UTC+8.

      • Raw log

        "log_time":"2016/01/02 12:59:59"
      • Konfigurasi plugin Logtail

        {
          "processors":[
            {
              "type":"processor_strptime",
              "detail": {
                "SourceKey": "log_time",
                "Format": "%Y/%m/%d %H:%M:%S"
              }
            }
          ]
        }
      • Hasil pemrosesan

        "log_time":"2016/01/02 12:59:59"
        Log.Time = 1451710799
    • Contoh 2: Asumsikan zona waktu adalah UTC+7.

      • Raw log

        "log_time":"2016/01/02 12:59:59"
      • Konfigurasi plugin Logtail

        {
          "processors":[
            {
              "type":"processor_strptime",
              "detail": {
                "SourceKey": "log_time",
                "Format": "%Y/%m/%d %H:%M:%S",
                "AdjustUTCOffset": true,
                "UTCOffset": 25200
              }
            }
          ]
        }
      • Hasil pemrosesan

        "log_time":"2016/01/02 12:59:59"
        Log.Time = 1451714399
    • Contoh 3: Asumsikan zona waktu adalah UTC+7.

      • Raw log

        "log_time":"2016/01/02 12:59:59.123"
      • Konfigurasi plugin Logtail

        {
          "processors":[
            {
              "type":"processor_strptime",
              "detail": {
                "SourceKey": "log_time",
                "Format": "%Y/%m/%d %H:%M:%S.%f"
              }
            }
          ]
        }
      • Hasil pemrosesan

        "log_time":"2016/01/02 12:59:59.123"
        Log.Time = 1451714399
  • Ekspresi waktu umum

    Catatan

    Plugin processor_strptime mendukung spesifikasi format %f, yang merepresentasikan bagian pecahan dari detik dengan presisi hingga nanodetik.

    Contoh

    Ekspresi waktu

    2016/01/02 12:59:59

    %Y/%m/%d %H:%M:%S

    2016/01/02 12:59:59.1

    %Y/%m/%d %H:%M:%S.%f

    2016/01/02 12:59:59.987654321 +0700 (UTC)

    %Y/%m/%d %H:%M:%S.%f %z (%Z)

    2016/Jan/02 12:59:59,123456

    %Y/%b/%d %H:%M:%S,%f

    2019-07-15T04:16:47.123Z

    %Y-%m-%dT%H:%M:%S.%f

Format waktu log

Untuk format waktu processor_gotime, lihat https://pkg.go.dev/time#pkg-constants. Plugin native processor_parse_timestamp_native dan plugin ekstensi processor_strptime mendukung format yang tercantum di bawah ini.

Catatan
  • Pada server Linux, Logtail mendukung semua format waktu yang disediakan oleh fungsi strftime.

Format

Deskripsi

Contoh

%a

Nama hari dalam seminggu singkat.

Fri

%A

Nama lengkap hari dalam seminggu.

Friday

%b

Nama bulan singkat.

Jan

%B

Nama lengkap bulan.

January

%d

Hari dalam bulan sebagai angka desimal berpadding nol (01-31).

07, 31

%f

Detik pecahan, seperti milidetik, mikrodetik, atau nanodetik.

123

%h

Nama bulan singkat. Sama dengan %b.

Jan

%H

Jam (format 24 jam) sebagai angka desimal berpadding nol (00-23).

22

%I

Jam (format 12 jam) sebagai angka desimal berpadding nol (01-12).

11

%m

Bulan sebagai angka desimal berpadding nol (01-12).

08

%M

Menit sebagai angka desimal berpadding nol (00-59).

59

%n

Line feed.

line feed

%p

AM atau PM.

AM, PM

%r

Waktu dalam format 12 jam. Sama dengan %I:%M:%S %p.

11:59:59 AM

%R

Jam dan menit dalam format 24 jam. Sama dengan %H:%M.

23:59

%S

Detik sebagai angka desimal berpadding nol (00-59).

59

%t

Karakter tab.

None

%y

Tahun tanpa abad sebagai angka desimal berpadding nol (00-99).

04, 98

%Y

Tahun dengan abad sebagai angka desimal.

2004, 1998

%C

Abad sebagai angka desimal (00-99).

16

%e

Hari dalam bulan sebagai angka desimal berpadding spasi (1-31).

7, 31

%j

Hari dalam tahun sebagai angka desimal berpadding nol (001-366).

365

%u

Hari dalam minggu sebagai angka desimal, dengan Senin sebagai 1 (1-7).

2

%U

Nomor minggu dalam tahun, dengan Minggu sebagai hari pertama minggu (00-53).

23

%V

Nomor minggu ISO 8601 dalam tahun, dengan Senin sebagai hari pertama minggu (01-53).

Minggu 1 adalah minggu pertama tahun yang berisi minimal empat hari.

24

%w

Hari dalam minggu sebagai angka desimal, dengan Minggu sebagai 0 (0-6).

5

%W

Nomor minggu dalam tahun, dengan Senin sebagai hari pertama minggu (00-53).

23

%c

Representasi tanggal dan waktu spesifik lokal.

Tue Nov 20 14:12:58 2020

%x

Representasi tanggal spesifik lokal.

Tue Nov 20 2020

%X

Representasi waktu spesifik lokal.

11:59:59

%s

Unix timestamp.

1476187251

Contoh

Standar waktu umum dan ekspresi yang sesuai:

Contoh

Ekspresi

Standar

2017-12-11 15:05:07

%Y-%m-%d %H:%M:%S

Custom

[2017-12-11 15:05:07.012]

[%Y-%m-%d %H:%M:%S.%f]

Custom

2017-12-11 15:05:07.123

%Y-%m-%d %H:%M:%S.%f

Custom

02 Jan 06 15:04 MST

%d %b %y %H:%M %Z

RFC822

02 Jan 06 15:04 -0700

%d %b %y %H:%M %z

RFC822Z

Monday, 02-Jan-06 15:04:05 MST

%A, %d-%b-%y %H:%M:%S %Z

RFC850

Mon, 02 Jan 2006 15:04:05 MST

%a, %d %b %Y %H:%M:%S %Z

RFC1123

2006-01-02T15:04:05Z07:00

%Y-%m-%dT%H:%M:%S%z

RFC3339

2006-01-02T15:04:05.999999999Z07:00

%Y-%m-%dT%H:%M:%S.%f%z

RFC3339Nano

1637843406

%s

Custom

1637843406123

%s

Custom (Simple Log Service memotong stempel waktu ke presisi tingkat detik)

Dokumen terkait