全部产品
Search
文档中心

Simple Log Service:UpdateLogtailPipelineConfig

更新时间:Dec 23, 2025

Memperbarui konfigurasi pipeline Logtail.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

Action

Access level

Resource type

Condition key

Dependent action

log:UpdateLogtailPipelineConfig

update

*All Resource

*

  • log:TLSVersion
None

Sintaks permintaan

PUT /pipelineconfigs/{configName} HTTP/1.1

Path Parameters

Parameter

Type

Required

Description

Example

configName

string

Yes

Nama konfigurasi pipeline Logtail.

test-config

Parameter permintaan

Parameter

Type

Required

Description

Example

project

string

Yes

Nama proyek.

test-project

body

object

No

Konten konfigurasi pipeline Logtail.

configName

string

Yes

Nama konfigurasi.

Penting Nama harus sama dengan nilai parameter configName di path permintaan.

test-config

logSample

string

No

Contoh log. Mendukung beberapa log.

2022-06-14 11:13:29.796 | DEBUG | __main__::1 - hello world

global

object

No

Konfigurasi global.

inputs

array<object>

Yes

Daftar plug-in input.

Penting Saat ini, Anda hanya dapat mengonfigurasi satu plug-in input.

object

No

Plug-in input.

Catatan

Untuk parameter plug-in input file, lihat File plug-in. Untuk parameter plug-in input lainnya, lihat Processing plug-ins.

{ "Type": "input_file", "FilePaths": ["/var/log/*.log"] }

processors

array<object>

No

Daftar plug-in pemrosesan.

Catatan

Plug-in pemrosesan diklasifikasikan menjadi plug-in pemrosesan native dan plug-in pemrosesan ekstensi. Untuk informasi selengkapnya, lihat Processing plug-ins.

Penting
Catatan
  • Plug-in native hanya dapat digunakan untuk mengumpulkan log teks.

  • Anda tidak dapat menambahkan plug-in native dan plug-in ekstensi secara bersamaan.

  • Saat menggunakan plug-in native, persyaratan berikut harus dipenuhi:
    • Plug-in pemrosesan pertama harus berupa plug-in parsing berbasis ekspresi reguler, plug-in parsing berbasis pemisah, plug-in parsing berbasis JSON, plug-in parsing berbasis NGINX, plug-in parsing berbasis Apache, atau plug-in parsing berbasis IIS.

    • Setelah plug-in pemrosesan pertama, Anda hanya dapat menambahkan satu plug-in parsing waktu, satu plug-in filter, dan beberapa plug-in penyamaran data.

object

No

Plug-in pemrosesan.

Catatan

Untuk informasi selengkapnya, lihat Processing plug-ins.

{ "Type": "processor_parse_json_native", "SourceKey": "content" }

aggregators

array<object>

No

Daftar plug-in aggregator.

Penting Parameter ini hanya berlaku saat Anda menggunakan plug-in pemrosesan ekstensi. Anda dapat menggunakan maksimal satu plug-in aggregator.

object

No

Plug-in aggregator.

flushers

array<object>

Yes

Daftar plug-in output.

Penting Saat ini, Anda hanya dapat menambahkan satu plug-in output SLS.

object

No

Plug-in output.

{ "Type": "flusher_sls", "Logstore": "test" }

task

object

No

Konfigurasi global

ParameterTypeRequiredDefault valueExampleDescription
TopicTypestringNoEmptyfilepathJenis topik. Nilai yang valid:
  • filepath: mengekstrak informasi dari jalur file log sebagai topik. Nilai ini hanya berlaku ketika plug-in input adalah input_file.

  • machine_group_topic: menggunakan topik dari kelompok mesin tempat konfigurasi diterapkan.

  • custom: menggunakan topik kustom. Untuk informasi selengkapnya, lihat Log topic.

TopicFormatstringYes, if TopicType is set to filepath or custom.//var/log/(.*).logFormat topik.
EnableTimestampNanosecondboolNofalsefalseMenentukan apakah akan mengaktifkan presisi nanodetik untuk timestamp.
PipelineMetaTagKeyobjectNoEmpty{"HOST_NAME":"__hostname__"}
Penting Parameter ini hanya didukung oleh LoongCollector 3.0.10 dan versi yang lebih baru.
Mengontrol tag yang terkait dengan informasi LoongCollector. Kunci adalah nama parameter tag, dan nilai adalah nama field tag dalam log. Jika nilainya __default__, nilai default digunakan. Jika nilainya string kosong, tag tersebut dihapus. Tag berikut dapat dikonfigurasi:
  • HOST_NAME: hostname. Tag ini ditambahkan secara default. Nilai default adalah "__hostname__".

  • AGENT_TAG: pengenal kustom. Tag ini ditambahkan secara default. Nilai default adalah "__user_defined_id__".

  • HOST_ID: ID host. Tag ini tidak ditambahkan secara default. Nilai default adalah "__host_id__".

  • CLOUD_PROVIDER: Tag ini tidak ditambahkan secara default. Nilai default adalah "__cloud_provider__".

Plug-in input

Plug-in input file

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/input_fileJenis plug-in. Tetapkan nilainya ke input_file.
FilePaths[string]Yes/["/var/log/*.log"]Daftar jalur ke file log yang akan dikumpulkan. Saat ini, hanya satu jalur yang diizinkan. Anda dapat menggunakan karakter wildcard asterisk (*) dan double asterisk (**) dalam jalur tersebut. Karakter wildcard double asterisk (**) hanya dapat muncul sekali dan harus digunakan sebelum nama file.
MaxDirSearchDepthuintNo00Kedalaman maksimum subdirektori yang dapat dicocokkan oleh karakter wildcard double asterisk (**) dalam jalur file. Parameter ini hanya berlaku ketika karakter wildcard double asterisk (**) digunakan dalam jalur log. Nilai yang valid: 0 hingga 1000.
ExcludeFilePaths[string]NoEmpty["/home/admin/*.log"]Daftar hitam jalur file. Jalur harus berupa jalur mutlak. Karakter wildcard asterisk (*) didukung.
ExcludeFiles[string]NoEmpty["app*.log", "password"]Daftar hitam nama file. Karakter wildcard asterisk (*) didukung.
ExcludeDirs[string]NoEmpty["/home/admin/dir1", "/home/admin/dir2*"]Daftar hitam direktori. Jalur harus berupa jalur mutlak. Karakter wildcard asterisk (*) didukung.
FileEncodingstringNoutf8utf8Format encoding file. Nilai yang valid: utf8 dan gbk.
TailSizeKBuintNo10241024Posisi awal pengumpulan file yang cocok saat konfigurasi pertama kali diterapkan, diukur dari akhir file. Jika ukuran file lebih kecil dari nilai ini, pengumpulan dimulai dari awal. Nilai yang valid: 0 hingga 10485760 KB.
MultilineobjectNoEmpty/Opsi agregasi multiline.
Multiline.ModestringNocustomcustomMode agregasi multiline. Nilai yang valid: custom dan JSON.
Multiline.StartPatternstringRequired when Multiline.Mode is set to custom.Empty\d+-\d+-\d+.*Ekspresi reguler untuk awal baris.
EnableContainerDiscoveryboolNofalsetrueMenentukan apakah akan mengaktifkan penemuan kontainer. Parameter ini hanya berlaku ketika Logtail berjalan dalam mode DaemonSet dan jalur file yang dikumpulkan adalah jalur di dalam kontainer.
ContainerFiltersobjectNoEmpty/Opsi pemfilteran kontainer. Hubungan antara beberapa opsi adalah "AND". Parameter ini hanya berlaku ketika EnableContainerDiscovery diatur ke true.
ContainerFilters.K8sNamespaceRegexstringNoEmptydefaultUntuk kontainer yang dideploy di lingkungan Kubernetes, menentukan kondisi untuk namespace pod tempat kontainer yang akan dikumpulkan berada. Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung.
ContainerFilters.K8sPodRegexstringNoEmptytest-podUntuk kontainer yang dideploy di lingkungan Kubernetes, menentukan kondisi untuk nama pod tempat kontainer yang akan dikumpulkan berada. Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung.
ContainerFilters.IncludeK8sLabelmapNoEmpty/Untuk kontainer yang dideploy di lingkungan Kubernetes, menentukan kondisi label untuk pod tempat kontainer yang akan dikumpulkan berada. Hubungan antara beberapa kondisi adalah "OR". Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung. Kunci dari map adalah nama label pod, dan nilai adalah nilai label pod tersebut. Aturan berikut berlaku:
  • Jika nilai dalam map kosong, pod apa pun yang memiliki label dengan kunci yang ditentukan akan dicocokkan.

  • Jika nilai dalam map tidak kosong:
    • Jika nilai dimulai dengan ^ dan diakhiri dengan $, pod akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut cocok dengan ekspresi reguler.

    • Dalam kasus lain, pod akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut sama dengan nilai yang ditentukan.

ContainerFilters.ExcludeK8sLabelmapNoEmpty/Untuk kontainer yang dideploy di lingkungan Kubernetes, menentukan kondisi label untuk pod tempat kontainer yang akan dikecualikan dari pengumpulan berada. Hubungan antara beberapa kondisi adalah "OR". Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung. Kunci dari map adalah nama label pod, dan nilai adalah nilai label pod tersebut. Aturan berikut berlaku:
  • Jika nilai dalam map kosong, pod apa pun yang memiliki label dengan kunci yang ditentukan akan dicocokkan.

  • Jika nilai dalam map tidak kosong:
    • Jika nilai dimulai dengan ^ dan diakhiri dengan $, pod akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut cocok dengan ekspresi reguler.

    • Dalam kasus lain, pod akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut sama dengan nilai yang ditentukan.

ContainerFilters.K8sContainerRegexstringNoEmptytest-containerUntuk kontainer yang dideploy di lingkungan Kubernetes, menentukan kondisi untuk nama kontainer yang akan dikumpulkan. Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung.
ContainerFilters.IncludeEnvmapNoEmpty/Menentukan kondisi variabel lingkungan untuk kontainer yang akan dikumpulkan. Hubungan antara beberapa kondisi adalah "OR". Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung. Kunci dari map adalah nama variabel lingkungan, dan nilai adalah nilai variabel lingkungan tersebut. Aturan berikut berlaku:
  • Jika nilai dalam map kosong, kontainer apa pun yang memiliki variabel lingkungan dengan kunci yang ditentukan akan dicocokkan.

  • Jika nilai dalam map tidak kosong:
    • Jika nilai dimulai dengan ^ dan diakhiri dengan $, kontainer akan dicocokkan jika memiliki variabel lingkungan dengan kunci yang ditentukan dan nilai variabel tersebut cocok dengan ekspresi reguler.

    • Dalam kasus lain, kontainer akan dicocokkan jika memiliki variabel lingkungan dengan kunci yang ditentukan dan nilai variabel tersebut sama dengan nilai yang ditentukan.

