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.
Topik
- Konfigurasi DirectorySource
- Konfigurasi ExchangeLogSource
- Konfigurasi W3SVCLogSource
- Konfigurasi UlsSource
- Konfigurasi WindowsEventLogSource
- Konfigurasi WindowsEventLogPollingSource
- Konfigurasi WindowsETWEventSource
- Konfigurasi WindowsPerformanceCounterSource
- Sumber Metrik Bawaan Kinesis Agent for Windows
- Daftar Metrik Kinesis Agent for Windows
- Konfigurasi Bookmark
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
"*.*"
diFileNameFilter
, 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 catatanSingleLineJson
, 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-nilaiTimestampFormat
. -
Regex
— Setiap catatan dimulai dengan teks yang cocok dengan ekspresi reguler tertentu. Opsi ini memerlukan penentuan pasangan kunci-nilaiPattern
. -
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-nilaiDelimiter
.
-
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 adalahepoch
, 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 catatanSingleLineJson
ditentukan bersama dengan pasangan kunci-nilaiTimestampField
. 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 parserRegex
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-nilaiHeaderPattern
opsional dan hanya berlaku untuk parser catatanDelimited
.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 denganRecordPattern
yang ditentukan diabaikan selama pemrosesan catatan. Pasangan kunci-nilai ini opsional dan hanya berlaku untuk parser catatanDelimited
. Jika tidak disediakan, default-nya digunakan untuk mempertimbangkan setiap baris yang tidak cocok denganHeaderPattern
opsional atauCommentPattern
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 denganHeaderPattern
opsional sebagai baris yang berisi data catatan yang dapat diurai, kecuali jikaRecordPattern
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
atauUTC
. Timestamp tidak pernah diubah jikaTimeZoneKind
tidak ditentukan atau jika nilainya adalah UTC. Timestamp dikonversi ke UTC jika nilaiTimeZoneKind
adalahLocal
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:
-
Awal string yang dievaluasi.
-
Satu atau beberapa karakter kata dikurung oleh tanda kurung siku.
-
Satu timestamp dikurung oleh tanda kurung siku. Timestamp cocok dengan urutan berikut:
-
Tahun dalam empat digit
-
Satu garis miring ke depan
-
Bulan dalam dua digit
-
Satu garis miring ke depan
-
Hari dalam dua digit
-
Satu spasi
-
Jam dalam dua digit
-
Satu tanda titik dua
-
Menit dalam dua digit
-
Satu tanda titik dua
-
Detik dalam dua digit
-
Satu titik
-
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:
-
Severity
— Satu atau beberapa karakter kata dikurung oleh tanda kurung siku. -
TimeStamp
— Lihat deskripsi sebelumnya untuk timestamp. -
Tiga urutan dengan nol karakter atau lebih dalam tanda kurung siku tanpa nama dilewati.
-
SubSystem
— Satu atau beberapa karakter kata dikurung oleh tanda kurung siku. -
Module
— Satu atau beberapa karakter kata dikurung oleh tanda kurung siku. -
Satu urutan dengan nol karakter atau lebih dalam tanda kurung siku tanpa nama dilewati.
-
Satu spasi tanpa nama dilewati.
-
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
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
"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
atauDateTime
. 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
, danSystem
, 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 Peristiwadalam 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 adalahfalse
. 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 Peristiwadalam 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
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
, danVerbose
. 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 ETWdalam 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 untukMatchAnyKeyword
dengan menempatkan mereka dalam string. Anda juga dapat menentukan beberapa konstanta yang dipisahkan dengan koma. Misalnya, gunakan perintah berikut untuk menentukanExceptionKeyword
danSecurityKeyword
(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 menentukanCounters
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 namaCounter
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 dariTimestamp
. 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.