Deklarasi Sumber - Amazon Kinesis Agent for Microsoft Windows

Deklarasi Sumber

Di Amazon Kinesis Agent for Microsoft Windows, deklarasi sumber menjelaskan di mana dan apa saja data log, peristiwa, dan metrik yang harus dikumpulkan. Deklarasi sumber juga secara opsional menentukan informasi untuk mengurai data tersebut sehingga dapat diubah. Bagian berikut menjelaskan konfigurasi untuk jenis sumber bawaan yang tersedia di Kinesis Agent for Windows. Karena Kinesis Agent for Windows dapat diperluas, Anda dapat menambahkan jenis sumber khusus. Setiap jenis sumber biasanya memerlukan pasangan kunci-nilai tertentu dalam objek konfigurasi yang relevan untuk jenis sumber.

Semua deklarasi sumber harus berisi setidaknya pasangan kunci-nilai berikut:

Id

Sebuah string unik yang mengidentifikasi objek sumber tertentu dalam file konfigurasi.

SourceType

Nama jenis sumber untuk objek sumber ini. Jenis sumber menentukan asal data log, peristiwa, atau metrik yang sedang dikumpulkan oleh objek sumber ini. Jenis sumber juga mengontrol apa saja aspek lain dari sumber yang dapat dideklarasikan.

Untuk contoh file konfigurasi lengkap yang menggunakan berbagai jenis deklarasi sumber, lihat Streaming dari Berbagai Sumber ke Kinesis Data Streams.

Konfigurasi DirectorySource

Overview

Jenis sumber DirectorySource mengumpulkan log dari file yang disimpan dalam direktori tertentu. Karena berkas log ada dalam berbagai format, deklarasi DirectorySource memungkinkan Anda menentukan format data dalam berkas log. Kemudian Anda dapat mengubah isi log ke format standar seperti JSON atau XML sebelum mengalirkannya ke berbagai layanan AWS.

Berikut ini adalah contoh deklarasi DirectorySource:

{ "Id": "myLog", "SourceType": "DirectorySource", "Directory": "C:\\Program Data\\MyCompany\\MyService\\logs", "FileNameFilter": "*.log", "IncludeSubdirectories": true, "IncludeDirectoryFilter": "cpu\\cpu-1;cpu\\cpu-2;load;memory", "RecordParser": "Timestamp", "TimestampFormat": "yyyy-MM-dd HH:mm:ss.ffff", "Pattern": "\\d{4}-\\d{2}-\\d(2}", "ExtractionPattern": "", "TimeZoneKind": "UTC", "SkipLines": 0, "Encoding": "utf-16", "ExtractionRegexOptions": "Multiline" }

Semua deklarasi DirectorySource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "DirectorySource" (wajib).

Directory

Jalur ke direktori yang berisi berkas log (diperlukan).

FileNameFilter

Secara opsional membatasi sekumpulan file dalam direktori tempat data log dikumpulkan berdasarkan pola penamaan file wildcard. Jika Anda memiliki beberapa pola nama berkas log, fitur ini memungkinkan Anda untuk menggunakan satu DirectorySource, seperti yang ditunjukkan dalam contoh berikut.

FileNameFilter: "*.log|*.txt"

Administrator sistem terkadang mengompresi berkas log sebelum mengarsipkannya. Jika Anda menentukan "*.*" di FileNameFilter, file terkompresi yang dikenal menjadi dikecualikan. Fitur ini mencegah file .zip, .gz, dan .bz2 dari dialirkan secara tidak sengaja. Jika pasangan kunci-nilai ini tidak ditentukan, data dari semua file dalam direktori dikumpulkan secara default.

IncludeSubdirectories

Menentukan untuk memantau subdirektori hingga kedalaman arbitrer yang dibatasi oleh sistem operasi. Fitur ini berguna untuk memantau server web dengan beberapa situs web. Anda juga dapat menggunakan atribut IncludeDirectoryFilter untuk memantau subdirektori tertentu saja yang ditentukan dalam filter.

RecordParser

Menentukan bagaimana jenis sumber DirectorySource harus mengurai berkas log yang ditemukan di direktori tertentu. Pasangan kunci-nilai ini diperlukan, dan nilai-nilai yang valid adalah sebagai berikut:

  • SingleLine — Setiap baris dari berkas log adalah catatan log.

  • SingleLineJson — Setiap baris dari berkas log adalah catatan log berformat JSON. Parser ini berguna ketika Anda ingin menambahkan pasangan kunci-nilai tambahan ke JSON menggunakan dekorasi objek. Untuk informasi lebih lanjut, lihat Mengonfigurasi Dekorasi Sink. Untuk contoh yang menggunakan parser catatan SingleLineJson, lihat Tutorial: Mengalirkan Berkas Log JSON ke Amazon S3 Menggunakan Kinesis Agent for Windows.

  • Timestamp — Satu atau beberapa baris dapat mencakup satu catatan log. Catatan log dimulai dengan timestamp. Opsi ini memerlukan penentuan pasangan kunci-nilai TimestampFormat.

  • Regex — Setiap catatan dimulai dengan teks yang cocok dengan ekspresi reguler tertentu. Opsi ini memerlukan penentuan pasangan kunci-nilai Pattern.

  • SysLog — Menunjukkan bahwa berkas log ditulis dalam format standar syslog. Berkas log diurai menjadi catatan-catatan berdasarkan spesifikasi tersebut.

  • Delimited — Versi sederhana dari parser catatan Regex tempat item data dalam catatan log dipisahkan oleh pembatas yang konsisten. Opsi ini lebih mudah digunakan dan lebih cepat berjalan daripada parser Regex, dan lebih disukai bila opsi ini tersedia. Bila menggunakan opsi ini, Anda harus menentukan pasangan kunci-nilai Delimiter.

TimestampField

Menentukan bidang JSON yang berisi timestamp untuk catatan. Ini hanya digunakan dengan RecordParser SingleLineJson. Pasangan kunci-nilai ini opsional. Jika tidak ditentukan, Kinesis Agent for Windows akan menggunakan waktu ketika catatan dibaca sebagai timestamp. Salah satu keuntungan dalam menentukan pasangan kunci-nilai ini adalah statistik latensi yang dihasilkan oleh Kinesis Agent for Windows lebih akurat.

TimestampFormat

Menentukan cara mengurai tanggal dan waktu yang terkait dengan catatan. Nilainya adalah string epoch atau string format tanggal/waktu .NET. Jika nilainya adalah epoch, waktu diurai berdasarkan waktu UNIX Epoch. Untuk informasi selengkapnya tentang waktu UNIX Epoch, lihat Waktu Unix. Untuk informasi lebih lanjut tentang string format tanggal/waktu .NET, lihat String Format Tanggal dan Waktu Khusus dalam dokumentasi Microsoft .NET). Pasangan kunci-nilai ini diperlukan hanya jika parser catatan Timestamp ditentukan, atau parser catatan SingleLineJson ditentukan bersama dengan pasangan kunci-nilai TimestampField.

Pattern

Menentukan ekspresi reguler yang harus cocok dengan baris pertama dari catatan yang berpotensi multi-baris. Pasangan kunci-nilai ini hanya diperlukan untuk parser catatan Regex.

