All Products
Search
Document Center

Simple Log Service:Plugin pemrosesan waktu

Last Updated:Aug 28, 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.

Name

Type

Description

time parsing

native

Mengurai dan menstandarkan bidang waktu dalam log.

extract log time

extension

Mengurai bidang waktu mentah dan menetapkannya sebagai stempel waktu log.

Entry point

Untuk menggunakan plugin Logtail dalam pemrosesan log, tambahkan plugin tersebut saat membuat atau mengubah 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 sederhana dan alihkan pemrosesan lanjutan ke Data Transformation.

  • 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.

    • Penambahan 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 bidang __log_topic__ tidak diperlukan, 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

Description

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 dibiarkan kosong, 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. 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"
}

Pada dialog konfigurasi Processing Plugin, atur Processing Plugin Type ke Time Parsing, atur Source Field ke time, atur Time Format ke %Y-%m-%dT%H:%M:%S,%f, dan atur Time Zone ke Machine Time Zone.

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

Untuk mengaktifkan presisi nanodetik:

Pada halaman konfigurasi Logtail, navigasi 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 mengumpulkan log teks dan output standar kontainer.

  • Konfigurasi JSON: Tidak tersedia saat mengumpulkan log teks.

Konfigurasi formulir

  • Parameter

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

    Parameter:

    Parameter

    Description

    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 error jika bidang sumber tidak ada dalam log mentah.

    Advanced parameters > Report error on extraction failure

    Menentukan apakah akan melaporkan error 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 Logtail

      Konfigurasikan prosesor Extract Log Time (Go Time Format) dengan parameter berikut:

      • Source Time Field: s_key

      • Source Time Format: 2006-01-02 15:04:05

      • Source Time Zone: GMT+08:00

      • Destination Time Field: d_key

      • Destination Time Format: 2006/01/02 15:04:05

      • Custom Destination Time Zone: GMT+09:00

      • Parameter lanjutan: Pilih Set as Log Time, Keep Source Field, Error on Missing Source Field, dan Error on Extraction Failure.

    • 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

    Type

    Required

    Description

    SourceKey

    String

    Yes

    Nama bidang yang berisi waktu untuk diurai.

    SourceFormat

    String

    Yes

    String format waktu Go untuk bidang sumber.

    SourceLocation

    Int

    Yes

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

    DestKey

    String

    Yes

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

    DestFormat

    String

    Yes

    String format waktu Go untuk bidang tujuan.

    DestLocation

    Int

    No

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

    SetTime

    Boolean

    No

    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

    No

    Menentukan apakah akan menyimpan bidang sumber dalam log yang diproses.

    • true (default): Menyimpan bidang sumber.

    • false: Membuang bidang sumber.

    NoKeyError

    Boolean

    No

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

    • true (default): Melaporkan error.

    • false: Tidak melaporkan error.

    AlarmIfFail

    Boolean

    No

    Menentukan apakah akan melaporkan error jika ekstraksi waktu gagal.

    • true (default): Melaporkan error.

    • false: Tidak melaporkan error.

  • 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

    Description

    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 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

      Atur Processing Plugin Type ke Extract Log Time (strptime Time Format), atur Source Field ke log_time, atur Source Time Format ke %Y/%m/%d %H:%M:%S. Di parameter lanjutan, pilih Keep Source Field dan Error on Extraction Failure, pilih Adjust UTC Offset, atur UTC Offset Seconds ke 0, lalu klik OK.

    • 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 detik dengan presisi hingga nanodetik.

    Example

    Time expression

    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

    Type

    Required

    Description

    SourceKey

    String

    Yes

    Nama bidang sumber.

    Format

    String

    Yes

    Format waktu sumber.

    AdjustUTCOffset

    Boolean

    No

    Menentukan apakah akan menyesuaikan zona waktu.

    • true: Menyesuaikan zona waktu.

    • false (default): Tidak menyesuaikan zona waktu.

    UTCOffset

    Int

    No

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

    AlarmIfFail

    Boolean

    No

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

    • true (default): Memicu alarm.

    • false: Tidak memicu alarm.

    KeepSource

    Boolean

    No

    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 detik dengan presisi hingga nanodetik.

    Example

    Time expression

    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 Constants in the Go time package. Plugin native processor_parse_timestamp_native dan plugin ekstensi processor_strptime mendukung format yang tercantum di bawah.

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

Format

Description

Example

%a

Nama hari dalam seminggu singkat.

Fri

%A

Nama hari dalam seminggu lengkap.

Friday

%b

Nama bulan singkat.

Jan

%B

Nama bulan lengkap.

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

Karakter 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 seminggu sebagai angka desimal, dengan Senin sebagai 1 (1-7).

2

%U

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

23

%V

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

Minggu 1 adalah minggu pertama dalam tahun yang memiliki minimal empat hari.

24

%w

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

5

%W

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

23

%c

Representasi tanggal dan waktu sesuai lokal.

Tue Nov 20 14:12:58 2020

%x

Representasi tanggal sesuai lokal.

Tue Nov 20 2020

%X

Representasi waktu sesuai lokal.

11:59:59

%s

Unix timestamp.

1476187251

Contoh

Standar waktu umum dan ekspresi yang sesuai:

Example

Expression

Standard

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