ContainerFilters.ExcludeEnvmapNoEmpty/Menentukan kondisi variabel lingkungan untuk kontainer yang akan dikecualikan dari pengumpulan. Hubungan antara beberapa kondisi adalah "OR". Jika Anda tidak menambahkan parameter ini, semua kontainer dikumpulkan. Ekspresi reguler didukung. Kunci dari map adalah nama variabel lingkungan, dan nilai adalah nilai variabel lingkungan tersebut. Aturan berikut berlaku:
  • Jika nilai dalam map kosong, kontainer apa pun yang memiliki variabel lingkungan dengan kunci yang ditentukan akan dicocokkan.

  • Jika nilai dalam map tidak kosong:
    • Jika nilai dimulai dengan ^ dan diakhiri dengan $, kontainer akan dicocokkan jika memiliki variabel lingkungan dengan kunci yang ditentukan dan nilai variabel tersebut cocok dengan ekspresi reguler.

    • Dalam kasus lain, kontainer akan dicocokkan jika memiliki variabel lingkungan dengan kunci yang ditentukan dan nilai variabel tersebut sama dengan nilai yang ditentukan.

ContainerFilters.IncludeContainerLabelmapNoEmpty/Menentukan kondisi label untuk kontainer yang akan dikumpulkan. Hubungan antara beberapa kondisi adalah "OR". Jika Anda tidak menambahkan parameter ini, nilai default adalah kosong, yang berarti semua kontainer dikumpulkan. Ekspresi reguler didukung. Kunci dari map adalah nama label kontainer, dan nilai adalah nilai label kontainer tersebut. Aturan berikut berlaku:
  • Jika nilai dalam map kosong, kontainer apa pun yang memiliki label dengan kunci yang ditentukan akan dicocokkan.

  • Jika nilai dalam map tidak kosong:
    • Jika nilai dimulai dengan ^ dan diakhiri dengan $, kontainer akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut cocok dengan ekspresi reguler.

    • Dalam kasus lain, kontainer akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut sama dengan nilai yang ditentukan.

ContainerFilters.ExcludeContainerLabelmapNoEmpty/Menentukan kondisi label untuk kontainer yang akan dikecualikan dari pengumpulan. Hubungan antara beberapa kondisi adalah "OR". Jika Anda tidak menambahkan parameter ini, nilai default adalah kosong, yang berarti semua kontainer dikumpulkan. Ekspresi reguler didukung. Kunci dari map adalah nama label kontainer, dan nilai adalah nilai label kontainer tersebut. Aturan berikut berlaku:
  • Jika nilai dalam map kosong, kontainer apa pun yang memiliki label dengan kunci yang ditentukan akan dicocokkan.

  • Jika nilai dalam map tidak kosong:
    • Jika nilai dimulai dengan ^ dan diakhiri dengan $, kontainer akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut cocok dengan ekspresi reguler.

    • Dalam kasus lain, kontainer akan dicocokkan jika memiliki label dengan kunci yang ditentukan dan nilai label tersebut sama dengan nilai yang ditentukan.

ExternalK8sLabelTagmapNoEmpty/Untuk kontainer yang dideploy di lingkungan Kubernetes, menentukan tag terkait label pod yang akan ditambahkan ke log. Kunci dari map adalah nama label pod, dan nilai adalah nama tag yang sesuai. Misalnya, jika Anda menambahkan app: k8s_label_app ke map, dan sebuah pod memiliki label app=serviceA, informasi ini ditambahkan ke log sebagai tag, yang berarti field __tag__:k8s_label_app: serviceA ditambahkan. Jika pod tersebut tidak memiliki label app, field kosong __tag__:k8s_label_app: ditambahkan.
ExternalEnvTagmapNoEmpty/Untuk kontainer yang dideploy di lingkungan Kubernetes, menentukan tag terkait variabel lingkungan kontainer yang akan ditambahkan ke log. Kunci dari map adalah nama variabel lingkungan, dan nilai adalah nama tag yang sesuai. Misalnya, jika Anda menambahkan VERSION: env_version ke map, dan sebuah kontainer memiliki variabel lingkungan VERSION=v1.0.0, informasi ini ditambahkan ke log sebagai tag, yang berarti field __tag__:env_version: v1.0.0 ditambahkan. Jika kontainer tersebut tidak memiliki variabel lingkungan VERSION, field kosong __tag__:env_version: ditambahkan.
CollectingContainersMetaboolNofalsetrueMenentukan apakah akan mengaktifkan pratinjau metadata kontainer.
AppendingLogPositionMetaboolNofalsefalseMenentukan apakah akan menambahkan metadata file tempat log berada ke log tersebut. Metadata mencakup field __tag__:__inode__ dan field __file_offset__.
AllowingIncludedByMultiConfigsboolNofalsefalseMenentukan apakah akan mengizinkan konfigurasi saat ini untuk mengumpulkan file yang telah dicocokkan oleh konfigurasi lain.
TagsobjectNoEmpty{"FileInodeTagKey":"__inode__"}
Penting Parameter ini hanya didukung oleh LoongCollector 3.0.10 dan versi yang lebih baru.
Mengontrol tag yang terkait dengan pengumpulan file. Kunci adalah nama parameter tag, dan nilai adalah nama field tag dalam log. Jika nilainya __default__, nilai default digunakan. Jika nilainya string kosong, tag tersebut dihapus. Tag berikut dapat dikonfigurasi:
  • FileInodeTagKey: inode file. Tag ini tidak ditambahkan secara default. Nilai default adalah "__inode__".

  • FilePathTagKey: jalur file. Tag ini ditambahkan secara default. Nilai default adalah "__path__".

Parameter berikut hanya berlaku ketika parameter EnableContainerDiscovery diatur ke true.
  • K8sNamespaceTagKey: namespace kontainer tempat file berada. Tag ini ditambahkan secara default. Nilai default adalah "_namespace_".

  • K8sPodNameTagKey: nama pod tempat file berada. Tag ini ditambahkan secara default. Nilai default adalah "_pod_name_".

  • K8sPodUidTagKey: UID pod tempat file berada. Tag ini ditambahkan secara default. Nilai default adalah "_pod_uid_".

  • ContainerNameTagKey: nama kontainer tempat file berada. Tag ini ditambahkan secara default. Nilai default adalah "_container_name_".

  • ContainerIpTagKey: alamat IP kontainer tempat file berada. Tag ini ditambahkan secara default. Nilai default adalah "_container_ip_".

  • ContainerImageNameTagKey: citra kontainer tempat file berada. Tag ini ditambahkan secara default. Nilai default adalah "_image_name_".

FileOffsetKeystringNoEmpty__file_offset__
Penting Parameter ini hanya didukung oleh LoongCollector 3.0.10 dan versi yang lebih baru.
Tag untuk posisi log dalam file. Tag ini tidak ditambahkan secara default. Nilai default adalah __file_offset__. Jika nilainya __default__, nilai default digunakan. Jika nilainya string kosong, tag tersebut dihapus. Jika parameter EnableLogPositionMeta ada bersamaan dengan parameter Tags.FileInodeTagKey atau FileOffsetKey, parameter EnableLogPositionMeta diabaikan.

Stdout kontainer (legacy)

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/service_docker_stdoutJenis plug-in. Tetapkan nilainya ke service_docker_stdout.
StdoutBooleanNotruetrueMenentukan apakah akan mengumpulkan standard output (stdout).
StderrBooleanNotruetrueMenentukan apakah akan mengumpulkan standard error (stderr).
StartLogMaxOffsetIntegerNo128 × 1024131072Panjang data historis yang akan diambil selama pengumpulan pertama, dalam byte. Kami merekomendasikan nilai antara 131072 dan 1048576.
IncludeLabelMap, where LabelKey and LabelValue are of the String typeNoEmpty

Daftar putih label kontainer, digunakan untuk menentukan kontainer yang akan dikumpulkan. Nilai default adalah kosong, yang berarti stdout semua kontainer dikumpulkan. Jika Anda ingin menetapkan daftar putih label kontainer, LabelKey wajib diisi, dan LabelValue opsional.

  • Jika LabelValue kosong, kontainer apa pun yang memiliki label dengan LabelKey yang ditentukan akan dicocokkan.

  • Jika LabelValue tidak kosong, hanya kontainer yang memiliki label dengan LabelKey=LabelValue yang ditentukan yang akan dicocokkan.

    Secara default, LabelValue dicocokkan sebagai string, artinya pencocokan hanya terjadi jika LabelValue identik dengan nilai label kontainer. Jika nilai dimulai dengan ^ dan diakhiri dengan $, ini adalah pencocokan ekspresi reguler. Misalnya, jika Anda menetapkan LabelKey ke io.kubernetes.container.name dan LabelValue ke ^(nginx|cube)$, kontainer bernama nginx atau cube akan dicocokkan.

Hubungan antara beberapa kondisi daftar putih adalah "OR", artinya kontainer akan dicocokkan jika labelnya memenuhi salah satu kondisi daftar putih.

ExcludeLabelMap, where LabelKey and LabelValue are of the String typeNoEmpty

Daftar hitam label kontainer, digunakan untuk mengecualikan kontainer dari pengumpulan. Nilai default adalah kosong, yang berarti tidak ada kontainer yang dikecualikan. Jika Anda ingin menetapkan daftar hitam label kontainer, LabelKey wajib diisi, dan LabelValue opsional.

  • Jika LabelValue kosong, kontainer apa pun yang memiliki label dengan LabelKey yang ditentukan akan dikecualikan.

  • Jika LabelValue tidak kosong, hanya kontainer yang memiliki label dengan LabelKey=LabelValue yang ditentukan yang akan dikecualikan.

    Secara default, LabelValue dicocokkan sebagai string, artinya pencocokan hanya terjadi jika LabelValue identik dengan nilai label kontainer. Jika nilai dimulai dengan ^ dan diakhiri dengan $, ini adalah pencocokan ekspresi reguler. Misalnya, jika Anda menetapkan LabelKey ke io.kubernetes.container.name dan LabelValue ke ^(nginx|cube)$, kontainer bernama nginx atau cube akan dicocokkan.