ExtractionPattern

Menentukan ekspresi reguler yang harus menggunakan grup bernama. Catatan diurai menggunakan ekspresi reguler ini dan grup-grup bernama membentuk bidang catatan yang diurai. Bidang ini kemudian digunakan sebagai dasar untuk membuat objek atau dokumen JSON atau XML yang kemudian dialirkan oleh sink ke berbagai layanan AWS. Pasangan kunci-nilai ini opsional, dan tersedia dengan parser catatan Regex dan parser Timestamp.

Nama grup Timestamp diproses secara khusus karena menunjukkan ke parser Regex yang bidangnya berisi tanggal dan waktu untuk setiap catatan di setiap berkas log.

Delimiter

Menentukan karakter atau string yang memisahkan setiap item dalam setiap catatan log. Pasangan kunci-nilai ini harus (dan hanya dapat) digunakan dengan parser catatan Delimited. Gunakan urutan dua karakter \t untuk mewakili karakter tab.

HeaderPattern

Menentukan ekspresi reguler untuk pencocokan baris dalam berkas log yang berisi sekumpulan header untuk catatan. Jika berkas log tidak berisi informasi header, gunakan pasangan kunci-nilai Headers untuk menentukan header implisit. Pasangan kunci-nilai HeaderPattern opsional dan hanya berlaku untuk parser catatan Delimited.

catatan

Entri header yang kosong (panjang 0) pada kolom menyebabkan data untuk kolom tersebut difilter dari output akhir dari output yang diurai DirectorySource.

Headers

Menentukan nama untuk kolom data yang diurai menggunakan pembatas yang ditentukan. Pasangan kunci-nilai ini opsional dan hanya berlaku untuk parser catatan Delimited.

catatan

Entri header yang kosong (panjang 0) pada kolom menyebabkan data untuk kolom tersebut difilter dari output akhir dari output yang diurai DirectorySource.

RecordPattern

Menentukan ekspresi reguler yang mengidentifikasi baris dalam berkas log yang berisi data catatan. Selain baris header opsional yang diidentifikasi oleh HeaderPattern, baris yang tidak cocok dengan RecordPattern yang ditentukan diabaikan selama pemrosesan catatan. Pasangan kunci-nilai ini opsional dan hanya berlaku untuk parser catatan Delimited. Jika tidak disediakan, default-nya digunakan untuk mempertimbangkan setiap baris yang tidak cocok dengan HeaderPattern opsional atau CommentPattern opsional sebagai baris yang berisi data catatan yang dapat diurai.

CommentPattern

Menentukan ekspresi reguler yang mengidentifikasi baris dalam berkas log yang harus dikecualikan sebelum mengurai data dalam berkas log. Pasangan kunci-nilai ini opsional dan hanya berlaku untuk parser catatan Delimited. Jika tidak disediakan, default-nya digunakan untuk mempertimbangkan setiap baris yang tidak cocok dengan HeaderPattern opsional sebagai baris yang berisi data catatan yang dapat diurai, kecuali jika RecordPattern ditentukan.

TimeZoneKind

Menentukan apakah timestamp dalam berkas log harus dianggap dalam zona waktu lokal atau zona waktu UTC. Ini opsional dan default-nya adalah UTC. Satu-satunya nilai yang valid untuk pasangan kunci-nilai ini adalah Local atau UTC. Timestamp tidak pernah diubah jika TimeZoneKind tidak ditentukan atau jika nilainya adalah UTC. Timestamp dikonversi ke UTC jika nilai TimeZoneKind adalah Local dan sink yang menerima timestamp adalah CloudWatch Logs, atau catatan yang diurai dikirim ke sink lainnya. Tanggal dan waktu yang tersemat dalam pesan tidak dikonversi.

SkipLines

Jika ditentukan, mengontrol jumlah baris yang diabaikan pada awal setiap berkas log sebelum catatan diurai. Ini opsional, dan nilai default-nya adalah 0.

Encoding

Secara default, Kinesis Agent for Windows dapat secara otomatis mendeteksi pengkodean dari bytemark. Namun, pengkodean otomatis mungkin tidak berfungsi dengan benar pada beberapa format unicode yang lebih lama. Contoh berikut menentukan pengkodean yang diperlukan untuk mengalirkan log Microsoft SQL Server.

"Encoding": "utf-16"

Untuk daftar nama pengkodean, lihat Daftar pengkodean dalam dokumentasi Microsoft .NET.

ExtractionRegexOptions

Anda dapat menggunakan ExtractionRegexOptions untuk menyederhanakan ekspresi reguler. Pasangan kunci-nilai ini opsional. Default-nya adalah "None".

Contoh berikut menentukan bahwa ekspresi "." cocok dengan karakter apa pun termasuk \r\n.

"ExtractionRegexOptions" = "Multiline"

Untuk daftar bidang yang mungkin untuk ExtractionRegexOptions, lihat RegexOptions Enum dalam dokumentasi Microsoft .NET.

Parser Catatan Regex

Anda dapat mengurai log teks yang tidak terstruktur menggunakan parser catatan Regex bersama dengan pasangan kunci-nilai TimestampFormat, Pattern, dan ExtractionPattern. Misalnya, anggaplah berkas log Anda terlihat seperti berikut:

[FATAL][2017/05/03 21:31:00.534][0x00003ca8][0000059c][][ActivationSubSystem][GetActivationForSystemID][0] 'ActivationException.File: EQCASLicensingSubSystem.cpp' [FATAL][2017/05/03 21:31:00.535][0x00003ca8][0000059c][][ActivationSubSystem][GetActivationForSystemID][0] 'ActivationException.Line: 3999'

Anda dapat menentukan ekspresi reguler berikut untuk pasangan kunci-nilai Pattern untuk membantu memecah berkas log ke catatan log individu:

^\[\w+\]\[(?<TimeStamp>\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{3})\]

Ekspresi reguler ini cocok dengan urutan berikut:

  1. Awal string yang dievaluasi.

  2. Satu atau beberapa karakter kata dikurung oleh tanda kurung siku.

  3. Satu timestamp dikurung oleh tanda kurung siku. Timestamp cocok dengan urutan berikut:

    1. Tahun dalam empat digit

    2. Satu garis miring ke depan

    3. Bulan dalam dua digit

    4. Satu garis miring ke depan

    5. Hari dalam dua digit

    6. Satu spasi

    7. Jam dalam dua digit

    8. Satu tanda titik dua

    9. Menit dalam dua digit

    10. Satu tanda titik dua

    11. Detik dalam dua digit

    12. Satu titik

    13. Milidetik dalam tiga digit

Anda dapat menentukan format berikut untuk pasangan kunci-nilai TimestampFormat untuk mengonversi timestamp tekstual menjadi tanggal dan waktu:

yyyy/MM/dd HH:mm:ss.fff

Anda dapat menggunakan ekspresi reguler berikut untuk mengekstraksi bidang catatan log melalui pasangan kunci-nilai ExtractionPattern.

^\[(?<Severity>\w+)\]\[(?<TimeStamp>\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{3})\]\[[^]]*\]\[[^]]*\]\[[^]]*\]\[(?<SubSystem>\w+)\]\[(?<Module>\w+)\]\[[^]]*\] '(?<Message>.*)'$

