Prosesor mutasi string - CloudWatch Log Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Prosesor mutasi string

Bagian ini berisi informasi tentang prosesor mutasi string yang dapat Anda gunakan dengan transformator peristiwa log.

lowerCaseString

lowerCaseStringProsesor mengkonversi string ke versi huruf kecil.

Bidang Deskripsi Diperlukan? Default Batas

denganKeys

Daftar kunci untuk dikonversi ke huruf kecil

Ya

Entri maksimum: 10

Contoh

Ambil contoh peristiwa log berikut:

{ "outer_key": { "inner_key": "INNER_VALUE" } }

Konfigurasi transformator adalah ini, menggunakan lowerCaseString denganparseJSON:

[ { "parseJSON": {} }, { "lowerCaseString": { "withKeys":["outer_key.inner_key"] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key": "inner_value" } }

upperCaseString

upperCaseStringProsesor mengkonversi string ke versi huruf besar.

Bidang Deskripsi Diperlukan? Default Batas

denganKeys

Daftar kunci untuk dikonversi ke huruf besar

Ya

Entri maksimum: 10

Contoh

Ambil contoh peristiwa log berikut:

{ "outer_key": { "inner_key": "inner_value" } }

Konfigurasi transformator adalah ini, menggunakan upperCaseString denganparseJSON:

[ { "parseJSON": {} }, { "upperCaseString": { "withKeys":["outer_key.inner_key"] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key": "INNER_VALUE" } }

SplitString

splitStringProsesor adalah jenis prosesor mutasi string yang membagi bidang menjadi array menggunakan karakter pembatas.

Bidang Deskripsi Diperlukan? Default Batas

entri

Array entri. Setiap item dalam array harus berisi source dan delimiter bidang.

Ya

Entri maksimum: 10

sumber

Kunci dari nilai bidang untuk dibagi

Ya

Panjang maksimum: 128

pembatas

String pembatas untuk membagi nilai bidang

Ya

Panjang maksimum: 128

Contoh 1

Ambil contoh peristiwa log berikut:

[ { "parseJSON": {} }, { "splitString": { "entries": [ { "source": "outer_key.inner_key", "delimiter": "_" } ] } } ]

Konfigurasi transformator adalah ini, menggunakan splitString denganparseJSON:

[ { "parseJSON": {} }, { "splitString": { "entries": [ { "source": "outer_key.inner_key", "delimiter": "_" } ] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key": [ "inner", "value" ] } }

Contoh 2

Pembatas untuk membagi string bisa menjadi beberapa karakter panjang.

Ambil contoh peristiwa log berikut:

{ "outer_key": { "inner_key": "item1, item2, item3" } }

Konfigurasi transformator adalah sebagai berikut:

[ { "parseJSON": {} }, { "splitString": { "entries": [ { "source": "outer_key.inner_key", "delimiter": ", " } ] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key": [ "item1", "item2", "item3" ] } }

SubstituteString

substituteStringProsesor adalah jenis prosesor mutasi string yang cocok dengan nilai kunci terhadap ekspresi reguler dan menggantikan semua kecocokan dengan string pengganti.

Bidang Deskripsi Diperlukan? Default Batas

entri

Array entri. Setiap item dalam array harus berisisource,from, dan to bidang.

Ya

Entri maksimum: 10

sumber

Kunci bidang untuk memodifikasi

Ya

Panjang maksimum: 128

Kedalaman kunci bersarang maksimum: 3

From

String ekspresi reguler yang akan diganti. Karakter regex khusus seperti [dan] harus diloloskan menggunakan\\ saat menggunakan tanda kutip ganda dan dengan\ saat menggunakan tanda kutip tunggal atau ketika dikonfigurasi dari. Konsol Manajemen AWS Untuk informasi selengkapnya, lihat Pola Kelas di situs web Oracle.

Anda dapat membungkus pola (...) untuk membuat grup penangkap bernomor dan membuat grup penangkap (?P<group_name>...) bernama yang dapat direferensikan di bidang. to

Ya

Panjang maksimum: 128

kepada

String yang akan diganti untuk setiap kecocokan from Backreferences untuk menangkap grup dapat digunakan. Gunakan formulir $n untuk grup bernomor seperti $1 dan gunakan ${group_name} untuk grup bernama seperti $. {my_group} >

Ya

Panjang maksimum: 128

Jumlah backreferensi-referensi maksimum: 10

Jumlah maksimum referensi balik duplikat: 2

Contoh 1

Ambil contoh peristiwa log berikut:

{ "outer_key": { "inner_key1": "[]", "inner_key2": "123-345-567", "inner_key3": "A cat takes a catnap." } }

Konfigurasi transformator adalah ini, menggunakan substituteString denganparseJSON:

[ { "parseJSON": {} }, { "substituteString": { "entries": [ { "source": "outer_key.inner_key1", "from": "\\[\\]", "to": "value1" }, { "source": "outer_key.inner_key2", "from": "[0-9]{3}-[0-9]{3}-[0-9]{3}", "to": "xxx-xxx-xxx" }, { "source": "outer_key.inner_key3", "from": "cat", "to": "dog" } ] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key1": "value1", "inner_key2": "xxx-xxx-xxx", "inner_key3": "A dog takes a dognap." } }

Contoh 2

Ambil contoh peristiwa log berikut:

{ "outer_key": { "inner_key1": "Tom, Dick, and Harry", "inner_key2": "arn:aws:sts::123456789012:assumed-role/MyImportantRole/MySession" } }

Konfigurasi transformator adalah ini, menggunakan substituteString denganparseJSON:

[ { "parseJSON": {} }, { "substituteString": { "entries": [ { "source": "outer_key.inner_key1", "from": "(\w+), (\w+), and (\w+)", "to": "$1 and $3" }, { "source": "outer_key.inner_key2", "from": "^arn:aws:sts::(?P<account_id>\\d{12}):assumed-role/(?P<role_name>[\\w+=,.@-]+)/(?P<role_session_name>[\\w+=,.@-]+)$", "to": "${account_id}:${role_name}:${role_session_name}" } ] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key1": "Tom and Harry", "inner_key2": "123456789012:MyImportantRole:MySession" } }

TrimString

trimStringProsesor menghapus spasi putih dari awal dan akhir kunci.

Bidang Deskripsi Diperlukan? Default Batas

denganKeys

Daftar kunci untuk memangkas

Ya

Entri maksimum: 10

Contoh

Ambil contoh peristiwa log berikut:

{ "outer_key": { "inner_key": " inner_value " } }

Konfigurasi transformator adalah ini, menggunakan trimString denganparseJSON:

[ { "parseJSON": {} }, { "trimString": { "withKeys":["outer_key.inner_key"] } } ]

Peristiwa log yang diubah adalah sebagai berikut.

{ "outer_key": { "inner_key": "inner_value" } }