Hubungan antara beberapa kondisi daftar hitam adalah "OR", artinya kontainer akan dikecualikan jika labelnya memenuhi salah satu kondisi daftar hitam.

IncludeEnvMap, where EnvKey and EnvValue are of the String typeNoEmpty

Daftar putih variabel lingkungan, digunakan untuk menentukan kontainer yang akan dikumpulkan. Nilai default adalah kosong, yang berarti stdout semua kontainer dikumpulkan. Jika Anda ingin menetapkan daftar putih variabel lingkungan, EnvKey wajib diisi, dan EnvValue opsional.

  • Jika EnvValue kosong, kontainer apa pun yang memiliki variabel lingkungan dengan EnvKey yang ditentukan akan dicocokkan.

  • Jika EnvValue tidak kosong, hanya kontainer yang memiliki variabel lingkungan dengan EnvKey=EnvValue yang ditentukan yang akan dicocokkan.

    Secara default, EnvValue dicocokkan sebagai string, artinya pencocokan hanya terjadi jika EnvValue identik dengan nilai variabel lingkungan. Jika nilai dimulai dengan ^ dan diakhiri dengan $, ini adalah pencocokan ekspresi reguler. Misalnya, jika Anda menetapkan EnvKey ke NGINX_SERVICE_PORT dan EnvValue ke `^(80

ExcludeEnvMap, where EnvKey and EnvValue are of the String typeNoEmpty

Daftar hitam variabel lingkungan, digunakan untuk mengecualikan kontainer dari pengumpulan. Nilai default adalah kosong, yang berarti tidak ada kontainer yang dikecualikan. Jika Anda ingin menetapkan daftar hitam variabel lingkungan, EnvKey wajib diisi, dan EnvValue opsional.

  • Jika EnvValue kosong, log kontainer apa pun yang memiliki variabel lingkungan dengan EnvKey yang ditentukan akan dikecualikan.

  • Jika EnvValue tidak kosong, hanya kontainer yang memiliki variabel lingkungan dengan EnvKey=EnvValue yang ditentukan yang akan dikecualikan.

    Secara default, EnvValue dicocokkan sebagai string, artinya pencocokan hanya terjadi jika EnvValue identik dengan nilai variabel lingkungan. Jika nilai dimulai dengan ^ dan diakhiri dengan $, ini adalah pencocokan ekspresi reguler. Misalnya, jika Anda menetapkan EnvKey ke NGINX_SERVICE_PORT dan EnvValue ke ^(80|6379)$, kontainer dengan port layanan 80 atau 6379 akan dicocokkan.

Hubungan antara beberapa kondisi daftar hitam adalah "OR", artinya kontainer akan dikecualikan jika variabel lingkungannya memenuhi salah satu pasangan kunci-nilai.

IncludeK8sLabelMap, where LabelKey and LabelValue are of the String typeNoEmpty

Daftar putih label Kubernetes (didefinisikan dalam template.metadata), digunakan untuk menentukan kontainer yang akan dikumpulkan. Jika Anda ingin menetapkan daftar putih label Kubernetes, LabelKey wajib diisi, dan LabelValue opsional.

  • Jika LabelValue kosong, kontainer apa pun yang memiliki label Kubernetes dengan LabelKey yang ditentukan akan dicocokkan.

  • Jika LabelValue tidak kosong, hanya kontainer yang memiliki label Kubernetes dengan LabelKey=LabelValue yang ditentukan yang akan dicocokkan.

    Secara default, LabelValue dicocokkan sebagai string, artinya pencocokan hanya terjadi jika LabelValue identik dengan nilai label Kubernetes. Jika nilai dimulai dengan ^ dan diakhiri dengan $, ini adalah pencocokan ekspresi reguler. Misalnya, jika Anda menetapkan LabelKey ke app dan LabelValue ke ^(test1|test2)$, kontainer dengan label Kubernetes app:test1 atau app:test2 akan dicocokkan.

Hubungan antara beberapa kondisi daftar putih adalah "OR", artinya kontainer akan dicocokkan jika label Kubernetes-nya memenuhi salah satu kondisi daftar putih.

ExcludeK8sLabelMap, where LabelKey and LabelValue are of the String typeNoEmpty

Daftar hitam label Kubernetes (didefinisikan dalam template.metadata), digunakan untuk mengecualikan kontainer dari pengumpulan. Jika Anda ingin menetapkan daftar hitam label Kubernetes, LabelKey wajib diisi, dan LabelValue opsional.

  • Jika LabelValue kosong, kontainer apa pun yang memiliki label Kubernetes dengan LabelKey yang ditentukan akan dikecualikan.

  • Jika LabelValue tidak kosong, hanya kontainer yang memiliki label Kubernetes dengan LabelKey=LabelValue yang ditentukan yang akan dikecualikan.

    Secara default, LabelValue dicocokkan sebagai string, artinya pencocokan hanya terjadi jika LabelValue identik dengan nilai label Kubernetes. Jika nilai dimulai dengan ^ dan diakhiri dengan $, ini adalah pencocokan ekspresi reguler. Misalnya, jika Anda menetapkan LabelKey ke app dan LabelValue ke ^(test1|test2)$, kontainer dengan label Kubernetes app:test1 atau app:test2 akan dicocokkan.

Hubungan antara beberapa kondisi daftar hitam adalah "OR", artinya kontainer akan dikecualikan jika label Kubernetes-nya memenuhi salah satu kondisi daftar hitam.

K8sNamespaceRegexStringNoEmpty^(default|nginx)$Menentukan kontainer yang akan dikumpulkan berdasarkan nama namespace. Ekspresi reguler didukung. Misalnya, jika Anda menetapkannya ke ^(default|nginx)$, semua kontainer di namespace nginx dan default akan dicocokkan.
K8sPodRegexStringNoEmpty^(nginx-log-demo.*)$Menentukan kontainer yang akan dikumpulkan berdasarkan nama pod. Ekspresi reguler didukung. Misalnya, jika Anda menetapkannya ke ^(nginx-log-demo.*)$, semua kontainer di pod yang namanya dimulai dengan nginx-log-demo akan dicocokkan.
K8sContainerRegexStringNoEmpty^(container-test)$Menentukan kontainer yang akan dikumpulkan berdasarkan nama kontainer (nama kontainer Kubernetes didefinisikan dalam spec.containers). Ekspresi reguler didukung. Misalnya, jika Anda menetapkannya ke ^(container-test)$, semua kontainer bernama container-test akan dicocokkan.

Parameter pemrosesan data

ParameterTypeRequiredDefault valueExampleDescription
BeginLineRegexStringNoEmpty

Ekspresi reguler untuk mencocokkan awal baris.

Jika item konfigurasi ini kosong, ini menunjukkan mode baris tunggal.

Jika ekspresi ini cocok dengan awal baris, baris tersebut dianggap sebagai log baru. Jika tidak, baris tersebut ditambahkan ke log sebelumnya.

BeginLineCheckLengthIntegerNoEmpty

Panjang yang akan diperiksa untuk pencocokan awal baris, dalam byte.

Nilai default adalah 10 × 1024 byte.

Jika ekspresi reguler untuk awal baris dapat dicocokkan dalam N byte pertama, kami merekomendasikan menyetel parameter ini untuk meningkatkan efisiensi pencocokan awal baris.

BeginLineTimeoutMsIntegerNoEmpty

Periode timeout untuk mencocokkan awal baris, dalam milidetik.

Nilai default adalah 3000 milidetik.

Jika tidak ada log baru yang muncul dalam 3000 milidetik, pencocokan berakhir, dan log terakhir diunggah ke Simple Log Service.

MaxLogSizeIntegerNoEmpty

Panjang maksimum log, dalam byte. Nilai default adalah 0.

Nilai default adalah 512 × 1024 byte.

Jika panjang log melebihi nilai ini, sistem berhenti mencari awal baris dan langsung mengunggah log tersebut.

ExternalK8sLabelTagMap, where LabelKey and LabelValue are of the String typeNoEmpty

Setelah menyetel tag log label Kubernetes (didefinisikan dalam template.metadata), iLogtail menambahkan field terkait label Kubernetes ke log.

Misalnya, jika Anda menetapkan LabelKey ke app dan LabelValue ke k8s_label_app, dan sebuah pod memiliki label app=serviceA, iLogtail menambahkan informasi ini ke log, yang berarti field k8s_label_app: serviceA ditambahkan. Jika pod tersebut tidak memiliki label bernama app, field kosong k8s_label_app: ditambahkan.

ExternalEnvTagMap, where EnvKey and EnvValue are of the String typeNoEmpty

Setelah menyetel tag log variabel lingkungan kontainer, iLogtail menambahkan field terkait variabel lingkungan kontainer ke log.

Misalnya, jika Anda menetapkan EnvKey ke VERSION dan EnvValue ke env_version, dan sebuah kontainer memiliki variabel lingkungan VERSION=v1.0.0, informasi ini ditambahkan ke log sebagai tag, yang berarti field env_version: v1.0.0 ditambahkan. Jika kontainer tersebut tidak memiliki variabel lingkungan bernama VERSION, field kosong env_version: ditambahkan.

Variabel lingkungan pemrosesan data

Environment variableTypeRequiredDefault valueExampleDescription
ALIYUN_LOG_ENV_TAGSStringNoEmpty

Setelah menyetel tag log variabel lingkungan global, iLogtail menambahkan field terkait variabel lingkungan kontainer iLogtail ke log. Beberapa nama variabel lingkungan dipisahkan oleh VERTICAL LINE (|).

Misalnya, jika Anda menyetelnya ke node_name|node_ip, dan kontainer iLogtail mengekspos variabel lingkungan yang relevan, informasi ini ditambahkan ke log sebagai tag, yang berarti field node_ip:172.16.0.1 dan node_name:worknode ditambahkan.

Plug-in input MySQL

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/service_mysqlJenis plug-in. Tetapkan nilainya ke service_mysql.
AddressstringNo127.0.0.1:3306rm-*.mysql.rds.aliyuncs.comAlamat MySQL.
UserstringNorootrootNama pengguna untuk login ke database MySQL.
PasswordstringNoEmptyKata sandi untuk pengguna login ke database MySQL. Jika Anda memiliki persyaratan keamanan tinggi, tetapkan nama pengguna dan kata sandi ke xxx. Setelah konfigurasi pengumpulan disinkronkan ke mesin Anda, temukan konfigurasi tersebut di file /usr/local/ilogtail/user_log_config.json dan modifikasi. Untuk informasi selengkapnya, lihat Modify a local configuration.
Penting Jika Anda memodifikasi parameter ini di konsol, konfigurasi lokal akan ditimpa setelah sinkronisasi.
DataBasestringNo/project_databaseNama database.
DialTimeOutMsintNo50005000Periode timeout untuk menghubungkan ke database MySQL, dalam ms.
ReadTimeOutMsintNo50005000Periode timeout untuk membaca hasil kueri MySQL, dalam ms.
StateMentstringNo/Pernyataan SELECT. Ketika CheckPoint diatur ke true, kondisi WHERE dalam pernyataan SELECT harus menyertakan kolom checkpoint (CheckPointColumn). Anda dapat menggunakan tanda tanya (?) sebagai placeholder yang bekerja dengan kolom checkpoint. Misalnya, tetapkan CheckPointColumn ke id, CheckPointStart ke 0, dan StateMent ke SELECT * from ... where id > ?. Setelah setiap pengumpulan, sistem menyimpan ID entri data terakhir sebagai checkpoint. Pada pengumpulan berikutnya, tanda tanya (?) dalam pernyataan kueri diganti dengan ID yang sesuai dengan checkpoint tersebut.
LimitboolNofalsetrueMenentukan apakah akan menggunakan LIMIT untuk paging.
  • true: Gunakan LIMIT.

  • false (default): Jangan gunakan LIMIT.

Kami merekomendasikan menggunakan LIMIT untuk paging. Jika Limit diatur ke true, sistem secara otomatis menambahkan klausa LIMIT ke pernyataan SELECT selama kueri SQL.
PageSizeintNo/10Ukuran halaman. Ini harus dikonfigurasi jika Limit diatur ke true.
MaxSyncSizeintNo00Jumlah maksimum catatan yang akan disinkronkan sekaligus. Nilai default adalah 0, yang berarti tidak ada batasan.
CheckPointboolNofalsetrueMenentukan apakah akan menggunakan checkpoint.
  • true: Gunakan checkpoint.

  • false (default): Jangan gunakan checkpoint.

Checkpoint dapat digunakan sebagai titik awal untuk pengumpulan data berikutnya guna mengimplementasikan pengumpulan data inkremental.
CheckPointColumnstringNoEmpty1Nama kolom checkpoint. Ini harus dikonfigurasi jika CheckPoint diatur ke true. Warning Nilai dalam kolom ini harus bersifat inkremental. Jika tidak, data dapat hilang. Nilai maksimum dalam setiap hasil kueri digunakan sebagai input untuk kueri berikutnya.
CheckPointColumnTypestringNoEmptyintTipe data kolom checkpoint. Tipe yang didukung adalah int dan time. Penyimpanan internal untuk tipe int adalah int64. Tipe time mendukung tipe date, datetime, dan time MySQL. Ini harus dikonfigurasi jika CheckPoint diatur ke true.
CheckPointStartstringNoEmptyNilai awal kolom checkpoint. Ini harus dikonfigurasi jika CheckPoint diatur ke true.
CheckPointSavePerPageboolNotruetrueMenentukan apakah akan menyimpan checkpoint untuk setiap halaman.
  • true (default): Simpan checkpoint untuk setiap halaman.

  • false: Simpan checkpoint setelah setiap sinkronisasi selesai.

IntervalMsintNo6000060000Interval sinkronisasi. Nilai default adalah 60000, dalam ms.

Plug-in input HTTP

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/metric_httpJenis plug-in. Tetapkan nilainya ke metric_http.
AddressstringYes/Daftar URL. Important Harus dimulai dengan http atau https.
IntervalMsintYes/10Interval untuk setiap permintaan, dalam ms.
MethodstringNoGETGETNama metode permintaan. Harus dalam huruf kapital.
BodystringNoEmptyKonten field HTTP Body.
HeadersmapNoEmpty{"key":"value"}Konten HTTP Header, misalnya, {"key":"value"}. Ganti dengan nilai aktual.
PerAddressSleepMsintNo100100Interval antar permintaan untuk setiap URL dalam daftar Addresses, dalam ms.
ResponseTimeoutMsintNo50005000Periode timeout permintaan, dalam ms.
IncludeBodyboolNofalsetrueMenentukan apakah akan mengumpulkan request Body. Nilai default adalah false. Jika diatur ke true, konten request Body disimpan dalam kunci bernama content.
FollowRedirectsboolNofalsefalseMenentukan apakah akan secara otomatis menangani redirection.
InsecureSkipVerifyboolNofalsefalseMenentukan apakah akan melewati pemeriksaan keamanan HTTPS.
ResponseStringMatchstringNo/Melakukan pemeriksaan ekspresi reguler pada konten Body yang dikembalikan. Hasil pemeriksaan disimpan dalam kunci bernama _response_match_. Jika cocok, nilainya adalah yes. Jika tidak cocok, nilainya adalah no.

Plug-in input Syslog

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/service_syslogJenis plug-in. Tetapkan nilainya ke service_syslog.
AddressstringNotcp://127.0.0.1:9999Menentukan protokol, alamat, dan port tempat Logtail mendengarkan. Logtail mendengarkan dan memperoleh data log berdasarkan konfigurasi Logtail. Formatnya adalah [tcp/udp]://[ ip ]:[ port ]. Jika tidak dikonfigurasi, default-nya adalah tcp://127.0.0.1:9999, yang berarti hanya dapat menerima log yang diteruskan secara lokal. Note
  • Protokol mendengarkan, alamat, dan nomor port yang ditetapkan dalam konfigurasi Logtail harus sama dengan aturan pengalihan yang ditetapkan dalam file konfigurasi rsyslog.

  • Jika server tempat Logtail diinstal memiliki beberapa alamat IP yang dapat menerima log, Anda dapat menyetel alamat ke 0.0.0.0 untuk mendengarkan semua alamat IP server.

ParseProtocolstringNoEmptyrfc3164Menentukan protokol yang digunakan untuk mengurai log. Default-nya kosong, yang berarti tidak ada penguraian. Opsi-opsinya adalah:
  • Kosong: Tidak ada penguraian.

  • rfc3164: Menentukan menggunakan protokol RFC3164 untuk mengurai log.

  • rfc5424: Menentukan menggunakan protokol RFC5424 untuk mengurai log.
  • auto: Menentukan bahwa Logtail secara otomatis memilih protokol penguraian yang sesuai berdasarkan konten log.

IgnoreParseFailureboolNotruetrueMenentukan tindakan yang diambil setelah kegagalan penguraian. Jika tidak dikonfigurasi, default-nya adalah true, yang berarti penguraian ditinggalkan, dan field konten yang dikembalikan diisi secara langsung. Jika diatur ke false, log tersebut dibuang saat terjadi kegagalan penguraian.

Plug-in input Systemd Journal

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/service_journalJenis plug-in. Tetapkan nilainya ke service_journal.
JournalPaths[string]YesEmpty/var/log/journalJalur log Journal. Kami merekomendasikan mengonfigurasinya sebagai direktori tempat log Journal berada.
SeekPositionstringNotailtailMetode pengumpulan awal. Dapat diatur ke head atau tail.
  • head berarti mengumpulkan semua data.

  • tail berarti hanya mengumpulkan data baru setelah konfigurasi pengumpulan Logtail diterapkan.

KernelboolNotruetrueMenentukan apakah akan mengumpulkan log kernel.
Units[string]NoEmpty""Daftar Units yang akan dikumpulkan. Default-nya kosong, yang berarti semuanya dikumpulkan.
ParseSyslogFacilityboolNofalsefalseMenentukan apakah akan mengurai field facility log syslog. Jika tidak dikonfigurasi, tidak diurai.
ParsePriorityboolNofalsefalseMenentukan apakah akan mengurai field Priority. Jika tidak dikonfigurasi, tidak diurai. Jika diatur ke true, hubungan pemetaan untuk field Priority adalah sebagai berikut. "0": "emergency" "1": "alert" "2": "critical" "3": "error" "4": "warning" "5": "notice" "6": "informational" "7": "debug"
UseJournalEventTimeboolNofalsefalseMenentukan apakah akan menggunakan field dari log Journal sebagai waktu log. Jika tidak dikonfigurasi, waktu pengumpulan digunakan sebagai waktu log. Pengumpulan log real-time biasanya memiliki selisih kurang dari 3 detik.

Plug-in input SQL Server

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/service_mssqlJenis plug-in. Tetapkan nilainya ke service_mssql.
AddressstringNo127.0.0.1:1433rm-*.sqlserver.rds.aliyuncs.comAlamat SQL Server.
UserstringNorootrootNama akun untuk login ke database SQL Server.
PasswordstringNoEmptyKata sandi untuk akun login ke database SQL Server. Jika Anda memiliki persyaratan keamanan tinggi, tetapkan nama pengguna dan kata sandi ke xxx. Setelah konfigurasi pengumpulan disinkronkan ke mesin Anda, temukan konfigurasi tersebut di file /usr/local/ilogtail/user_log_config.json dan modifikasi. Untuk informasi selengkapnya, lihat Modify a local configuration.
Penting Jika Anda memodifikasi parameter ini di konsol, konfigurasi lokal akan ditimpa setelah sinkronisasi.
DataBasestringNo/project_databaseNama database.
DialTimeOutMsintNo50005000Periode timeout untuk menghubungkan ke database SQL Server, dalam ms.
ReadTimeOutMsintNo50005000Periode timeout untuk membaca hasil kueri SQL Server, dalam ms.
StateMentstringNo/Pernyataan SELECT. Ketika CheckPoint diatur ke true, kondisi WHERE dalam pernyataan SELECT harus menyertakan kolom checkpoint (CheckPointColumn). Anda dapat menggunakan tanda tanya (?) sebagai placeholder yang bekerja dengan kolom checkpoint. Misalnya, tetapkan CheckPointColumn ke id, CheckPointStart ke 0, dan StateMent ke SELECT * from ... where id > ?. Setelah setiap pengumpulan, sistem menyimpan ID entri data terakhir sebagai checkpoint. Pada pengumpulan berikutnya, tanda tanya (?) dalam pernyataan kueri diganti dengan ID yang sesuai dengan checkpoint tersebut.
LimitboolNofalsetrueMenentukan apakah akan menggunakan LIMIT untuk paging.
  • true: Gunakan LIMIT.

  • false (default): Jangan gunakan LIMIT.

Kami merekomendasikan menggunakan LIMIT untuk paging. Jika Limit diatur ke true, sistem secara otomatis menambahkan klausa LIMIT ke pernyataan SELECT selama kueri SQL.
PageSizeintNo/10Ukuran halaman. Ini harus dikonfigurasi jika Limit diatur ke true.
MaxSyncSizeintNo00Jumlah maksimum catatan yang akan disinkronkan sekaligus. Nilai default adalah 0, yang berarti tidak ada batasan.
CheckPointboolNofalsetrueMenentukan apakah akan menggunakan checkpoint.
  • true: Gunakan checkpoint.

  • false (default): Jangan gunakan checkpoint.

Checkpoint dapat digunakan sebagai titik awal untuk pengumpulan data berikutnya guna mengimplementasikan pengumpulan data inkremental.
CheckPointColumnstringNoEmpty1Nama kolom checkpoint. Ini harus dikonfigurasi jika CheckPoint diatur ke true. Warning Nilai dalam kolom ini harus bersifat inkremental. Jika tidak, data dapat hilang. Nilai maksimum dalam setiap hasil kueri digunakan sebagai input untuk kueri berikutnya.
CheckPointColumnTypestringNoEmptyintTipe data kolom checkpoint. Tipe yang didukung adalah int dan time. Penyimpanan internal untuk tipe int adalah int64. Tipe time mendukung tipe date, datetime, dan time SQL Server. Ini harus dikonfigurasi jika CheckPoint diatur ke true.
CheckPointStartstringNoEmptyNilai awal kolom checkpoint. Ini harus dikonfigurasi jika CheckPoint diatur ke true.
CheckPointSavePerPageboolNotruetrueMenentukan apakah akan menyimpan checkpoint untuk setiap halaman.
  • true (default): Simpan checkpoint untuk setiap halaman.

  • false: Simpan checkpoint setelah setiap sinkronisasi selesai.

IntervalMsintNo6000060000Interval sinkronisasi. Nilai default adalah 60000, dalam ms.

Plug-in input PostgreSQL

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/service_pgsqlJenis plug-in. Tetapkan nilainya ke service_pgsql.
AddressstringNo127.0.0.1:5432rm-*.pg.rds.aliyuncs.comAlamat PostgreSQL.
UserstringNorootrootNama akun untuk login ke database PostgreSQL.
PasswordstringNoEmptyKata sandi untuk akun login ke database PostgreSQL. Jika Anda memiliki persyaratan keamanan tinggi, tetapkan nama pengguna dan kata sandi ke xxx. Setelah konfigurasi pengumpulan disinkronkan ke mesin Anda, temukan konfigurasi tersebut di file /usr/local/ilogtail/user_log_config.json dan modifikasi. Untuk informasi selengkapnya, lihat Modify a local configuration.
Penting Jika Anda memodifikasi parameter ini di konsol, konfigurasi lokal akan ditimpa setelah sinkronisasi.
DataBasestringNo/project_databaseNama database PostgreSQL.
DialTimeOutMsintNo50005000Periode timeout untuk menghubungkan ke database PostgreSQL, dalam ms.
ReadTimeOutMsintNo50005000Periode timeout untuk membaca hasil kueri PostgreSQL, dalam ms.
StateMentstringNo/Pernyataan SELECT. Ketika CheckPoint diatur ke true, kondisi WHERE dalam pernyataan StateMent SELECT harus menyertakan kolom checkpoint (parameter CheckPointColumn), dan nilainya harus diatur ke $1. Misalnya, tetapkan CheckPointColumn ke id dan StateMent ke SELECT * from ... where id > $1
LimitboolNofalsetrueMenentukan apakah akan menggunakan LIMIT untuk paging.
  • true: Gunakan LIMIT.

  • false (default): Jangan gunakan LIMIT.

Kami merekomendasikan menggunakan LIMIT untuk paging. Jika Limit diatur ke true, sistem secara otomatis menambahkan klausa LIMIT ke pernyataan SELECT selama kueri SQL.
PageSizeintNo/10Ukuran halaman. Ini harus dikonfigurasi jika Limit diatur ke true.
MaxSyncSizeintNo00Jumlah maksimum catatan yang akan disinkronkan sekaligus. Nilai default adalah 0, yang berarti tidak ada batasan.
CheckPointboolNofalsetrueMenentukan apakah akan menggunakan checkpoint.
  • true: Gunakan checkpoint.

  • false (default): Jangan gunakan checkpoint.

Checkpoint dapat digunakan sebagai titik awal untuk pengumpulan data berikutnya guna mengimplementasikan pengumpulan data inkremental.
CheckPointColumnstringNoEmpty1Nama kolom checkpoint. Ini harus dikonfigurasi jika CheckPoint diatur ke true. Warning Nilai dalam kolom ini harus bersifat inkremental. Jika tidak, data dapat hilang. Nilai maksimum dalam setiap hasil kueri digunakan sebagai input untuk kueri berikutnya.
CheckPointColumnTypestringNoEmptyintTipe data kolom checkpoint. Tipe yang didukung adalah int dan time. Penyimpanan internal untuk tipe int adalah int64. Tipe time mendukung tipe waktu PostgreSQL. Ini harus dikonfigurasi jika CheckPoint diatur ke true.
CheckPointStartstringNoEmptyNilai awal kolom checkpoint. Ini harus dikonfigurasi jika CheckPoint diatur ke true.
CheckPointSavePerPageboolNotruetrueMenentukan apakah akan menyimpan checkpoint untuk setiap halaman.
  • true (default): Simpan checkpoint untuk setiap halaman.

  • false: Simpan checkpoint setelah setiap sinkronisasi selesai.

IntervalMsintNo6000060000Interval sinkronisasi. Nilai default adalah 60000, dalam ms.

Plug-in input SNMP

ParameterTypeRequiredDefault valueExampleDescription
Targets[string]Yes/127.0.0.1Alamat IP grup mesin target.
PortstringNo161161Port yang digunakan oleh protokol SNMP.
CommunitystringNopublicpublicNama komunitas. SNMPv1 dan SNMPv2 menggunakan nama komunitas untuk autentikasi.
UserNamestringNoEmptyrootNama pengguna. SNMPv3 mendukung autentikasi menggunakan nama pengguna.
AuthenticationProtocolstringNoNoAuthNoAuthProtokol autentikasi. SNMPv3 mendukung autentikasi menggunakan protokol autentikasi.
AuthenticationPassphrasestringNoEmptyKata sandi autentikasi. Nilai default adalah kosong. Jika Anda menyetel AuthenticationProtocol ke MD5 atau SHA, Anda perlu menyetel AuthenticationPassphrase.
PrivacyProtocolstringNoNoPrivNoPrivProtokol privasi. SNMPv3 mendukung autentikasi menggunakan protokol privasi.
PrivacyPassphrasestringNoEmptyKata sandi protokol privasi. Secara default, sama dengan kata sandi autentikasi. Jika Anda menyetel PrivacyProtocol ke DES atau AES, Anda harus menyetel PrivacyPassphrase.
TimeoutintNo55Periode timeout untuk operasi kueri tunggal, dalam detik.
VersionintNo22Versi protokol SNMP. Nilai yang valid adalah 1, 2, dan 3.
TransportstringNoudpudpMetode komunikasi SNMP. Nilai yang valid adalah udp dan tcp.
MaxRepetitionsintNo00Jumlah percobaan ulang setelah timeout kueri.
Oids[string]NoEmpty1Identifier objek yang akan dikueri di mesin target.
Fields[string]NoEmptyintField yang akan dikueri di mesin target. Plug-in ini pertama-tama menerjemahkan field dengan mencarinya di Management Information Base (MIB) lokal, menerjemahkannya menjadi identifier objek, dan mengkuerinya bersama-sama.
Tables[string]NoEmptyTabel yang akan dikueri di mesin target. Plug-in ini pertama-tama mengkueri semua field di tabel, lalu mencarinya di Management Information Base (MIB) lokal, menerjemahkannya menjadi identifier objek, dan mengkuerinya bersama-sama.

Plug-in input skrip

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/input_commandJenis plug-in. Tetapkan nilainya ke input_command.
ScriptTypestringYesEmptyshellMenentukan jenis konten skrip. Saat ini mendukung bash, shell, python2, dan python3.
UserstringYes/publicNama pengguna yang digunakan untuk menjalankan perintah. Hanya pengguna non-root yang didukung. Note * Pastikan nama pengguna yang ditentukan ada di mesin. Kami merekomendasikan mengonfigurasi hak istimewa minimal, memberikan izin rwx hanya ke direktori atau file yang diperlukan.
ScriptContentstringYesEmptyKonten skrip. Mendukung teks biasa dan konten terenkripsi Base64, dengan panjang hingga 512*1024 byte.
ContentEncodingstringNoPlainTextPlainTextFormat teks konten skrip. Nilai yang valid:
  • PlainText (default): Teks biasa, tidak dienkripsi.

  • Base64: Enkoding Base64.

LineSplitSepstringNoEmptyPemisah untuk konten output skrip. Jika kosong, tidak dilakukan pemisahan, dan seluruh output dikembalikan sebagai satu entri data.
CmdPathstringNoEmpty/usr/bin/bashJalur untuk mengeksekusi perintah skrip. Jika kosong, jalur default digunakan. Jalur default adalah sebagai berikut:
  • bash: /usr/bin/bash

  • shell: /usr/bin/sh

  • python2: /usr/bin/python2

  • python3: /usr/bin/python3

TimeoutMilliSecondsintNo30003000Periode timeout untuk mengeksekusi skrip, dalam milidetik.
IgnoreErrorboolNofalsefalseMenentukan apakah akan mengabaikan log Error ketika eksekusi plug-in gagal. Nilai default adalah false, yang berarti tidak diabaikan.
Environments[string]NoVariabel lingkungan. Default-nya adalah nilai os.Environ(). Jika Environments diatur, variabel lingkungan yang diatur ditambahkan ke os.Environ().
IntervalMsintNo50005000Frekuensi pemicu pengumpulan atau frekuensi eksekusi skrip, dalam milidetik.

Plug-in pemrosesan native

Plug-in parsing ekspresi reguler native

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_parse_regex_nativeJenis plug-in. Tetapkan nilainya ke processor_parse_regex_native.
SourceKeystringYes/contentNama field sumber.
RegexstringYes/(\d+-\d+-\d+)\s+(.*)Ekspresi reguler.
Keys[string]Yes/["time", "msg"]Daftar field yang diekstraksi.
KeepingSourceWhenParseFailboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian gagal.
KeepingSourceWhenParseSucceedboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian berhasil.
RenamedSourceKeystringNoEmptykeyNama field untuk menyimpan field sumber ketika disimpan. Jika tidak diisi, nama tidak diubah secara default.

Plug-in parsing JSON native

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_parse_json_nativeJenis plug-in. Tetapkan nilainya ke processor_parse_json_native.
SourceKeystringYes/contentNama field sumber.
KeepingSourceWhenParseFailboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian gagal.
KeepingSourceWhenParseSucceedboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian berhasil.
RenamedSourceKeystringNoEmptykeyNama field untuk menyimpan field sumber ketika disimpan. Jika tidak diisi, nama tidak diubah secara default.

Plug-in parsing pemisah native

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_parse_delimiter_nativeJenis plug-in. Tetapkan nilainya ke processor_parse_delimiter_native.
SourceKeystringYes/contentNama field sumber.
SeparatorstringYes/,Pemisah.
QuotestringNo""Kutipan.
Keys[string]Yes/["time", "msg"]Daftar field yang diekstraksi.
AllowingShortenedFieldsboolNotruetrueMenentukan apakah akan mengizinkan jumlah field yang diekstraksi kurang dari jumlah Keys. Jika tidak diizinkan, skenario ini dianggap sebagai kegagalan penguraian.
OverflowedFieldsTreatmentstringNoextendextendPerilaku ketika jumlah field yang diekstraksi lebih besar dari jumlah Keys. Nilai yang valid:
  • extend: Menyimpan field tambahan, dan setiap field tambahan ditambahkan ke log sebagai field terpisah. Nama field untuk field tambahan adalah __column$i__, di mana $i mewakili nomor urut field tambahan, dimulai dari 0.

  • keep: Menyimpan field tambahan, tetapi menambahkan konten tambahan sebagai satu field ke log. Nama field adalah __column0__.

  • discard: Membuang field tambahan.

KeepingSourceWhenParseFailboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian gagal.
KeepingSourceWhenParseSucceedboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian berhasil.
RenamedSourceKeystringNoEmptykeyNama field untuk menyimpan field sumber ketika disimpan. Jika tidak diisi, nama tidak diubah secara default.

Plug-in parsing Apsara native

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_parse_apsara_nativeJenis plug-in. Tetapkan nilainya ke processor_parse_apsara_native.
SourceKeystringYes/contentNama field sumber.
TimezonestringNoEmptyGMT+08:00Zona waktu waktu log. Formatnya adalah GMT+HH:MM (Timur) atau GMT-HH:MM (Barat).
KeepingSourceWhenParseFailboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian gagal.
KeepingSourceWhenParseSucceedboolNofalsefalseMenentukan apakah akan menyimpan field sumber ketika penguraian berhasil.
RenamedSourceKeystringNoEmptykeyNama field untuk menyimpan field sumber ketika disimpan. Jika tidak diisi, nama tidak diubah secara default.

Plug-in parsing waktu native

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_parse_timestamp_nativeJenis plug-in. Tetapkan nilainya ke processor_parse_timestamp_native.
SourceKeystringYes/contentNama field sumber.
SourceFormatstringYes/%Y/%m/%d %H:%M:%SFormat waktu log. Untuk informasi selengkapnya, lihat Time formats.
SourceTimezonestringNoEmptyGMT+08:00Zona waktu waktu log. Formatnya adalah GMT+HH:MM (Timur) atau GMT-HH:MM (Barat).

Plug-in filter native

ParameterTypeRequiredExampleDefault valueDescription
TypestringYesprocessor_filter_regex_native/Jenis plug-in. Tetapkan nilainya ke processor_filter_regex_native.
IncludemapYes//Daftar putih field log, di mana kunci adalah nama field dan nilai adalah ekspresi reguler. Ini menunjukkan kondisi yang harus dipenuhi oleh konten field yang ditentukan oleh kunci agar event saat ini dikumpulkan. Hubungan antara beberapa kondisi adalah "AND". Log dikumpulkan hanya jika semua kondisi terpenuhi.

Plug-in penyamaran data native

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_desensitize_nativeJenis plug-in. Tetapkan nilainya ke processor_desensitize_native.
SourceKeystringYes/contentNama field sumber.
MethodstringYes/constMetode penyamaran data. Nilai yang valid: const: mengganti konten sensitif dengan konstanta. md5: mengganti konten sensitif dengan nilai MD5-nya.
ReplacingStringstringNo, required when Method is set to const./******String konstan yang digunakan untuk mengganti konten sensitif.
ContentPatternBeforeReplacedStringstringYes/'password:'Ekspresi reguler awalan untuk konten sensitif.
ReplacedContentPatternstringYes/[^']*Ekspresi reguler untuk konten sensitif.
ReplacingAllboolNotruetrueMenentukan apakah akan mengganti semua konten sensitif yang cocok.

Plug-in pemrosesan ekstensi

Estraksi field

Mode ekspresi reguler

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_regexJenis plug-in. Tetapkan nilainya ke processor_regex.
SourceKeystringYes/contentNama field sumber.
RegexstringYes/(\d+-\d+-\d+)\s+(.*)Ekspresi reguler. Anda perlu menggunakan tanda kurung () untuk menandai field yang akan diekstraksi.
Keys[string]Yes/["ip", "time", "method"]Menentukan nama field untuk konten yang diekstraksi, misalnya, ["ip", "time", "method"].
NoKeyErrorbooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

NoMatchErrorbooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika ekspresi reguler yang Anda tentukan tidak cocok dengan nilai field sumber.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

KeepSourcebooleanNofalsefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true: Simpan.

  • false (default): Jangan simpan.

FullMatchbooleanNotruetrueMenentukan apakah hanya akan mengekstraksi jika sepenuhnya cocok.
  • true (default): Field-field yang Anda atur di parameter Keys hanya diekstraksi jika semuanya dapat dicocokkan dengan nilai field sumber melalui ekspresi reguler di parameter Regex.

  • false: Pencocokan parsial juga diekstraksi.

KeepSourceIfParseErrorbooleantruetruefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai jika penguraian gagal.
  • true: Simpan.

  • false (default): Jangan simpan.

Mode anchor

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_anchorJenis plug-in. Tetapkan nilainya ke processor_anchor.
SourceKeyAnchor arrayYes/contentNama field sumber.
AnchorsstringYes/Daftar item anchor.
StartStringYesEmptytimeKata kunci awal. Jika kosong, akan mencocokkan awal string.
StopStringYesEmpty\tKata kunci akhir. Jika kosong, akan mencocokkan akhir string.
FieldNameStringYesEmptytimeMenentukan nama field untuk konten yang diekstraksi.
FieldTypeStringYesEmptystringJenis field. Nilai yang valid adalah string atau json.
ExpondJsonbooleanNofalsefalseMenentukan apakah akan melakukan ekspansi JSON.
  • true: Lakukan ekspansi.

  • false (default): Jangan lakukan ekspansi.

ExpondConnecterStringNo__Konektor untuk ekspansi JSON. Nilai default adalah underscore (_).
MaxExpondDepthIntNo00Kedalaman maksimum untuk ekspansi JSON. Nilai default adalah 0, yang berarti tidak ada batasan.
NoAnchorErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan ketika item anchor tidak ditemukan.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

KeepSourceBooleanNofalsefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

Mode CSV

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_csvJenis plug-in. Tetapkan nilainya ke processor_csv.
SourceKeyStringYes/csvNama field sumber.
SplitKeysString arrayYes/["date", "ip", "content"]Menentukan nama field untuk konten yang diekstraksi, misalnya, ["date", "ip", "content"]. Important Jika jumlah field yang akan dipisahkan kurang dari jumlah field di parameter SplitKeys, field tambahan di parameter SplitKeys diabaikan.
PreserveOthersBooleanNofalsefalseMenentukan apakah akan menyimpan bagian berlebih jika jumlah field yang akan dipisahkan lebih besar dari jumlah field di parameter SplitKeys.
  • true: Simpan.

  • false (default): Jangan simpan.

ExpandOthersBooleanNofalsefalseMenentukan apakah akan mengurai bagian berlebih.
  • true: Urai. Anda dapat mengurai bagian berlebih melalui parameter ExpandOthers dan kemudian menentukan awalan penamaan untuk field berlebih melalui parameter ExpandKeyPrefix. *

  • false (default): Jangan uraikan. Jika Anda menyetel PreserveOthers ke true dan ExpandOthers ke false, konten bagian berlebih disimpan di field _decode_preserve_.

Note Jika konten field tambahan berisi konten non-standar, Anda perlu menormalisasi sesuai format CSV sebelum menyimpannya.
ExpandKeyPrefixStringNoAwalan penamaan untuk field berlebih. Misalnya, jika dikonfigurasi sebagai expand_, nama field-nya akan menjadi expand_1, expand_2.
TrimLeadingSpaceBooleanNofalsefalseMenentukan apakah akan mengabaikan spasi awal di nilai field.
  • true: Abaikan.

  • false (default): Jangan abaikan.

SplitSepStringNo,,Pemisah. Nilai default adalah koma (,).
KeepSourceBooleanNofalsefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true: Simpan.

  • false (default): Jangan simpan.

NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

Mode pemisah karakter tunggal

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_split_charJenis plug-in. Tetapkan nilainya ke processor_split_char.
SourceKeyStringYesNama field sumber.
SplitSepStringYesPemisah. Harus berupa satu karakter. Dapat diatur ke karakter tak terlihat, seperti \u0001.
SplitKeysString arrayYes["ip", "time", "method"]Menentukan nama field untuk konten yang diekstraksi, misalnya, ["ip", "time", "method"].
PreserveOthersBooleanNofalsefalseMenentukan apakah akan menyimpan bagian berlebih jika jumlah field yang akan dipisahkan lebih besar dari jumlah field di parameter SplitKeys.
  • true: Simpan.

  • false (default): Jangan simpan.

QuoteFlagBooleanNofalsefalseMenentukan apakah akan menggunakan kutipan.
  • true: Gunakan.

  • false (default): Jangan gunakan.

QuoteStringNo/\u0001Kutipan. Harus berupa satu karakter. Dapat berupa karakter tak terlihat, seperti \u0001. Hanya berlaku ketika QuoteFlag diatur ke true.
NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

NoMatchErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika pemisah yang Anda tentukan tidak cocok dengan pemisah di log.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

KeepSourceBooleanNofalsefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true: Simpan.

  • false (default): Jangan simpan.

Mode pemisah multi-karakter

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_split_stringJenis plug-in. Tetapkan nilainya ke processor_split_string.
SourceKeyStringYesNama field sumber.
SplitSepStringYesPemisah. Harus berupa satu karakter. Dapat diatur ke karakter tak terlihat, seperti \u0001\u0002.
SplitKeysString arrayYes["key1","key2"]Menentukan nama field untuk konten yang diekstraksi, misalnya, ["key1","key2"].Note Jika jumlah field yang akan dipisahkan kurang dari jumlah field di parameter SplitKeys, field tambahan di parameter SplitKeys diabaikan.
PreserveOthersBooleanNofalsefalseMenentukan apakah akan menyimpan bagian berlebih jika jumlah field yang akan dipisahkan lebih besar dari jumlah field di parameter SplitKeys.
  • true: Simpan.

  • false (default): Jangan simpan.

ExpandOthersBooleanNofalsefalseMenentukan apakah akan menggunakan kutipan.
  • true: Gunakan.

  • false (default): Jangan gunakan.

ExpandKeyPrefixStringNo/expand_Awalan penamaan untuk bagian berlebih. Misalnya, jika dikonfigurasi sebagai expand_, nama field-nya akan menjadi expand_1, expand_2.
NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

NoMatchErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika pemisah yang Anda tentukan tidak cocok dengan pemisah di log.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

KeepSourceBooleanNofalsefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true: Simpan.

  • false (default): Jangan simpan.

Mode pasangan kunci-nilai

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_split_key_valueJenis plug-in. Tetapkan nilainya ke processor_split_key_value.
SourceKeystringYesNama field sumber.
DelimiterstringNo\t\tPemisah antar pasangan kunci-nilai. Nilai default adalah karakter tab \t.
SeparatorstringNo::Pemisah antara kunci dan nilai dalam satu pasangan kunci-nilai. Nilai default adalah titik dua (:).
KeepSourceBooleanNofalsefalseMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true: Simpan.

  • false (default): Jangan simpan.

ErrIfSourceKeyNotFoundBooleanNotruefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

DiscardWhenSeparatorNotFoundBooleanNofalsefalseMenentukan apakah akan membuang pasangan kunci-nilai jika tidak ditemukan pemisah yang cocok.
  • true: Buang.

  • false (default): Jangan buang.

ErrIfSeparatorNotFoundBooleanNotruefalseMenentukan apakah sistem melaporkan kesalahan ketika pemisah yang ditentukan tidak ada.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

ErrIfKeyIsEmptyBooleanNotruefalseMenentukan apakah sistem melaporkan kesalahan ketika kunci setelah pemisahan kosong.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

QuoteStringNoKutipan. Ketika diatur, jika nilai diapit tanda kutip, nilai di dalam tanda kutip diekstraksi. Kutipan multi-karakter didukung. Secara default, fungsi kutipan tidak diaktifkan. Important * Jika kutipan adalah tanda kutip ganda (""), Anda perlu menambahkan karakter escape, yaitu garis miring terbalik (\). Ketika garis miring terbalik (\) digunakan dengan kutipan di dalam tanda kutip, garis miring terbalik (\) dioutput sebagai bagian dari nilai.

Mode Grok

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_grokJenis plug-in. Tetapkan nilainya ke processor_grok.
CustomPatternDirString arrayNoDirektori tempat file pola Grok kustom berada. Plug-in processor_grok membaca semua file di direktori tersebut. Jika parameter ini tidak ditambahkan, tidak ada file pola Grok kustom yang diimpor. Important Setelah memperbarui file pola Grok kustom, Anda perlu merestart Logtail agar perubahan berlaku.
CustomPatternsMapNoPola GROK kustom, di mana kunci adalah nama aturan dan nilai adalah ekspresi Grok. Untuk ekspresi yang didukung secara default, lihat processor_grok. Jika ekspresi yang Anda butuhkan tidak ada di tautan tersebut, masukkan ekspresi Grok kustom di Match. Jika parameter ini tidak ditambahkan, tidak ada pola GROK kustom yang digunakan.
SourceKeyStringNocontentcontentNama field sumber. Nilai default adalah field content.
MatchString arrayYesArray ekspresi Grok. Plug-in processor_grok mencocokkan log terhadap daftar ekspresi yang dikonfigurasi di sini dari atas ke bawah dan mengembalikan hasil ekstraksi yang pertama kali berhasil dicocokkan. Note Mengonfigurasi beberapa ekspresi Grok dapat memengaruhi performa. Kami merekomendasikan tidak lebih dari 5.
TimeoutMilliSecondsLongNo0Waktu usaha maksimum untuk mengekstraksi field dengan ekspresi Grok, dalam milidetik. Jika parameter ini tidak ditambahkan atau diatur ke 0, berarti tidak ada timeout.
IgnoreParseFailureBooleanNotruetrueMenentukan apakah akan mengabaikan log yang gagal diurai.
  • true (default): Abaikan.

  • false: Hapus.

KeepSourceBooleanNotruetrueMenentukan apakah akan menyimpan field sumber setelah penguraian berhasil.
  • true (default): Simpan.

  • false: Buang.

NoKeyErrorBooleanNofalsetrueMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

NoMatchErrorBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan ketika tidak ada ekspresi yang diatur di parameter Match yang cocok dengan log.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

TimeoutErrorBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan saat terjadi timeout pencocokan.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

Tambahkan field

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_add_fieldsJenis plug-in. Tetapkan nilainya ke processor_add_fields.
FieldsMapYesNama dan nilai field yang akan ditambahkan. Format pasangan kunci-nilai. Mendukung penambahan beberapa field.
IgnoreIfExistBooleanNofalsefalseMenentukan apakah akan mengabaikan field duplikat jika field dengan nama yang sama sudah ada.
  • true: Abaikan.

  • false (default): Jangan abaikan.

Buang field

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_dropJenis plug-in. Tetapkan nilainya ke processor_drop.
DropKeysString arrayYesMenentukan field yang akan dibuang. Bisa dikonfigurasi beberapa.

Ganti nama field

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_renameJenis plug-in. Tetapkan nilainya ke processor_rename.
NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

SourceKeysString arrayYesField sumber yang akan diganti namanya.
DestKeysString arrayYesField setelah diganti nama.

Paket field

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_packjsonJenis plug-in. Tetapkan nilainya ke processor_packjson.
SourceKeysString arrayYesField sumber yang akan dipaketkan.
DestKeyStringNoField setelah dipaketkan.
KeepSourceBooleanNotruetrueMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true (default): Simpan.

  • false: Buang.

AlarmIfIncompleteBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true (default): Simpan.

  • false: Buang.

Ekspansi field JSON

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_jsonJenis plug-in. Tetapkan nilainya ke processor_json.
SourceKeyStringYesNama field sumber yang akan diekspansi.
NoKeyErrorBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

ExpandDepthIntNo01Kedalaman ekspansi JSON. Nilai default adalah 0, yang berarti tidak ada batasan. 1 menunjukkan level saat ini, dan seterusnya.
ExpandConnectorStringNo__Konektor untuk ekspansi JSON. Nilai default adalah underscore (_).
PrefixStringNoAwalan yang akan ditambahkan ke nama field selama ekspansi JSON.
KeepSourceBooleanNotruetrueMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true (default): Simpan.

  • false: Buang.

UseSourceKeyAsPrefixBooleanNoMenentukan apakah akan menggunakan nama field sumber sebagai awalan untuk semua nama field JSON yang diekspansi.
KeepSourceIfParseErrorBooleanNotruetrueMenentukan apakah akan menyimpan log sumber jika penguraian gagal.
  • true (default): Simpan.

  • false: Buang.

ExpandArrayBooleanNofalsefalseMenentukan apakah akan mengekspansi tipe array. Parameter ini didukung oleh Logtail 1.8.0 dan versi yang lebih baru.
  • false (default): Jangan ekspansi.

  • true: Ekspansi. Misalnya, {"k":["1","2"]} diekspansi menjadi {"k[0]":"1","k[1]":"2"}.

Filter log

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_filter_regexJenis plug-in. Tetapkan nilainya ke processor_filter_regex.
IncludeJSON ObjectNoKunci adalah field log, dan Nilai adalah ekspresi reguler yang harus dicocokkan oleh nilai field tersebut. Hubungan antar pasangan kunci-nilai adalah AND. Jika nilai field log cocok dengan ekspresi reguler yang sesuai, log tersebut dikumpulkan.
ExcludeJSON ObjectNoKunci adalah field log, dan Nilai adalah ekspresi reguler yang harus dicocokkan oleh nilai field tersebut. Hubungan antar pasangan kunci-nilai adalah OR. Jika nilai field apa pun dalam log cocok dengan ekspresi reguler yang sesuai, log tersebut dibuang.

Ekstraksi waktu log

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_gotimeJenis plug-in. Tetapkan nilainya ke processor_gotime.
SourceKeyStringYesNama field sumber.
SourceFormatStringYesFormat waktu sumber.
SourceLocationIntYesZona waktu waktu sumber. Jika nilai parameter kosong, berarti zona waktu host atau kontainer tempat Logtail berada.
DestKeyStringYesField tujuan setelah penguraian.
DestFormatStringYesFormat waktu setelah penguraian.
DestLocationIntNoZona waktu setelah penguraian. Jika nilai parameter kosong, berarti zona waktu lokal.
SetTimeBooleanNotruetrueMenentukan apakah akan menetapkan waktu yang diurai sebagai waktu log.
  • true (default): Ya.

  • false: Tidak.

KeepSourceBooleanNotruetrueMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true (default): Simpan.

  • false: Jangan simpan.

NoKeyErrorBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

AlarmIfFailBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan jika gagal mengekstraksi waktu log.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

Konversi alamat IP

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_geoipJenis plug-in. Tetapkan nilainya ke processor_geoip.
SourceKeyStringYesNama field sumber yang akan dikonversi untuk alamat IP.
DBPathStringYes/user/data/GeoLite2-City_20180102/GeoLite2-City.mmdbJalur lengkap database GeoIP. Misalnya, /user/data/GeoLite2-City_20180102/GeoLite2-City.mmdb.
NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika nama field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

NoMatchErrorBooleanNotruetrueMenentukan apakah sistem melaporkan kesalahan jika alamat IP tidak valid atau tidak ditemukan di database.
  • true (default): Laporkan kesalahan.

  • false: Jangan laporkan kesalahan.

KeepSourceBooleanNotruetrueMenentukan apakah akan menyimpan field sumber di log yang telah diurai.
  • true (default): Simpan.

  • false: Jangan simpan.

LanguageStringNozh-CNzh-CNAtribut bahasa. Nilai default adalah zh-CN. Important Pastikan database GeoIP Anda berisi bahasa yang sesuai.

Penyamaran data

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_desensitizeJenis plug-in. Tetapkan nilainya ke processor_desensitize.
SourceKeyStringYesNama field log.
MethodStringYesconstMetode penyamaran data. Nilai yang valid:
  • const: Mengganti konten sensitif dengan string. Anda dapat menentukan string target dengan parameter ReplaceString.

  • md5: Mengganti konten sensitif dengan nilai MD5-nya.

MatchStringNofullfullMenentukan metode untuk mengekstraksi konten sensitif. Nilai yang valid:
  • full (default): Mengekstraksi semua, yang berarti mengganti semua konten di nilai field target.

  • regex: Menggunakan ekspresi reguler untuk mengekstraksi konten sensitif.

ReplaceStringStringNoString yang digunakan untuk mengganti konten sensitif. Wajib diisi ketika Method diatur ke const.
RegexBeginStringNoEkspresi reguler untuk mencocokkan awalan konten sensitif. Wajib diisi ketika Match diatur ke regex.
RegexContentStringNoEkspresi reguler untuk mencocokkan konten sensitif. Wajib diisi ketika Match diatur ke regex.

Pemetaan nilai field

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_dict_mapJenis plug-in. Tetapkan nilainya ke processor_dict_map.
SourceKeyStringYesNama field sumber.
MapDictMapNoKamus pemetaan. Jika kamus pemetaan kecil, Anda dapat mengaturnya langsung dengan parameter ini. Anda tidak perlu menyediakan file kamus CSV lokal. Important Saat Anda mengatur parameter DictFilePath, konfigurasi di parameter MapDict tidak berlaku.
DictFilePathStringNoFile kamus dalam format CSV. Pemisah untuk file CSV ini adalah koma (,), dan referensi field ditunjukkan dengan tanda kutip ganda (").
DestKeyStringNoNama field setelah pemetaan.
HandleMissingBooleanNofalsefalseMenentukan apakah sistem memproses field target jika field tersebut tidak ada di log mentah.
  • true: Proses. Sistem mengisinya dengan nilai dari parameter Missing.

  • false (default): Jangan proses.

MissingStringNoUnknownUnknownSaat memproses field target yang hilang di log mentah, mengatur nilai pengisian yang sesuai. Nilai default adalah Unknown. Parameter ini berlaku ketika HandleMissing dikonfigurasi sebagai true.
MaxDictSizeIntNo10001000Ukuran maksimum kamus pemetaan. Nilai default adalah 1000, yang berarti hingga 1000 aturan pemetaan dapat disimpan. Untuk membatasi penggunaan memori plug-in di server, Anda dapat mengurangi nilai ini.
ModeStringNooverwriteoverwriteMetode pemrosesan ketika field yang dipetakan sudah ada di log mentah.
  • overwrite (default): Menimpa field asli.

  • fill: Tidak menimpa field asli.

Enkripsi field

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_encryptJenis plug-in. Tetapkan nilainya ke processor_encrypt.
SourceKeyString arrayYesNama field sumber.
EncryptionParametersObjectYesKonfigurasi terkait kunci.
KeyStringYesMenetapkan kunci. Harus terdiri dari 64 karakter heksadesimal.
IVStringNo00000000000000000000000000000000Menetapkan vektor inisial untuk enkripsi. Harus terdiri dari 32 karakter heksadesimal. Nilai default adalah 00000000000000000000000000000000.
KeyFilePathBooleanNoJalur file untuk membaca parameter enkripsi. Jika tidak dikonfigurasi, membaca dari Konfigurasi Logtail - Konfigurasi Input - Jalur File.
KeepSourceValueIfErrorStringNofalsefalseMenentukan apakah sistem menyimpan nilai field sumber jika enkripsi gagal.
  • true: Simpan.

  • false (default): Jangan simpan.

Jika enkripsi gagal, nilai field diganti dengan ENCRYPT_ERROR.

Ganti string

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_string_replaceJenis plug-in. Tetapkan nilainya ke processor_string_replace.
SourceKeyStringYesNama field sumber.
MethodStringYesMenentukan metode pencocokan. Nilai yang valid:
  • const: Mengganti dengan string.

  • regex: Mengganti menggunakan ekspresi reguler.

  • unquote: Menghapus karakter escape.

MatchStringNoMasukkan konten yang akan dicocokkan.
  • Saat Method diatur ke const, masukkan string yang cocok dengan konten yang akan diganti. Jika beberapa string cocok, semuanya diganti.

  • Saat Method diatur ke regex, masukkan ekspresi reguler yang cocok dengan konten yang akan diganti. Jika beberapa string cocok, semuanya diganti. Anda juga dapat menggunakan pengelompokan regex untuk mencocokkan grup tertentu.

  • Saat Method diatur ke unquote, Anda tidak perlu mengonfigurasi parameter ini.

ReplaceStringStringNoString untuk penggantian. Nilai default adalah "".
  • Saat Method diatur ke const, masukkan string untuk mengganti konten asli.

  • Saat Method diatur ke regex, masukkan string untuk mengganti konten asli. Mendukung penggantian berdasarkan grup regex.

  • Saat Method diatur ke unquote, Anda tidak perlu mengonfigurasi parameter ini.

DestKeyStringNoMenentukan field baru untuk konten yang diganti. Secara default, tidak ada field baru yang ditambahkan.

Encode dan decode data

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_base64_encodingJenis plug-in. Tetapkan nilainya ke processor_base64_encoding.
SourceKeyStringYesNama field sumber.
NewKeyStringYesNama field hasil setelah encoding.
NoKeyErrorBooleanNofalsefalseMenentukan apakah sistem melaporkan kesalahan jika field sumber yang Anda tentukan tidak ada di log mentah.
  • true: Laporkan kesalahan.

  • false (default): Jangan laporkan kesalahan.

Konversi log ke metrik

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_log_to_sls_metricJenis plug-in. Tetapkan nilainya ke processor_log_to_sls_metric.
MetricTimeKeyStringNoMenentukan field waktu di log, yang dipetakan ke field __time_nano__ dalam data deret waktu. Secara default, nilai field __time__ di log diekstraksi. Pastikan field yang ditentukan adalah timestamp yang valid dan diformat dengan benar. Saat ini mendukung timestamp Unix dalam satuan detik (10 digit), milidetik (13 digit), mikrodetik (16 digit), dan nanodetik (19 digit).
MetricLabelKeys[]StringYesMenentukan daftar Kunci untuk field __labels__. Kunci harus mengikuti ekspresi reguler ^[a-zA-Z_][a-zA-Z0-9_]*$. Nilai tidak boleh mengandung garis vertikal (|) atau #$#. Untuk informasi selengkapnya, lihat Time series data (Metric). Menambahkan field __labels__ di parameter MetricLabelKeys tidak didukung. Jika field sumber berisi field __labels__ , nilainya ditambahkan ke field __labels__ yang baru.
MetricValuesMapYesDigunakan untuk menentukan nama Metrik dan nilai Metrik. Nama Metrik sesuai dengan field __name__ dan harus mengikuti ekspresi reguler ^[a-zA-Z_:][a-zA-Z0-9_:]*$. Nilai Metrik sesuai dengan field __value__ dan harus bertipe Double. Untuk informasi selengkapnya, lihat Time series data (Metric) .
CustomMetricLabelsMapNoField __labels__ kustom. Kunci harus mengikuti ekspresi reguler ^[a-zA-Z_][a-zA-Z0-9_]*$, dan nilai tidak boleh mengandung garis vertikal (|) atau #$#. Untuk informasi selengkapnya, lihat Time series data (Metric).
IgnoreErrorBooleanNoMenentukan apakah akan mengeluarkan log Error ketika tidak ada log yang cocok. Nilai default adalah false, yang berarti tidak ada output.

Konversi log ke jejak

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/processor_otel_traceJenis plug-in. Tetapkan nilainya ke processor_otel_trace.
SourceKeyStringYesNama field sumber.
FormatStringYesjsonFormat setelah konversi. Nilai yang valid: protobuf, json, protojson.
NoKeyErrorBooleanNofalsetrueMenentukan apakah akan melaporkan kesalahan ketika field sumber yang sesuai tidak ada di log. Nilai default adalah false.
TraceIDNeedDecodeBooleanNoMenentukan apakah akan melakukan decoding Base64 pada TraceID. Nilai default adalah false. Ketika Format diatur ke protojson, jika TraceID telah di-encode Base64, Anda perlu mengatur TraceIDNeedDecode ke true. Jika tidak, konversi akan gagal.
SpanIDNeedDecodeBooleanNoMenentukan apakah akan melakukan decoding Base64 pada SpanID. Nilai default adalah false. Ketika Format diatur ke protojson, jika SpanID telah di-encode Base64, Anda perlu mengatur SpanIDNeedDecode ke true. Jika tidak, konversi akan gagal.
ParentSpanIDNeedDecodeBooleanNoMenentukan apakah akan melakukan decoding Base64 pada ParentSpanID. Nilai default adalah false. Ketika Format diatur ke protojson, jika ParentSpanID telah di-encode Base64, Anda perlu mengatur ParentSpanIDNeedDecode ke true. Jika tidak, konversi akan gagal.

Plug-in output

Plug-in output SLS

ParameterTypeRequiredDefault valueExampleDescription
TypestringYes/flusher_slsJenis plug-in. Tetapkan nilainya ke flusher_sls.
LogstorestirngYes/test-logstoreNama Logstore.

Elemen respons

Element

Type

Description

Example

Tidak ada yang didefinisikan.

Contoh

Respons sukses

JSONformat

{}

Kode kesalahan

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.