Ekspresi reguler ini cocok dengan grup berikut secara berurutan:

  1. Severity — Satu atau beberapa karakter kata dikurung oleh tanda kurung siku.

  2. TimeStamp — Lihat deskripsi sebelumnya untuk timestamp.

  3. Tiga urutan dengan nol karakter atau lebih dalam tanda kurung siku tanpa nama dilewati.

  4. SubSystem — Satu atau beberapa karakter kata dikurung oleh tanda kurung siku.

  5. Module — Satu atau beberapa karakter kata dikurung oleh tanda kurung siku.

  6. Satu urutan dengan nol karakter atau lebih dalam tanda kurung siku tanpa nama dilewati.

  7. Satu spasi tanpa nama dilewati.

  8. Message — Nol karakter atau lebih diapit oleh tanda petik tunggal.

Deklarasi sumber berikut menggabungkan ekspresi reguler ini dan format waktu tanggal untuk memberikan petunjuk lengkap kepada Kinesis Agent for Windows untuk mengurai jenis berkas log ini.

{ "Id": "PrintLog", "SourceType": "DirectorySource", "Directory": "C:\\temp\\PrintLogTest", "FileNameFilter": "*.log", "RecordParser": "Regex", "TimestampFormat": "yyyy/MM/dd HH:mm:ss.fff", "Pattern": "^\\[\\w+\\]\\[(?<TimeStamp>\\d{4}/\\d{2}/\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3})\\]", "ExtractionPattern": "^\\[(?<Severity>\\w+)\\]\\[(?<TimeStamp>\\d{4}/\\d{2}/\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3})\\]\\[[^]]*\\]\\[[^]]*\\]\\[[^]]*\\]\\[(?<SubSystem>\\w+)\\]\\[(?<Module>\\w+)\\]\\[[^]]*\\] '(?<Message>.*)'$", "TimeZoneKind": "UTC" }
catatan

Garis miring terbalik dalam file berformat JSON harus dihapus dengan garis miring terbalik tambahan.

Untuk informasi selengkapnya tentang ekspresi reguler, lihat Bahasa Ekspresi Reguler - Referensi Cepat dalam dokumentasi Microsoft .NET.

Parser Catatan Delimited

Anda dapat menggunakan parser catatan Delimited untuk mengurai file log dan data semi terstruktur yang memiliki urutan karakter yang konsisten yang memisahkan setiap kolom data di setiap baris data. Misalnya, file CSV menggunakan koma untuk memisahkan setiap kolom data, dan file TSV menggunakan tab.

Anggaplah Anda ingin mengurai berkas log Format Basis Data NPS Microsoft yang dihasilkan oleh server kebijakan Jaringan. File seperti itu mungkin terlihat seperti berikut:

"NPS-MASTER","IAS",03/22/2018,23:07:55,1,"user1","Domain1\user1",,,,,,,,0,"192.168.86.137","Nate - Test 1",,,,,,,1,,0,"311 1 192.168.0.213 03/15/2018 08:14:29 1",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"Use Windows authentication for all users",1,,,, "NPS-MASTER","IAS",03/22/2018,23:07:55,3,,"Domain1\user1",,,,,,,,0,"192.168.86.137","Nate - Test 1",,,,,,,1,,16,"311 1 192.168.0.213 03/15/2018 08:14:29 1",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"Use Windows authentication for all users",1,,,,

Contoh file konfigurasi appsettings.json berikut mencakup deklarasi DirectorySource yang menggunakan parser catatan Delimited untuk mengurai teks ini menjadi representasi objek. File tersebut kemudian mengalirkan data berformat JSON ke Kinesis Data Firehose:

{ "Sources": [ { "Id": "NPS", "SourceType": "DirectorySource", "Directory": "C:\\temp\\NPS", "FileNameFilter": "*.log", "RecordParser": "Delimited", "Delimiter": ",", "Headers": "ComputerName,ServiceName,Record-Date,Record-Time,Packet-Type,User-Name,Fully-Qualified-Distinguished-Name,Called-Station-ID,Calling-Station-ID,Callback-Number,Framed-IP-Address,NAS-Identifier,NAS-IP-Address,NAS-Port,Client-Vendor,Client-IP-Address,Client-Friendly-Name,Event-Timestamp,Port-Limit,NAS-Port-Type,Connect-Info,Framed-Protocol,Service-Type,Authentication-Type,Policy-Name,Reason-Code,Class,Session-Timeout,Idle-Timeout,Termination-Action,EAP-Friendly-Name,Acct-Status-Type,Acct-Delay-Time,Acct-Input-Octets,Acct-Output-Octets,Acct-Session-Id,Acct-Authentic,Acct-Session-Time,Acct-Input-Packets,Acct-Output-Packets,Acct-Terminate-Cause,Acct-Multi-Ssn-ID,Acct-Link-Count,Acct-Interim-Interval,Tunnel-Type,Tunnel-Medium-Type,Tunnel-Client-Endpt,Tunnel-Server-Endpt,Acct-Tunnel-Conn,Tunnel-Pvt-Group-ID,Tunnel-Assignment-ID,Tunnel-Preference,MS-Acct-Auth-Type,MS-Acct-EAP-Type,MS-RAS-Version,MS-RAS-Vendor,MS-CHAP-Error,MS-CHAP-Domain,MS-MPPE-Encryption-Types,MS-MPPE-Encryption-Policy,Proxy-Policy-Name,Provider-Type,Provider-Name,Remote-Server-Address,MS-RAS-Client-Name,MS-RAS-Client-Version", "TimestampField": "{Record-Date} {Record-Time}", "TimestampFormat": "MM/dd/yyyy HH:mm:ss" } ], "Sinks": [ { "Id": "npslogtest", "SinkType": "KinesisFirehose", "Region": "us-west-2", "StreamName": "npslogtest", "Format": "json" } ], "Pipes": [ { "Id": "W3SVCLog1ToKinesisStream", "SourceRef": "NPS", "SinkRef": "npslogtest" } ] }

Data berformat JSON yang dialirkan ke Kinesis Data Firehose terlihat seperti berikut:

