编辑注意事项:a以前的版本这篇文章在7月份跑了AWS大数据博客。
随着新推出的365亚博 我们非常激动地正式宣布许多伟大的创新,这些创新证明了我们与AWS的合作关系,并承诺为客户提供一个开放的、可编程的平台,用于所有的遥测数据。
作为其中的一部分遥测数据平台,具有新遗物的日志管理从未如此简单或更实惠。首先100gb ingest是免费的——生活!此外,额外数据的价格为每月每GB 0.25美元,以确保用户可以在一个统一的平台上轻松标准化所有数据的可见性。
作为该承诺的一部分,新的遗物使客户更容易摄取数据亚马逊Kinesis数据Firehose。
新的遗物+亚马逊Kinesis数据Firehose
New Relic现在可以直接摄取数据亚马逊Kinesis数据Firehose,扩展New Relic可以给你的见解到你的云堆栈,这样你就可以交付更完美的软件。kineesis Data Firehose是一个完全受管理的服务,用于向AWS等服务交付实时流数据亚马逊简单的存储服务(Amazon S3),亚马逊红移,以及大量的外部目的地。
由于软件团队被迫采用断开连接的监控工具,以便他们的基础架构,应用程序,日志和数字体验,它创建了导致盲点的数据孤岛。盲点增加了在工具之间切换以揭示答案所需的工作量,并使诊断问题更加困难。New Relic的一在一个地方提供所有数据的连接实时视图。无论其源如何,都旨在确保易于摄取和分析所有遥测数据的轻松摄取和分析。
随着kinesis数据的发布到Firehose HTTP端点传递,您可以轻松地配置数据流以自动摄取和将数据传输到新的遗物。您还可以配置Kinesis Data Firehose以在提供它之前转换数据。您无需编写应用程序,管理资源或创建AWSλ功能,这使得根据数据量更容易管理和估算数据成本。
在这篇文章中,我们将演示如何流媒体亚马逊CloudWatch日志使用Kinesis消防软管数据传输流将数据传输到New Relic。我们将向您展示如何创建和配置数据传递流,以摄取CloudWatch日志并将它们转发到New Relic。
先决条件
在继续之前,您将需要一个新的遗物账户和Insights插入API键。您还需要安装和配置AWS命令行接口(AWS CLI)使职位涵盖的政策和角色更改。有关说明,请参阅安装AWS命令行。
您还需要确保您的交付流具有足够的服务限制配额来转发所有数据。Kinesis Data Firehose默认配额根据地区的不同而有所不同。你可以创建一个案例与AWS请求增加配额。
创建交付流
开始,你需要创建一个交付流从CloudWatch日志摄取日志。完成以下步骤:
- 签AWS管理控制台并导航到运动。
- 在下面数据管道, 选择创建交付流。
- 为传递流输入一个名称。
- 为了源, 选择直接放置或其他来源。
- 选择下一个直到你被提示选择一个目的地并选择第三方合作伙伴。
- 从下拉菜单中选择New Relic。
- 为了New Relic HTTP API,添加以下端点:https://aws-api.newrelic.com/firehose/v1.。
- 输入您的Insights插入API键在API访问令牌字段中。
- 配置参数。在通过下发流的每条日志中插入参数,可以在New Relic日志中查询。作为最佳实践,我们建议包括一个logtype属性确保您的日志在New Relic日志中被正确解析。的
logtype.
一旦到达New Relic,这里定义的属性将出现在所有日志中。如果你想用logtype.
属性来确定哪些解析规则应用于New Relic中的日志,我们建议为每个日志类型创建一个单独的传递流。 - 根据需要配置和查看剩余的设置。
验证交付流配置
我们建议您通过完成以下步骤确认您的delivery steam转发登录到您的New Relic帐户:
- 在运动学仪表板上,选择交付流。
- 选择您在前面部分中创建的交付流。
- 扩张使用演示数据进行测试并选择开始发送数据。
- 等待3-5分钟的演示数据写入您的交付流。
- 当你等待时,复制交付了流是您需要配置CloudWatch日志以写入您的交付流。如果一切都设置正确,您应该在您的新遗迹日志帐户。
- 选择停止发送演示数据以免招致额外的使用费用。
配置CloudWatch日志写入Kinesis Data Firehose
下一步是配置CloudWatch,将日志写入Kinesis Data Firehose。有关更多信息,请参见使用Amazon Kinesis Data Firehose订阅过滤器。对于这篇文章,我们将发送流配置为将日志转发到New Relic,而不是Amazon S3。
我们首先创建一个AWS身份和访问管理(IAM)角色,允许CloudWatch日志向您的交付流写入数据。可以使用AWS命令行接口(AWS CLI)。
- 使用文本编辑器在文件中创建以下信任策略(例如,
〜/ trustpolicyforcwl.json.
)。确保将US-EAST-1替换为包含CloudWatch日志的区域:{“陈述”:{“效应”:“允许”那“主要的”:{“服务”:“logs.us-east-1.amazonaws.com”},“行动”:“STS:假设”}}
- 使用create-role命令使用新创建的策略创建一个IAM角色:
AWS IAM CREATE-ROOR \ - role-name cwltokinesisfirehoserole \ --assume-role-policy-document文件:///trustpolicyforcwl.json
运行该命令返回如下代码:
{“角色”:{“AssumeRolePolicyDocument”:{“陈述”:{“行动”:“STS:假设””,效应”:“允许”那“主要的”:{“服务”:“logs.us-east-1.amazonaws.com”}}},“learid”:“AAOIIAH450GAB4HC5F431“,“CreateDate”:“2020-07-14T13:46:29.431z”那“rolename”:“cwltokinesisfirehoserole”那“路径”:“/”那“攻击”:“攻击:aws:我::123456789012:/ CWLtoKinesisFirehoseRole角色"}}
- 创建一个策略,允许CloudWatch将日志写入您的交付流。与前面一样,使用文本编辑器创建文件(例如,
〜/ permissionsforcwl.json.
)包含以下代码:{“陈述”: [{“效应”:“允许”那“行动”:【“消防带:*”),“资源”:【“ARN:AWS:Firehose:地区:123456789012:*”}, {“效应”:“允许”那“行动”:【“我:PassRole”),“资源”:【“ARN:AWS:IAM :: 123456789012:角色/ cwltokinesisfirehoserole”]}]}
- 请确保使用特定于帐户的详细信息更新上述代码中的Region和AWS帐户ID占位符,并将策略与本节开头创建的角色关联。参见下面的代码:
aws iam put-role-policy——role-name CWLtoKinesisFirehoseRole——policy-name Permissions-Policy-For-CWL——policy-document文件: / / ~ / PermissionsForCWL.json
所有需要的权限现在都应该到位了。
- 最后一步是创建CloudWatch日志订阅筛选器,该筛选器确定哪些日志被写入交付流并转发到New Relic。参见下面的代码:
aws日志放置-订阅-筛选\——日志-组-名“syslog”\——过滤器名称“目的地”\ --filter-temper“错误”\——destination-arn“攻击:aws:消防带:地区:123456789012:deliverystream / my-delivery-stream”\——role-arn“ARN:AWS:IAM :: 123456789012:角色/ cwltokinesisfirehoserole”
在前面的代码中,将destination-arn的值替换为您在本文开头创建的传递流的ARN。控件的ARN还需要更新角色ARNcwltokinesisfirehoserole.
你早先创造过。
完成以下步骤后,您可以确认数据流在新的遗录日志中。以下屏幕截图显示了将数据传送到新的遗录日志的kinesis数据firehose。
新遗迹一号的日志管理
遥测数据平台提供完整的日志管理,包括使用内置功能或内部已经部署的开源工具进行搜索、过滤、分析、警报和可视化日志数据的能力。
对于想要更多外包策疗内容的客户,新的遗物还提供全堆叠可观察性。通过全堆叠可观察性,整个堆栈中的策划内容可用于应用,基础设施,数字体验监控等。错误,迹线和跨度对更深和更快的根原因分析自动关联日志
新的遗物人员还提供了应用智能的选择,它在发生事故之前利用机器学习和事件智能以减少警报疲劳
结论
在这篇文章中,我们展示了如何使用Kinesis data Firehose HTTP端点自动获取CloudWatch日志数据并将其转发到New Relic。我们希望您将使用这些知识来扩展数据流在您的组织中的使用,以更快地交付更完美的软件。
AWS的ISV高级解决方案架构师Colin B亚博直播平台ookman也对本文做出了贡献。