步骤 2: 安装、配置和运行适用于 Windows 的运行代理 - 适用于 Microsoft Windows 的 Amazon Kinesis 代理

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

步骤 2: 安装、配置和运行适用于 Windows 的运行代理

在此步骤中,您使用 AWS 管理控制台远程连接到您在创建 Amazon EC2 实例以运行适用于 Windows 的 Kinesis 代理。然后,您在实例上安装 Microsoft Windows 的 Amazon Kinesis Agent,为 Windows 创建和部署 Kinesis Agent 的配置文件,并启动冬奥会服务。

  1. 通过 Remore Destorage Destorage Destorage Destorage Data (RDP) 中的说明操作来远程连接到实例。步骤 2: 连接到您的实例中的适用于 Windows 实例的 Amazon EC2 用户指南

  2. 在实例上,使用 Windows Server Manager 为用户和管理员禁用 Microsoft Internet Explorer 增强的安全配置。有关更多信息,请参阅 Microsoft TechNet 网站上的如何关闭 Internet Explorer 增强的安全配置

  3. 在实例上,安装和配置适用于 Windows 的 Kinesis 代理。有关更多信息,请参阅 安装适用于 Windows 的 Kinesis 代理

  4. 在实例上,使用记事本为 Windows 配置文件创建 Kinesis 代理。将此文件保存到 %PROGRAMFILES%\Amazon\AWSKinesisTap\appsettings.json。将以下内容添加到此配置文件中:

    { "Sources": [ { "Id": "JsonLogSource", "SourceType": "DirectorySource", "RecordParser": "SingleLineJson", "Directory": "C:\\LogSource\\", "FileNameFilter": "*.log", "InitialPosition": 0 } ], "Sinks": [ { "Id": "FirehoseLogStream", "SinkType": "KinesisFirehose", "StreamName": "log-delivery-stream", "Region": "us-east-1", "Format": "json", "ObjectDecoration": "ComputerName={ComputerName};DT={timestamp:yyyy-MM-dd HH:mm:ss}" } ], "Pipes": [ { "Id": "JsonLogSourceToFirehoseLogStream", "SourceRef": "JsonLogSource", "SinkRef": "FirehoseLogStream" } ] }

    此文件将配置为 Windows Kinesis Agent 以发送 JSON 格式的日志记录从c:\logsource\目录(source)传输流中的 Kinesis Data Firehose 传输流(名为log-delivery-streamsink)。在将每条日志记录流式传输到 Kinesis Data Firehose 之前,会使用两个额外的键/值对(包含计算机名称和时间戳)对其进行增强。

  5. 创建 c:\LogSource\ 目录,并使用 Notepad 在该目录中创建具有以下内容的 test.log 文件:

    { "Message": "Copasetic message 1", "Severity": "Information" } { "Message": "Copasetic message 2", "Severity": "Information" } { "Message": "Problem message 2", "Severity": "Error" } { "Message": "Copasetic message 3", "Severity": "Information" }
  6. 在提升的 PowerShell 会话中,使用以下命令启动 AWSKinesisTap 服务:

    Start-Service -ServiceName AWSKinesisTap
  7. 使用文件资源管理器,导航到 %PROGRAMDATA%\Amazon\AWSKinesisTap\logs 目录。打开最新的日志文件。日志文件应类似于以下内容:

    2018-09-28 23:51:02.2472 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.AWS.AWSEventSinkFactory. 2018-09-28 23:51:02.2784 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.Windows.PerformanceCounterSinkFactory. 2018-09-28 23:51:02.5753 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.Core.DirectorySourceFactory. 2018-09-28 23:51:02.5909 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.ExchangeSource.ExchangeSourceFactory. 2018-09-28 23:51:02.5909 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.Uls.UlsSourceFactory. 2018-09-28 23:51:02.5909 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.Windows.WindowsSourceFactory. 2018-09-28 23:51:02.9347 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.Core.Pipes.PipeFactory. 2018-09-28 23:51:03.5128 Amazon.KinesisTap.Hosting.LogManager INFO Registered factory Amazon.KinesisTap.AutoUpdate.AutoUpdateFactory. 2018-09-28 23:51:03.5440 Amazon.KinesisTap.Hosting.LogManager INFO Performance counter sink started. 2018-09-28 23:51:03.7628 Amazon.KinesisTap.Hosting.LogManager INFO KinesisFirehoseSink id FirehoseLogStream for StreamName log-delivery-stream started. 2018-09-28 23:51:03.7784 Amazon.KinesisTap.Hosting.LogManager INFO Connected source JsonLogSource to sink FirehoseLogStream 2018-09-28 23:51:03.7940 Amazon.KinesisTap.Hosting.LogManager INFO DirectorySource id JsonLogSource watching directory C:\LogSource\ with filter *.log started.

    此日志文件指示服务已启动,并且现在正在从 c:\LogSource\ 目录收集日志记录。每一行都被解析为一个 JSON 对象。计算机名称和时间戳的键/值对将添加到每个对象中。然后将其流式传输到 Kinesis Data Firehose。

  8. 在一两分钟后,Amazon S3 航到您在创建 Amazon S3 存储桶使用 AWS 管理控制台。确保在控制台上选择了正确的区域。

    在该存储桶中,有一个针对当前年份的文件夹。打开该文件夹以显示当前月份的文件夹。打开该文件夹以显示当天的文件夹。打开该文件夹以显示当前小时(用 UTC 表示)的文件夹。打开该文件夹以显示一个或多个以名称 log-delivery-stream 开头的项目。

    演示如何在 Amazon S3 中浏览日志记录的屏幕截图。
  9. 打开最新项目的内容以确认日志记录已成功存储在 Amazon S3 中并进行了所需的增强。如果一切配置正确,则内容看起来类似于以下内容:

    {"Message":"Copasetic message 1","Severity":"Information","ComputerName":"EC2AMAZ-ABCDEFGH","DT":"2018-09-28 23:51:04"} {"Message":"Copasetic message 2","Severity":"Information","ComputerName":"EC2AMAZ-ABCDEFGH","DT":"2018-09-28 23:51:04"} {"Message":"Problem message 2","Severity":"Error","ComputerName":"EC2AMAZ-ABCDEFGH","DT":"2018-09-28 23:51:04"} {"Message":"Copasetic message 3","Severity":"Information","ComputerName":"EC2AMAZ-ABCDEFGH","DT":"2018-09-28 23:51:04"}
  10. 有关解决以下任何问题的信息,请参阅针对微软 Windows 的 Amazon Kinesis 代理疑难解答

    • Windows 日志文件中包含错误。

    • Amazon S3 中的预期文件夹或项目不存在。

    • Amazon S3 项目的内容不正确。

后续步骤

步骤 3: 在 Amazon S3 中查询日志数据