{ "ComputerName": "NPS-MASTER", "ServiceName": "IAS", "Record-Date": "03/22/2018", "Record-Time": "23:07:55", "Packet-Type": "1", "User-Name": "user1", "Fully-Qualified-Distinguished-Name": "Domain1\\user1", "Called-Station-ID": "", "Calling-Station-ID": "", "Callback-Number": "", "Framed-IP-Address": "", "NAS-Identifier": "", "NAS-IP-Address": "", "NAS-Port": "", "Client-Vendor": "0", "Client-IP-Address": "192.168.86.137", "Client-Friendly-Name": "Nate - Test 1", "Event-Timestamp": "", "Port-Limit": "", "NAS-Port-Type": "", "Connect-Info": "", "Framed-Protocol": "", "Service-Type": "", "Authentication-Type": "1", "Policy-Name": "", "Reason-Code": "0", "Class": "311 1 192.168.0.213 03/15/2018 08:14:29 1", "Session-Timeout": "", "Idle-Timeout": "", "Termination-Action": "", "EAP-Friendly-Name": "", "Acct-Status-Type": "", "Acct-Delay-Time": "", "Acct-Input-Octets": "", "Acct-Output-Octets": "", "Acct-Session-Id": "", "Acct-Authentic": "", "Acct-Session-Time": "", "Acct-Input-Packets": "", "Acct-Output-Packets": "", "Acct-Terminate-Cause": "", "Acct-Multi-Ssn-ID": "", "Acct-Link-Count": "", "Acct-Interim-Interval": "", "Tunnel-Type": "", "Tunnel-Medium-Type": "", "Tunnel-Client-Endpt": "", "Tunnel-Server-Endpt": "", "Acct-Tunnel-Conn": "", "Tunnel-Pvt-Group-ID": "", "Tunnel-Assignment-ID": "", "Tunnel-Preference": "", "MS-Acct-Auth-Type": "", "MS-Acct-EAP-Type": "", "MS-RAS-Version": "", "MS-RAS-Vendor": "", "MS-CHAP-Error": "", "MS-CHAP-Domain": "", "MS-MPPE-Encryption-Types": "", "MS-MPPE-Encryption-Policy": "", "Proxy-Policy-Name": "Use Windows authentication for all users", "Provider-Type": "1", "Provider-Name": "", "Remote-Server-Address": "", "MS-RAS-Client-Name": "", "MS-RAS-Client-Version": "" }

Parser Catatan SysLog

Untuk parser catatan SysLog, output yang diurai dari sumber mencakup informasi berikut:

Atribut Jenis Deskripsi
SysLogTimeStamp Rangkaian Tanggal dan waktu asli dari berkas log berformat syslog.
Hostname Rangkaian Nama komputer tempat berkas log berformat syslog berada.
Program Rangkaian Nama aplikasi atau layanan yang menghasilkan berkas log.
Message Rangkaian Pesan log yang dihasilkan oleh aplikasi atau layanan.
TimeStamp Rangkaian Tanggal dan waktu yang diurai dalam format ISO 8601.

Berikut ini contoh data SysLog yang diubah menjadi JSON:

{ "SysLogTimeStamp": "Jun 18 01:34:56", "Hostname": "myhost1.example.mydomain.com", "Program": "mymailservice:", "Message": "Info: ICID 123456789 close", "TimeStamp": "2017-06-18T01:34.56.000" }

Summary

Berikut adalah ringkasan dari pasangan kunci-nilai yang tersedia untuk sumber DirectorySource dan RecordParser yang terkait dengan pasangan kunci-nilai tersebut.

Nama Kunci RecordParser Catatan
SourceType Diperlukan untuk semua Harus memiliki nilai DirectorySource
Directory Diperlukan untuk semua
FileNameFilter Opsional untuk semua
RecordParser Diperlukan untuk semua
TimestampField Opsi untuk SingleLineJson
TimestampFormat Diperlukan untuk Timestamp, dan diperlukan untuk SingleLineJson jika TimestampField ditentukan
Pattern Diperlukan untuk Regex
ExtractionPattern Opsi untuk Regex Diperlukan untuk Regex jika sink menentukan format json atau xml
Delimiter Diperlukan untuk Delimited
HeaderPattern Opsi untuk Delimited
Headers Opsi untuk Delimited
RecordPattern Opsi untuk Delimited
CommentPattern Opsi untuk Delimited
TimeZoneKind Opsional untuk Regex, Timestamp, SysLog, dan SingleLineJson jika bidang timestamp diidentifikasi
SkipLines Opsional untuk semua

Konfigurasi ExchangeLogSource

Jenis ExchangeLogSource digunakan untuk mengumpulkan log dari Microsoft Exchange. Exchange menghasilkan log dalam beberapa jenis format log. Jenis sumber ini mengurai semua jenis format log tersebut. Meskipun semua jenis format log tersebut dapat diurai menggunakan jenis DirectorySource dengan parser catatan Regex, penguraian akan jauh lebih sederhana jika menggunakan ExchangeLogSource. Hal ini karena Anda tidak perlu merancang dan memberikan ekspresi reguler untuk format berkas log. Berikut ini adalah contoh deklarasi ExchangeLogSource:

{ "Id": "MyExchangeLog", "SourceType": "ExchangeLogSource", "Directory": "C:\\temp\\ExchangeLogTest", "FileNameFilter": "*.log" }

Semua deklarasi pertukaran dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "ExchangeLogSource" (wajib).

Directory

Jalur ke direktori yang berisi berkas log (diperlukan).

FileNameFilter

Secara opsional membatasi sekumpulan file dalam direktori tempat data log dikumpulkan berdasarkan pola penamaan file wildcard. Jika pasangan kunci-nilai ini tidak ditentukan, maka secara default, data log dari semua file dalam direktori dikumpulkan.

TimestampField

Nama kolom yang berisi tanggal dan waktu untuk catatan. Pasangan kunci-nilai ini opsional dan tidak perlu ditentukan jika nama bidang adalah date-time atau DateTime. Sebaliknya, hal itu tidak diperlukan.

Konfigurasi W3SVCLogSource

Jenis W3SVCLogSource digunakan untuk mengumpulkan log dari Internet Information Services (IIS) untuk Windows.

Berikut ini adalah contoh deklarasi W3SVCLogSource:

{ "Id": "MyW3SVCLog", "SourceType": "W3SVCLogSource", "Directory": "C:\\inetpub\\logs\\LogFiles\\W3SVC1", "FileNameFilter": "*.log" }

Semua deklarasi W3SVCLogSource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "W3SVCLogSource" (wajib).

Directory

Jalur ke direktori yang berisi berkas log (diperlukan).

FileNameFilter

Secara opsional membatasi sekumpulan file dalam direktori tempat data log dikumpulkan berdasarkan pola penamaan file wildcard. Jika pasangan kunci-nilai ini tidak ditentukan, maka secara default, data log dari semua file dalam direktori dikumpulkan.

Konfigurasi UlsSource

Jenis UlsSource digunakan untuk mengumpulkan log dari Microsoft SharePoint. Berikut ini adalah contoh deklarasi UlsSource:

{ "Id": "UlsSource", "SourceType": "UlsSource", "Directory": "C:\\temp\\uls", "FileNameFilter": "*.log" }

Semua deklarasi UlsSource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "UlsSource" (wajib).

Directory

Jalur ke direktori yang berisi berkas log (diperlukan).

FileNameFilter

Secara opsional membatasi sekumpulan file dalam direktori tempat data log dikumpulkan berdasarkan pola penamaan file wildcard. Jika pasangan kunci-nilai ini tidak ditentukan, maka secara default, data log dari semua file dalam direktori dikumpulkan.

Konfigurasi WindowsEventLogSource

Jenis WindowsEventLogSource digunakan untuk mengumpulkan peristiwa dari layanan Windows Event Log. Berikut ini adalah contoh deklarasi WindowsEventLogSource:

{ "Id": "mySecurityLog", "SourceType": "WindowsEventLogSource", "LogName": "Security" }

Semua deklarasi WindowsEventLogSource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "WindowsEventLogSource" (wajib).

LogName

