翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Windows 用 Kinesis エージェントの設定例
-appsettings.json
設定ファイルは、Amazon Kinesis Agent for Microsoft Windows がログ、イベント、およびメトリクスを収集する方法を制御する JSON ドキュメントです。また、Windows 用 Kinesis Agent for Windows がそのデータを変換してさまざまな AWS サービスにストリーミングする方法も制御します。設定ファイルのソース、シンク、およびパイプの宣言の詳細については、「ソース宣言」、「シンク宣言」、および「パイプ宣言」を参照してください。
以下のセクションには、いくつかの異なるシナリオの設定ファイルの例が含まれています。
トピック
さまざまなソースから Kinesis Data Streams へのストリーミング
以下の例appsettings.json
設定ファイルは、さまざまなソースから Kinesis Data Streams、および Windows パフォーマンスカウンターから Amazon CloudWatch メトリクスへのログとイベントのストリーミングを示しています。
DirectorySource
、SysLog
レコードパーサー
次のファイルは、syslog 形式のログレコードをストリーミングします。.log
ファイル拡張子C:\LogSource\
ディレクトリに移動します。SyslogKinesisDataStream
us-east-1 リージョンの Kinesis データストリームのストリーム。エージェントがシャットダウンされ、後で再起動された場合でも、ログファイルのすべてのデータが送信されるように、ブックマークが設定されています。カスタムアプリケーションは SyslogKinesisDataStream
ストリームからレコードを読み込んで処理できます。
{ "Sources": [ { "Id": "SyslogDirectorySource", "SourceType": "DirectorySource", "Directory": "C:\\LogSource\\", "FileNameFilter": "*.log", "RecordParser": "SysLog", "TimeZoneKind": "UTC", "InitialPosition": "Bookmark" } ], "Sinks": [ { "Id": "KinesisStreamSink", "SinkType": "KinesisStream", "StreamName": "SyslogKinesisDataStream", "Region": "us-east-1" } ], "Pipes": [ { "Id": "SyslogDS2KSSink", "SourceRef": "SyslogDirectorySource", "SinkRef": "KinesisStreamSink" } ] }
DirectorySource
、SingleLineJson
レコードパーサー
次のファイルは、JSON 形式のログレコードをストリーミングします。.log
ファイル拡張子C:\LogSource\
ディレクトリに移動します。JsonKinesisDataStream
us-east-1 リージョンの Kinesis データストリームのストリーム。ストリーミングの前に、ComputerName
キーと DT
キーのキーと値のペアが、コンピュータ名とレコードが処理された日時の値を含む各 JSON オブジェクトに追加されます。カスタムアプリケーションは JsonKinesisDataStream
ストリームからレコードを読み込んで処理できます。
{ "Sources": [ { "Id": "JsonLogSource", "SourceType": "DirectorySource", "RecordParser": "SingleLineJson", "Directory": "C:\\LogSource\\", "FileNameFilter": "*.log", "InitialPosition": 0 } ], "Sinks": [ { "Id": "KinesisStreamSink", "SinkType": "KinesisStream", "StreamName": "JsonKinesisDataStream", "Region": "us-east-1", "Format": "json", "ObjectDecoration": "ComputerName={ComputerName};DT={timestamp:yyyy-MM-dd HH:mm:ss}" } ], "Pipes": [ { "Id": "JsonLogSourceToKinesisStreamSink", "SourceRef": "JsonLogSource", "SinkRef": "KinesisStreamSink" } ] }
ExchangeLogSource
次のファイルは、Microsoft Exchange によって生成され、.log
拡張子のC:\temp\ExchangeLog\
ディレクトリに移動します。ExchangeKinesisDataStream
JSON 形式の us-east-1 リージョンの Kinesis データストリーム。Exchange ログは JSON 形式ではありませんが、Windows 用 Kinesis Agent はログを解析して JSON に変換できます。ストリーミングの前に、ComputerName
キーと DT
キーのキーと値のペアが、コンピュータ名とレコードが処理された日時の値を含む各 JSON オブジェクトに追加されます。カスタムアプリケーションは ExchangeKinesisDataStream
ストリームからレコードを読み込んで処理できます。
{ "Sources": [ { "Id": "ExchangeSource", "SourceType": "ExchangeLogSource", "Directory": "C:\\temp\\ExchangeLog\", "FileNameFilter": "*.log" } ], "Sinks": [ { "Id": "KinesisStreamSink", "SinkType": "KinesisStream", "StreamName": "ExchangeKinesisDataStream", "Region": "us-east-1", "Format": "json", "ObjectDecoration": "ComputerName={ComputerName};DT={timestamp:yyyy-MM-dd HH:mm:ss}" } ], "Pipes": [ { "Id": "ExchangeSourceToKinesisStreamSink", "SourceRef": "ExchangeSource", "SinkRef": "KinesisStreamSink" } ] }
W3SVCLogSource
次のファイルは、Windows 用インターネットインフォメーションサービス (IIS) ログレコードをIISKinesisDataStream
us-east-1 リージョンの Kinesis データストリームのストリーム。カスタムアプリケーションは IISKinesisDataStream
ストリームからレコードを読み込んで処理できます。IIS は Windows 用 のウェブサーバーです。
{ "Sources": [ { "Id": "IISLogSource", "SourceType": "W3SVCLogSource", "Directory": "C:\\inetpub\\logs\\LogFiles\\W3SVC1", "FileNameFilter": "*.log" } ], "Sinks": [ { "Id": "KinesisStreamSink", "SinkType": "KinesisStream", "StreamName": "IISKinesisDataStream", "Region": "us-east-1" } ], "Pipes": [ { "Id": "IISLogSourceToKinesisStreamSink", "SourceRef": "IISLogSource", "SinkRef": "KinesisStreamSink" } ] }
クエリを含む WindowsEventLogSource
次のファイルは、Windows システムイベントログからログイベントをストリームします。Critical
またはError
(2 以下) をSystemKinesisDataStream
JSON 形式の us-east-1 リージョンの Kinesis データストリーム。カスタムアプリケーションは SystemKinesisDataStream
ストリームからレコードを読み込んで処理できます。
{ "Sources": [ { "Id": "SystemLogSource", "SourceType": "WindowsEventLogSource", "LogName": "System", "Query": "*[System/Level<=2]" } ], "Sinks": [ { "Id": "KinesisStreamSink", "SinkType": "KinesisStream", "StreamName": "SystemKinesisDataStream", "Region": "us-east-1", "Format": "json" } ], "Pipes": [ { "Id": "SLSourceToKSSink", "SourceRef": "SystemLogSource", "SinkRef": "KinesisStreamSink" } ] }
WindowsETWEventSource
次のファイルは、Microsoft 共通言語ランタイム (CLR) の例外およびセキュリティイベントをClrKinesisDataStream
JSON 形式の us-east-1 リージョンの Kinesis データストリーム。カスタムアプリケーションは ClrKinesisDataStream
ストリームからレコードを読み込んで処理できます。
{ "Sources": [ { "Id": "ClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": "0x00008000, 0x00000400" } ], "Sinks": [ { "Id": "KinesisStreamSink", "SinkType": "KinesisStream", "StreamName": "ClrKinesisDataStream", "Region": "us-east-1", "Format": "json" } ], "Pipes": [ { "Id": "ETWSourceToKSSink", "SourceRef": "ClrETWEventSource", "SinkRef": "KinesisStreamSink" } ] }
WindowsPerformanceCounterSource
次のファイルは、開いているファイルの合計、再起動以降の総ログイン試行回数、1 秒あたりのディスク読み取り数、および空きディスク領域の割合のパフォーマンスカウンターを us-east-1 リージョンの CloudWatch メトリクスにストリーミングします。これらのメトリクスは、CloudWatch でグラフ化したり、グラフからダッシュボードを構築したり、しきい値を超えたときに通知を送信するアラームを設定したりできます。
{ "Sources": [ { "Id": "PerformanceCounter", "SourceType": "WindowsPerformanceCounterSource", "Categories": [ { "Category": "Server", "Counters": [ "Files Open", "Logon Total" ] }, { "Category": "LogicalDisk", "Instances": "*", "Counters": [ "% Free Space", { "Counter": "Disk Reads/sec", "Unit": "Count/Second" } ] } ], } ], "Sinks": [ { "Namespace": "MyServiceMetrics", "Region": "us-east-1", "Id": "CloudWatchSink", "SinkType": "CloudWatch" } ], "Pipes": [ { "Id": "PerformanceCounterToCloudWatch", "SourceRef": "PerformanceCounter", "SinkRef": "CloudWatchSink" } ] }
Windows アプリケーションイベントログからシンクへのストリーミング
以下の例appsettings.json
設定ファイルは、Windows アプリケーションイベントログを Microsoft Windows 用 Amazon Kinesis Agent のさまざまなシンクにストリーミングする方法を示しています。KinesisStream
および CloudWatch
シンクタイプの使用例については、「さまざまなソースから Kinesis Data Streams へのストリーミング」を参照してください。
KinesisFirehose
次のファイルストリームCritical
またはError
Windows アプリケーションは、イベントをWindowsLogFirehoseDeliveryStream
Kinesis Data Firehose 配信ストリームは、us-east-1 リージョンの Kinesis Data Firehose への接続が中断されると、イベントはまずメモリにキューに入れられます。その後、必要に応じて、接続が回復するまでディスク上のファイルに入れられます。その後、イベントはキューから取り出されて送信され、その後に新しいイベントが続きます。
データパイプラインの要件に基づいて、ストリーミングデータをさまざまな種類のストレージおよび分析サービスに格納するように Kinesis Data Firehose を設定できます。
{ "Sources": [ { "Id": "ApplicationLogSource", "SourceType": "WindowsEventLogSource", "LogName": "Application", "Query": "*[System/Level<=2]" } ], "Sinks": [ { "Id": "WindowsLogKinesisFirehoseSink", "SinkType": "KinesisFirehose", "StreamName": "WindowsLogFirehoseDeliveryStream", "Region": "us-east-1", "QueueType": "file" } ], "Pipes": [ { "Id": "ALSource2ALKFSink", "SourceRef": "ApplicationLogSource", "SinkRef": "WindowsLogKinesisFirehoseSink" } ] }
CloudWatchLogs
次のファイルストリームCritical
またはError
Windows アプリケーションログイベントを CloudWatch にストリーミングします。MyServiceApplicationLog-Group
ロググループに移動します。各ストリームの名前は Stream-
で始まります。それは、ストリームが作成された 4 桁の年、2 桁の月、および 2 桁の日で終了します (たとえば、Stream-20180501
は、2018 年 5 月 1 日に作成されたストリームです)。
{ "Sources": [ { "Id": "ApplicationLogSource", "SourceType": "WindowsEventLogSource", "LogName": "Application", "Query": "*[System/Level<=2]" } ], "Sinks": [ { "Id": "CloudWatchLogsSink", "SinkType": "CloudWatchLogs", "LogGroup": "MyServiceApplicationLog-Group", "LogStream": "Stream-{timestamp:yyyyMMdd}", "Region": "us-east-1", "Format": "json" } ], "Pipes": [ { "Id": "ALSource2CWLSink", "SourceRef": "ApplicationLogSource", "SinkRef": "CloudWatchLogsSink" } ] }
パイプの使用
次の appsettings.json
設定ファイルの例は、パイプ関連の機能の使い方を示しています。
この例では、ログエントリをc:\LogSource\
をApplicationLogFirehoseDeliveryStream
Kinesis Data Firehose 配信ストリーム。FilterPattern
のキーと値のペアで指定された正規表現に一致する行のみが含まれます。具体的には、ログファイル内の行だけが10
または11
Kinesis Data Firehose にストリーミングされます。
{ "Sources": [ { "Id": "ApplicationLogSource", "SourceType": "DirectorySource", "Directory": "C:\\LogSource\\", "FileNameFilter": "*.log", "RecordParser": "SingleLine" } ], "Sinks": [ { "Id": "ApplicationLogKinesisFirehoseSink", "SinkType": "KinesisFirehose", "StreamName": "ApplicationLogFirehoseDeliveryStream", "Region": "us-east-1" } ], "Pipes": [ { "Id": "ALSourceToALKFSink", "Type": "RegexFilterPipe", "SourceRef": "ApplicationLogSource", "SinkRef": "ApplicationLogKinesisFirehoseSink", "FilterPattern": "^(10|11),.*" } ] }
複数のソースとパイプを使用する
次の例の appsettings.json
設定ファイルは、複数のソースとパイプを使用する方法を示しています。
この例では、アプリケーション、セキュリティ、およびシステムの Windows イベントログをEventLogStream
3 つのソース、3 つのパイプ、および 1 つのシンクを使用した Kinesis Data Firehose 配信ストリーム。
{ "Sources": [ { "Id": "ApplicationLog", "SourceType": "WindowsEventLogSource", "LogName": "Application" }, { "Id": "SecurityLog", "SourceType": "WindowsEventLogSource", "LogName": "Security" }, { "Id": "SystemLog", "SourceType": "WindowsEventLogSource", "LogName": "System" } ], "Sinks": [ { "Id": "EventLogSink", "SinkType": "KinesisFirehose", "StreamName": "EventLogStream", "Format": "json" }, ], "Pipes": [ { "Id": "ApplicationLogToFirehose", "SourceRef": "ApplicationLog", "SinkRef": "EventLogSink" }, { "Id": "SecurityLogToFirehose", "SourceRef": "SecurityLog", "SinkRef": "EventLogSink" }, { "Id": "SystemLogToFirehose", "SourceRef": "SystemLog", "SinkRef": "EventLogSink" } ] }