Peristiwa dikumpulkan dari log yang ditentukan. Nilai umum mencakup Application, Security, dan System, tetapi Anda dapat menentukan nama log peristiwa Windows yang valid. Pasangan kunci-nilai ini wajib diisi.

Query

Secara opsional membatasi peristiwa yang merupakan output dari WindowsEventLogSource. Jika pasangan kunci-nilai ini tidak ditentukan, maka secara default, semua peristiwa adalah output. Untuk informasi tentang sintaks nilai ini, lihat Kueri Peristiwa dan XML Peristiwa dalam dokumentasi Windows. Untuk informasi tentang definisi tingkat log, lihat Jenis Peristiwa dalam dokumentasi Windows.

IncludeEventData

Secara opsional memungkinkan pengumpulan dan streaming data peristiwa khusus penyedia yang berkaitan dengan peristiwa dari log peristiwa Windows tertentu ketika nilai pasangan kunci-nilai ini adalah "true". Hanya data peristiwa yang dapat berhasil diserialkan yang disertakan. Pasangan kunci-nilai ini opsional, dan jika tidak ditentukan, data peristiwa khusus penyedia tidak dikumpulkan.

catatan

Menyertakan data peristiwa dapat meningkatkan jumlah data yang dialirkan dari sumber ini secara signifikan. Ukuran maksimum sebuah peristiwa dapat 262.143 byte dengan menyertakan data peristiwa.

Output yang diurai dari WindowsEventLogSource berisi informasi berikut ini:

Atribut Jenis Deskripsi
EventId Int Pengidentifikasi jenis peristiwa tersebut.
Description Rangkaian Teks yang menjelaskan detail peristiwa.
LevelDisplayName Rangkaian Kategori peristiwa (salah satu dari Kesalahan, Peringatan, Informasi, Audit Keberhasilan, Audit Kegagalan).
LogName Rangkaian Tempat peristiwa dicatat (biasanya nilainya adalah Application, Security, dan System, tapi ada banyak kemungkinan).
MachineName Rangkaian Komputer yang mencatat peristiwa tersebut.
ProviderName Rangkaian Aplikasi atau layanan yang mencatat peristiwa tersebut.
TimeCreated Rangkaian Waktu terjadinya peristiwa dalam format ISO 8601.
Index Int Letak entri di log.
UserName Rangkaian Pembuat entri jika diketahui.
Keywords Rangkaian Jenis peristiwa. Nilai standar termasuk AuditFailure (peristiwa audit keamanan yang gagal), AuditSuccess (peristiwa audit keamanan yang berhasil), Classic (peristiwa yang dimunculkan dengan fungsi RaiseEvent), Correlation Hint (peristiwa transfer), SQM (peristiwa Mekanisme Kualitas Layanan), WDI Context (peristiwa konteks Windows Diagnostic Infrastructure), dan WDI Diag (peristiwa diagnostik Windows Diagnostic Infrastructure).
EventData Daftar objek Data tambahan khusus penyedia opsional tentang log peristiwa. Ini hanya disertakan jika nilai untuk pasangan kunci-nilai IncludeEventData adalah "true".

Berikut ini contoh peristiwa yang diubah menjadi JSON:

{[ "EventId": 7036, "Description": "The Amazon SSM Agent service entered the stopped state.", "LevelDisplayName": "Informational", "LogName": "System", "MachineName": "mymachine.mycompany.com", "ProviderName": "Service Control Manager", "TimeCreated": "2017-10-04T16:42:53.8921205Z", "Index": 462335, "UserName": null, "Keywords": "Classic", "EventData": [ "Amazon SSM Agent", "stopped", "rPctBAMZFhYubF8zVLcrBd3bTTcNzHvY5Jc2Br0aMrxxx==" ]}

Konfigurasi WindowsEventLogPollingSource

WindowsEventLogPollingSource menggunakan mekanisme berbasis polling untuk mengumpulkan semua peristiwa baru dari log peristiwa yang cocok dengan parameter yang dikonfigurasi. Interval polling diperbarui secara dinamis antara 100 md dan 5000 md tergantung pada berapa banyak peristiwa yang dikumpulkan selama polling terakhir. Berikut ini adalah contoh deklarasi WindowsEventLogPollingSource:

{ "Id": "MySecurityLog", "SourceType": "WindowsEventLogPollingSource", "LogName": "Security", "IncludeEventData": "true", "Query": "", "CustomFilters": "ExcludeOwnSecurityEvents" }

Semua deklarasi WindowsEventLogPollingSource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "WindowsEventLogPollingSource" (wajib).

LogName

Menentukan log. Pilihan yang valid adalah Application, Security, System, atau log valid lainnya.

IncludeEventData

Opsional. Saat true, menetapkan bahwa EventData tambahan disertakan ketika dialirkan sebagai JSON dan XML. Default adalah false.

Query

Opsional. Log peristiwa Windows mendukung pembuatan kueri peristiwa menggunakan ekspresi XPath, yang dapat Anda tentukan menggunakan Query. Untuk informasi selengkapnya, lihat Kueri Peristiwa dan XML Peristiwa dalam dokumentasi Microsoft.

CustomFilters

Opsional. Daftar filter dipisahkan oleh titik koma (;). Filter berikut dapat ditentukan.

ExcludeOwnSecurityEvents

Tidak termasuk peristiwa keamanan yang dihasilkan oleh Kinesis Agent for Windows sendiri.

Konfigurasi WindowsETWEventSource

Jenis WindowsETWEventSource digunakan untuk mengumpulkan jejak peristiwa aplikasi dan layanan menggunakan fitur bernama Event Tracing for Windows (ETW). Untuk informasi selengkapnya, lihat Pelacakan Peristiwa dalam dokumentasi Windows.

Berikut ini adalah contoh deklarasi WindowsETWEventSource:

{ "Id": "ClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": 32768 }

Semua deklarasi WindowsETWEventSource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "WindowsETWEventSource" (wajib).

ProviderName

Menentukan penyedia peristiwa yang harus digunakan untuk mengumpulkan peristiwa pelacakan. Ini harus nama penyedia ETW yang valid untuk penyedia yang diinstal. Untuk menentukan penyedia yang harus diinstal, jalankan perintah berikut di jendela prompt perintah Windows:

logman query providers
TraceLevel

Menentukan kategori peristiwa pelacakan yang harus dikumpulkan. Nilai yang diizinkan antara lain Critical, Error, Warning, Informational, dan Verbose. Arti yang tepat tergantung pada penyedia ETW yang dipilih.

MatchAnyKeyword

Nilai ini adalah angka 64-bit, di mana setiap bit mewakili kata kunci individu. Setiap kata kunci menggambarkan kategori peristiwa yang akan dikumpulkan. Untuk mengetahui kata kunci yang didukung dan nilai-nilainya serta bagaimana kaitannya dengan TraceLevel, lihat dokumentasi untuk penyedia tersebut. Misalnya, untuk informasi tentang penyedia CLR ETW, lihat Kata Kunci dan Tingkat CLR ETW dalam dokumentasi Microsoft .NET Framework.

Dalam contoh sebelumnya, 32768 (0x00008000) mewakili ExceptionKeyword untuk penyedia CLR ETW yang menginstruksikan penyedia untuk mengumpulkan informasi tentang pengecualian yang dibuat. Meskipun JSON aslinya tidak mendukung konstanta hex, Anda dapat menentukan konstanta hex untuk MatchAnyKeyword dengan menempatkan mereka dalam string. Anda juga dapat menentukan beberapa konstanta yang dipisahkan dengan koma. Misalnya, gunakan perintah berikut untuk menentukan ExceptionKeyword dan SecurityKeyword (0x00000400):

{ "Id": "MyClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": "0x00008000, 0x00000400" }

Untuk memastikan bahwa semua kata kunci yang ditentukan diaktifkan untuk penyedia, beberapa nilai kata kunci digabungkan menggunakan OR dan diteruskan ke penyedia itu.

Output dari WindowsETWEventSource berisi informasi berikut untuk setiap peristiwa:

Atribut Jenis Deskripsi
EventName Rangkaian Jenis peristiwa yang terjadi.
ProviderName Rangkaian Penyedia yang mendeteksi peristiwa tersebut.
FormattedMessage Rangkaian Ringkasan tekstual peristiwa tersebut.
ProcessID Int Proses yang melaporkan peristiwa tersebut.
ExecutingThreadID Int Utas dalam proses yang melaporkan peristiwa tersebut.
MachineName Rangkaian Nama desktop atau server yang melaporkan peristiwa.
Payload Hashtable Tabel dengan kunci string dan segala jenis objek sebagai nilai. Kuncinya adalah nama item muatan, dan nilainya adalah nilai item muatan. Muatan tergantung penyedia.

Berikut ini contoh peristiwa yang diubah menjadi JSON:

{ "EventName": "Exception/Start", "ProviderName": "Microsoft-Windows-DotNETRuntime", "FormattedMessage": "ExceptionType=System.Exception;\r\nExceptionMessage=Intentionally unhandled exception.;\r\nExceptionEIP=0x2ab0499;\r\nExceptionHRESULT=-2,146,233,088;\r\nExceptionFlags=CLSCompliant;\r\nClrInstanceID=9 ", "ProcessID": 3328, "ExecutingThreadID": 6172, "MachineName": "MyHost.MyCompany.com", "Payload": { "ExceptionType": "System.Exception", "ExceptionMessage": "Intentionally unhandled exception.", "ExceptionEIP": 44762265, "ExceptionHRESULT": -2146233088, "ExceptionFlags": 16, "ClrInstanceID": 9 } }

Konfigurasi WindowsPerformanceCounterSource

Jenis WindowsPerformanceCounterSource mengumpulkan metrik pengukur performa dari Windows. Berikut ini adalah contoh deklarasi WindowsPerformanceCounterSource:

{ "Id": "MyPerformanceCounter", "SourceType": "WindowsPerformanceCounterSource", "Categories": [{ "Category": "Server", "Counters": ["Files Open", "Logon Total", "Logon/sec", "Pool Nonpaged Bytes"] }, { "Category": "System", "Counters": ["Processes", "Processor Queue Length", "System Up Time"] }, { "Category": "LogicalDisk", "Instances": "*", "Counters": [ "% Free Space", "Avg. Disk Queue Length", { "Counter": "Disk Reads/sec", "Unit": "Count/Second" }, "Disk Writes/sec" ] }, { "Category": "Network Adapter", "Instances": "^Local Area Connection\* \d$", "Counters": ["Bytes Received/sec", "Bytes Sent/sec"] } ] }

Semua deklarasi WindowsPerformanceCounterSource dapat memberikan pasangan kunci-nilai berikut:

SourceType

Harus berupa string literal "WindowsPerformanceCounterSource" (wajib).

Categories

Menentukan serangkaian grup metrik pengukur performa yang harus dikumpulkan dari Windows. Setiap grup metrik berisi pasangan kunci-nilai berikut:

Category

Menentukan kumpulan metrik pengukur yang akan dikumpulkan (wajib).

Instances

Menentukan kumpulan objek yang diinginkan ketika ada satu set pengukur performa unik per objek. Misalnya, saat kategori tersebut adalah LogicalDisk, ada satu set pengukur performa per drive disk. Pasangan kunci-nilai ini opsional. Anda dapat menggunakan wildcard * dan ? untuk mencocokkan beberapa instans. Untuk menggabungkan nilai di semua instans, tentukan _Total.

Anda juga dapat menggunakan InstanceRegex, yang menerima ekspresi reguler yang berisi karakter wildcard * sebagai bagian dari nama instans.

Counters

Menentukan metrik yang harus dikumpulkan untuk kategori yang ditentukan. Pasangan kunci-nilai ini wajib diisi. Anda dapat menggunakan wildcard * dan ? untuk mencocokkan beberapa pengukur. Anda dapat menentukan Counters hanya menggunakan nama, atau dengan menggunakan nama dan unit. Jika unit pengukur tidak ditentukan, Kinesis Agent for Windows mencoba menyimpulkan unit dari namanya. Jika kesimpulan tersebut tidak benar, maka unit dapat secara eksplisit ditentukan. Anda dapat mengubah nama Counter jika Anda ingin. Representasi yang lebih kompleks dari pengukur adalah objek dengan pasangan kunci-nilai berikut:

Counter

Nama pengukur. Pasangan kunci-nilai ini wajib diisi.

Rename

Nama pengukur untuk dihadirkan ke sink. Pasangan kunci-nilai ini opsional.

Unit

Arti dari nilai yang terkait dengan pengukur. Untuk daftar lengkap nama unit yang valid, lihat dokumentasi unit di MetricDatum dalam Referensi API Amazon CloudWatch.

Berikut ini adalah contoh spesifikasi pengukur yang kompleks:

{ "Counter": "Disk Reads/sec, "Rename": "Disk Reads per second", "Unit": "Count/Second" }

WindowsPerformanceCounterSource hanya dapat digunakan dengan pipa yang menentukan sink Amazon CloudWatch. Gunakan sink terpisah jika metrik bawaan Kinesis Agent for Windows juga dialirkan ke CloudWatch. Periksa log Kinesis Agent for Windows setelah startup layanan untuk menentukan unit yang telah disimpulkan untuk pengukur ketika unit belum ditentukan dalam deklarasi WindowsPerformanceCounterSource. Gunakan PowerShell untuk menentukan nama yang valid untuk kategori, instans, dan pengukur.

Untuk melihat informasi tentang semua kategori, termasuk pengukur yang terkait dengan set pengukur, jalankan perintah ini di jendela PowerShell:

Get-Counter -ListSet * | Sort-Object

Untuk menentukan instans yang tersedia untuk setiap pengukur di set pengukur, jalankan perintah yang mirip dengan contoh berikut di jendela PowerShell:

Get-Counter -Counter "\Process(*)\% Processor Time"

Nilai parameter Counter harus merupakan salah satu jalur dari anggota PathsWithInstances yang terdaftar oleh invokasi perintah Get-Counter -ListSet sebelumnya.

Sumber Metrik Bawaan Kinesis Agent for Windows

Selain sumber metrik biasa seperti jenis WindowsPerformanceCounterSource (lihat Konfigurasi WindowsPerformanceCounterSource), jenis sink CloudWatch dapat menerima metrik dari sumber khusus yang mengumpulkan metrik tentang Kinesis Agent for Windows itu sendiri. Metrik Kinesis Agent for Windows juga tersedia di kategori KinesisTap pengukur performa Windows.

Pasangan kunci-nilai MetricsFilter untuk deklarasi sink CloudWatch menentukan metrik yang dialirkan ke CloudWatch dari sumber metrik bawaan Kinesis Agent for Windows. Nilai adalah string yang berisi satu atau beberapa ekspresi filter yang dipisahkan oleh titik koma; misalnya:

"MetricsFilter": "FilterExpression1;FilterExpression2"

Metrik yang cocok dengan satu atau beberapa ekspresi filter dialirkan ke CloudWatch.

Metrik instans tunggal bersifat global dan tidak terikat pada sumber atau sink tertentu. Beberapa metrik instans berdimensi berdasarkan Id deklarasi sumber atau sink. Setiap jenis sumber atau sink dapat memiliki serangkaian metrik yang berbeda.

Untuk daftar nama metrik bawaan Kinesis Agent for Windows, lihat Daftar Metrik Kinesis Agent for Windows.

Untuk metrik instans tunggal, ekspresi filternya adalah nama metrik; misalnya:

"MetricsFilter": "SourcesFailedToStart;SinksFailedToStart"

Untuk beberapa metrik instans, ekspresi filternya adalah nama metrik, tanda titik (.), lalu Id deklarasi sumber atau sink yang dihasilkan metrik tersebut. Misalnya, anggaplah ada deklarasi sink dengan Id dari MyFirehose:

"MetricsFilter": "KinesisFirehoseRecordsFailedNonrecoverable.MyFirehose"

Anda dapat menggunakan pola wildcard khusus yang dirancang untuk membedakan antara metrik instans tunggal dan metrik instans lebih dari satu.

  • Tanda bintang (*) cocok dengan nol karakter atau lebih kecuali tanda titik (.).

  • Tanda tanya (?) cocok dengan satu karakter kecuali tanda titik.

  • Karakter lain hanya cocok dengan dirinya sendiri.

  • _Total adalah token khusus yang menyebabkan agregasi semua pencocokan beberapa nilai instans di seluruh dimensi.

Contoh berikut cocok dengan semua metrik instans tunggal:

"MetricsFilter": "*"

Karena tanda bintang tidak cocok dengan karakter titik, hanya metrik instans tunggal yang disertakan.

Contoh berikut cocok dengan semua metrik instans yang lebih dari satu:

"MetricsFilter": "*.*"

Contoh berikut cocok dengan semua metrik (satu maupun lebih):

"MetricsFilter": "*;*.*"

Contoh berikut mengumpulkan semua metrik instans lebih dari satu di semua sumber dan sink:

"MetricsFilter": "*._Total"

Contoh berikut mengumpulkan semua metrik Kinesis Data Firehose untuk semua sink Kinesis Data Firehose:

"MetricsFilter": "*Firehose*._Total"

Contoh berikut cocok dengan semua metrik kesalahan instans satu maupun lebih:

"MetricsFilter": "*Failed*;*Error*.*;*Failed*.*"

Contoh berikut cocok dengan semua metrik kesalahan yang tidak dapat dipulihkan yang dikumpulkan di semua sumber dan sink:

"MetricsFilter": "*Nonrecoverable*._Total"

Untuk informasi selengkapnya tentang cara menentukan pipa yang menggunakan sumber metrik bawaan Kinesis Agent for Windows, lihat Mengonfigurasi Alur Metrik Kinesis Agent for Windows.

Daftar Metrik Kinesis Agent for Windows

Berikut ini adalah daftar metrik instans tunggal dan metrik instans lebih dari satu yang tersedia untuk Kinesis Agent for Windows.

Metrik Instans Tunggal

Metrik instans tunggal berikut tersedia:

KinesisTapBuildNumber

Nomor versi Kinesis Agent for Windows.

PipesConnected

Jumlah pipa yang berhasil menghubungkan sumber ke sink.

PipesFailedToConnect

Jumlah pipa yang tidak berhasil menghubungkan sumber ke sink.

SinkFactoriesFailedToLoad

Jumlah jenis sink yang tidak berhasil dimuat ke Kinesis Agent for Windows.

SinkFactoriesLoaded

Jumlah jenis sink yang berhasil dimuat ke Kinesis Agent for Windows.

SinksFailedToStart

Jumlah sink yang tidak berhasil dimulai, biasanya karena deklarasi sink salah.

SinksStarted

Jumlah sink yang berhasil dimulai.

SourcesFailedToStart

Jumlah sumber yang tidak berhasil dimulai, biasanya karena deklarasi sumber salah.

SourcesStarted

Jumlah sumber yang berhasil dimulai.

SourceFactoriesFailedToLoad

Jumlah jenis sumber yang tidak berhasil dimuat ke Kinesis Agent for Windows.

SourceFactoriesLoaded

Jumlah jenis sumber yang berhasil dimuat ke Kinesis Agent for Windows.

Metrik instans Lebih dari Satu

Metrik instans lebih dari satu berikut tersedia:

Metrik DirectorySource

DirectorySourceBytesRead

Besar byte yang dibaca selama interval untuk DirectorySource ini.

DirectorySourceBytesToRead

Besar byte yang diketahui dan tersedia untuk dibaca tetapi belum dibaca oleh Kinesis Agent for Windows.

DirectorySourceFilesToProcess

Jumlah file yang diketahui untuk diperiksa tetapi belum diperiksa oleh Kinesis Agent for Windows.

DirectorySourceRecordsRead

Jumlah catatan yang sudah dibaca selama interval untuk DirectorySource ini.

Metrik WindowsEventLogSource

EventLogSourceEventsError

Jumlah log acara peristiwa Windows yang tidak berhasil dibaca.

EventLogSourceEventsRead

Jumlah log acara peristiwa Windows yang berhasil dibaca.

Metrik Sink KinesisFirehose

KinesisFirehoseBytesAccepted

Besar byte yang diterima selama interval.

KinesisFirehoseClientLatency

Selang waktu antara pembuatan catatan dan streaming catatan ke layanan Kinesis Data Firehose.

KinesisFirehoseLatency

Selang waktu antara awal dan akhir streaming catatan ke layanan Kinesis Data Firehose.

KinesisFirehoseNonrecoverableServiceErrors

Berapa kali data tidak dapat dikirim tanpa kesalahan ke layanan Kinesis Data Firehose meskipun ada percobaan ulang.

KinesisFirehoseRecordsAttempted

Jumlah catatan yang dicoba dialirkan ke layanan Kinesis Data Firehose.

KinesisFirehoseRecordsFailedNonrecoverable

Jumlah catatan yang tidak berhasil dialirkan ke layanan Kinesis Data Firehose meskipun sudah dicoba ulang.

KinesisFirehoseRecordsFailedRecoverable

Jumlah catatan yang berhasil dialirkan ke layanan Kinesis Data Firehose, tetapi hanya dengan dicoba ulang.

KinesisFirehoseRecordsSuccess

Jumlah catatan yang berhasil dialirkan ke layanan Kinesis Data Firehose tanpa dicoba ulang.

KinesisFirehoseRecoverableServiceErrors

Berapa kali catatan berhasil dikirim ke layanan Kinesis Data Firehose, tetapi hanya dengan dicoba ulang.

Metrik KinesisStream

KinesisStreamBytesAccepted

Besar byte yang diterima selama interval.

KinesisStreamClientLatency

Selang waktu antara pembuatan catatan dan streaming catatan ke layanan Kinesis Data Streams.

KinesisStreamLatency

Selang waktu antara awal dan akhir streaming catatan ke layanan Kinesis Data Streams.

KinesisStreamNonrecoverableServiceErrors

Berapa kali catatan tidak dapat dikirim tanpa kesalahan ke layanan Kinesis Data Streams meskipun dicoba ulang.

KinesisStreamRecordsAttempted

Jumlah catatan yang dicoba dialirkan ke layanan Kinesis Data Streams.

KinesisStreamRecordsFailedNonrecoverable

Jumlah catatan yang tidak berhasil dialirkan ke layanan Kinesis Data Streams meskipun sudah dicoba ulang.

KinesisStreamRecordsFailedRecoverable

Jumlah catatan yang berhasil dialirkan ke layanan Kinesis Data Streams, tetapi hanya dengan dicoba ulang.

KinesisStreamRecordsSuccess

Jumlah catatan yang berhasil dialirkan ke layanan Kinesis Data Streams tanpa dicoba ulang.

KinesisStreamRecoverableServiceErrors

Berapa kali catatan berhasil dikirim ke layanan Kinesis Data Streams, tetapi hanya dengan dicoba ulang.

Metrik CloudWatchLog

CloudWatchLogBytesAccepted

Besar byte yang diterima selama interval.

CloudWatchLogClientLatency

Selang waktu antara pembuatan catatan dan streaming catatan ke layanan CloudWatch Logs.

CloudWatchLogLatency

Selang waktu antara awal dan akhir streaming catatan ke layanan CloudWatch Logs.

CloudWatchLogNonrecoverableServiceErrors

Berapa kali catatan tidak dapat dikirim tanpa kesalahan ke layanan CloudWatch Logs meskipun dicoba ulang.

CloudWatchLogRecordsAttempted

Jumlah catatan yang dicoba dialirkan ke layanan CloudWatch Logs.

CloudWatchLogRecordsFailedNonrecoverable

Jumlah catatan yang tidak berhasil dialirkan ke layanan CloudWatch Logs meskipun sudah dicoba ulang.

CloudWatchLogRecordsFailedRecoverable

Jumlah catatan yang berhasil dialirkan ke layanan CloudWatch Logs, tetapi hanya dengan dicoba ulang.

CloudWatchLogRecordsSuccess

Jumlah catatan yang berhasil dialirkan ke layanan CloudWatch Logs tanpa dicoba ulang.

CloudWatchLogRecoverableServiceErrors

Jumlah catatan yang berhasil dikirim ke layanan CloudWatch Logs, tetapi hanya dengan dicoba ulang.

Metrik CloudWatch

CloudWatchLatency

Rata-rata selang waktu antara awal dan akhir streaming metrik untuk layanan CloudWatch.

CloudWatchNonrecoverableServiceErrors

Berapa kali metrik tidak dapat dikirim tanpa kesalahan ke layanan CloudWatch meskipun dicoba ulang.

CloudWatchRecoverableServiceErrors

Berapa kali metrik dikirim tanpa kesalahan ke layanan CloudWatch tetapi hanya dengan dicoba ulang.

CloudWatchServiceSuccess

Berapa kali metrik dikirim tanpa kesalahan ke layanan CloudWatch tanpa perlu dicoba ulang.

Konfigurasi Bookmark

Secara default, Kinesis Agent for Windows mengirimkan catatan log ke sink yang dibuat setelah agen memulai. Terkadang mengirim catatan log sebelumnya berguna, misalnya, catatan log yang dibuat selama periode waktu ketika Kinesis Agent for Windows berhenti selama pembaruan otomatis. Fitur bookmark melacak catatan yang telah dikirim ke sink. Ketika dalam mode bookmark dan dimulai, Kinesis Agent for Windows akan mengirimkan semua catatan log yang dibuat setelah Kinesis Agent for Windows berhenti, bersama dengan catatan log yang kemudian dibuat. Untuk mengontrol perilaku ini, deklarasi sumber berbasis file secara opsional dapat menyertakan pasangan kunci-nilai berikut:

InitialPosition

Menentukan situasi awal untuk bookmark. Kemungkinan nilainya adalah sebagai berikut:

EOS

Menentukan akhir aliran (EOS). Hanya catatan log yang dibuat saat agen berjalan yang dikirim ke sink.

0

Semua catatan log dan peristiwa yang tersedia awalnya dikirim. Kemudian bookmark dibuat untuk memastikan bahwa setiap catatan log dan peristiwa baru yang dibuat setelah bookmark dibuat akhirnya dikirim, baik Kinesis Agent for Windows sedang berjalan atau tidak.

Bookmark

Bookmark diinisialisasi tepat setelah catatan log atau peristiwa terbaru. Kemudian bookmark dibuat untuk memastikan bahwa setiap catatan log dan peristiwa baru yang dibuat setelah bookmark dibuat akhirnya dikirim, baik Kinesis Agent for Windows sedang berjalan atau tidak.

Bookmark diaktifkan secara default. File disimpan dalam direktori %ProgramData%\Amazon\KinesisTap.

Timestamp

Catatan log dan peristiwa yang dibuat setelah nilai InitialPositionTimestamp (definisi berikut) dikirim. Kemudian bookmark dibuat untuk memastikan bahwa setiap catatan log dan peristiwa baru yang dibuat setelah bookmark dibuat akhirnya dikirim, baik Kinesis Agent for Windows berjalan atau tidak.

InitialPositionTimestamp

Menentukan catatan log paling awal atau timestamp peristiwa yang Anda inginkan. Tentukan pasangan kunci-nilai ini hanya ketika InitialPosition memiliki nilai dari Timestamp.

BookmarkOnBufferFlush

Pengaturan ini dapat ditambahkan ke sumber yang dapat di-bookmark. Ketika diatur ke true, memastikan bahwa pembaruan bookmark terjadi hanya ketika sink berhasil mengirimkan peristiwa ke AWS. Anda hanya dapat berlangganan sink tunggal ke satu sumber. Jika Anda mengirimkan log ke beberapa tujuan, duplikasi sumber Anda untuk menghindari potensi masalah kehilangan data.

Jika Kinesis Agent for Windows telah berhenti untuk waktu yang lama, bookmark tersebut mungkin perlu dihapus karena catatan log dan peristiwa yang di-bookmark mungkin tidak lagi ada. File bookmark untuk id sumber yang diberikan terletak di %PROGRAMDATA%\Amazon\AWSKinesisTap\source id.bm.

Bookmark tidak bekerja pada file yang diganti nama atau dipotong. Karena sifat peristiwa ETW dan pengukur performa, file tersebut tidak dapat di-bookmark.