如何在运行 Windows 的 Elastic Beanstalk 环境中启用 CloudWatch Logs?

2024-02-14

我有一个网络服务,可以将数据输出到平面文件中。在非 EC2、原始 Windows 实例中,我们使用 EC2Config 服务将日志文件和一些性能计数器传送到 CloudWatch(请参阅此处:http://blogs.aws.amazon.com/application-management/post/Tx1KG4IKXZ94QFK/Using-CloudWatch-Logs-with-Amazon-EC2-Running-Microsoft-Windows-Server http://blogs.aws.amazon.com/application-management/post/Tx1KG4IKXZ94QFK/Using-CloudWatch-Logs-with-Amazon-EC2-Running-Microsoft-Windows-Server ).

如何配置我的应用程序和 ElasticBeanstalk 以在我的 Windows 实例中启用 CloudWatch 日志记录?


为此,我使用 .ebextensions 文件。以下 cloudwatch.config 文件位于我的应用程序根目录的 .ebextensions 目录中。它安装代理,将其设置为服务,并更新配置。这些指标是从 perfmon 提供的列表中选择的。

packages:
  msi:
    cloudwatch: https://s3.amazonaws.com/amazoncloudwatch-agent/windows/amd64/latest/amazon-cloudwatch-agent.msi
services:
  windows:
    AmazonCloudWatchAgent:
      enabled: 'true'
      ensureRunning: 'true'
      files:
        - "C:/ProgramData/Amazon/AmazonCloudWatchAgent/amazon-cloudwatch-agent.json"
files:
  "C:/ProgramData/Amazon/AmazonCloudWatchAgent/amazon-cloudwatch-agent.json":
    content: |
      {
        "metrics": {
          "namespace": "suprep",
          "append_dimensions": {
            "AutoScalingGroupName": "${aws:AutoScalingGroupName}",
            "ImageId": "${aws:ImageId}",
            "InstanceId": "${aws:InstanceId}",
            "InstanceType": "${aws:InstanceType}"
          },
          "metrics_collected": {
            "LogicalDisk": {
              "measurement": [
                "% Free Space",
                "Avg. Disk Bytes/Transfer"
              ],
              "metrics_collection_interval": 60,
              "resources": [
                "C:"
              ]
            },
            "Memory": {
              "measurement": [
                "Available MBytes",
                "Page Faults/sec",
                "% Committed Bytes In Use"
              ],
              "metrics_collection_interval": 60
            },
            "Network Interface": {
              "measurement": [
                "Bytes Total/sec"
              ],
              "metrics_collection_interval": 60,
              "resources": [
                "_Total"
              ]
            },
            "Paging File": {
              "measurement": [
                "% Usage"
              ],
              "metrics_collection_interval": 60,
              "resources": [
                "_Total"
              ]
            },
            "Process": {
              "measurement": [
                "% Processor Time",
                "Private Bytes"
              ],
              "metrics_collection_interval": 60,
              "resources": [
                "dotnet"
              ]
            }
          }
        },
        "aggregation_dimensions" : [["AutoScalingGroupName"], ["InstanceId"],[]],
        "logs": {
          "logs_collected": {
            "files": {
              "collect_list": [
                {
                  "file_path": "c:\\Windows\\Temp\\log*.txt",
                  "log_group_name": "MyLogGroup",
                  "timezone": "UTC"
                }
              ]
            },
            "windows_events": {
              "collect_list": [
                {
                  "event_name": "System",
                  "event_levels": [
                    "WARNING",
                    "ERROR"
                  ],
                  "log_group_name": "MyLogGroup",
                  "log_stream_name": "System",
                  "event_format": "xml"
                },
                {
                  "event_name": "Application",
                  "event_levels": [
                    "WARNING",
                    "ERROR"
                  ],
                  "log_group_name": "MyLogGroup",
                  "log_stream_name": "Application",
                  "event_format": "xml"
                }
              ]
            }
          },
          "log_stream_name": "MyLogStream"
        }
      }
commands:
  01_stop_service:
    command: powershell -NoProfile -ExecutionPolicy Bypass -Command "C:\\'Program Files'\\Amazon\\AmazonCloudWatchAgent\\amazon-cloudwatch-agent-ctl.ps1 -a stop"
  02_start_service:
    command: powershell -NoProfile -ExecutionPolicy Bypass -Command "C:\\'Program Files'\\Amazon\\AmazonCloudWatchAgent\\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -m ec2 -c file:C:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\amazon-cloudwatch-agent.json -s"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在运行 Windows 的 Elastic Beanstalk 环境中启用 CloudWatch Logs? 的相关文章

  • Amazon S3 - 一个对象的多个键

    我有一个 S3 存储桶 其中包含超过 1 亿个对象 每个对象像往常一样都有一个唯一的密钥 我想知道是否有办法为其中一些对象分配另一个键 像这样的东西 键1 gt 对象1 键2 gt 对象2 Key3 gt Object2 我想添加这个 我在
  • 如何为WCF服务创建重定向?

    我的网站 A 上托管了一个 WCF 服务 我还有另一个网站 B 它使用 IIS URL 重写将所有请求重定向到我的网站 A 但是 站点 B 不处理任何对 svc 文件的请求 返回 404 not find 知道如何让它发挥作用吗 UPD重定
  • AWS CDK CodePipeline 在源代码和构建之间添加一个阶段

    我跟着使用 CDK Pipelines 持续集成和交付 CI CD https docs aws amazon com cdk v2 guide cdk pipeline html实施 CodePipeline 的指南 我想知道如何在 CD
  • 使用 Spot 队列自动扩展而不是具有现货价格的 AutoScaling 组有什么优势?

    最近 亚马逊 AWS 发布了针对 Spot 队列的 Auto Scaling https aws amazon com blogs aws new auto scaling for ec2 spot fleets https aws ama
  • 调用API“找不到模块”时AWS lambda层错误

    我尝试使用 AWS Lambda 层 观看了有关它的教程 但收到错误 找不到模块 service aws nodejs package exclude gitignore package json git provider name aws
  • win10、iis 10无法启动、w3svc服务启动失败

    IIS 已停止 无法启动 当我检查服务时 w3svc的依赖项都在运行 但无法启动w3svc C Users lust4 sc qc W3SVC SC QueryServiceConfig Success SERVICE NAME W3SVC
  • AWS CloudSearch:1 个域中的不同文档?

    我有兴趣在我的 Web 应用程序中使用 AWS Cloud Search 我想要将 3 种不同的文档类型设为可搜索 用户 文章 图像 使用 Cloud Search 执行此操作的最佳方法是什么 我需要创建 3 个不同的 AWS 搜索域吗 这
  • 对于 aws s3,预检响应无效(重定向)

    我正在尝试将图像上传到我的 Amazon S3 存储桶 但即使我已经正确设置了 CORS 配置 我仍然收到此 CORS 错误 这是我的 CORS 配置
  • 在 EB 上的 Docker 中运行的应用程序拒绝连接到自身

    我有一个 Play 2 Web 应用程序 我使用 Docker 将其部署到 Elastic Beanstalk 在此 Web 应用程序中 我启动了一个 Akka 集群 启动过程涉及将自动伸缩组中的所有节点添加为种子节点 包括其自身 第一次部
  • AWS DynamoDB 的 r 语言支持 [重复]

    这个问题在这里已经有答案了 这是对此的后续 更新问题 AWS dynamodb 支持 R 编程语言 https stackoverflow com questions 14224919 aws dynamodb support for r
  • 在哪里可以找到 AWS Amplify Logger 日志

    我目前正在开发一个使用 AWS Amplify 创建的 Web 应用程序 我必须在其中实现日志记录 基于AWS 放大文档 https docs amplify aws lib utilities logger q platform js有一
  • AWS Import-image 用户无权访问 S3 对象

    运行 AWS Amazon Web Services 导入映像任务时 aws ec2 import image description My OVA disk containers file c TEMP containers json 我
  • appsettings.json 是否受 IIS 保护?

    在旧版 ASP NET 应用程序中 config files cannot通过导航到 URL 即可下载 但新的约定是使用appsettings json 现在 如果我有一个名为的 ASP NET Core 网站contoso com它由 I
  • ECS 上蓝/绿部署所需的 Cloudformation 脚本

    我正在尝试编写一个云形成模板具有蓝绿部署支持的 AWS ECS 这项蓝绿功能最近由 AWS 在 ECS 中添加 但在云形成模板中找不到任何更新它的参考 他们提供了有关如何通过 UI 而不是通过云形成来完成此操作的文档 我猜想 AWS 可能不
  • AWS CodeBuild - 如何跳过构建

    我的构建是在每次推送到存储库和每次拉取请求时触发的 因此 CODEBUILD SOURCE VERSION 看起来像 pr 8 或 4570d2e7158cfef687af8da31d1ffec7b02e5ca3 我只希望为 pr 分支执行
  • 为什么只有 50 个实例在 AWS lambda 上运行?

    我在用context logStreamName识别 lambda 实例 并发设置为无保留 但日志显示只有 50 个实例正在运行 我是否误解了logStream pre logStream pre实例 我从那里得到的信息这个博客 https
  • 无法在 AWS Glue PySpark 开发终端节点中正确运行脚本

    我已经配置了一个 AWS Glue 开发终端节点 并且可以在 pyspark REPL shell 中成功连接到它 像这样https docs aws amazon com glue latest dg dev endpoint tutor
  • AWS CloudWatchLog 限制

    我正在尝试找到集中式解决方案来将我的应用程序日志记录从数据库 RDS 中移出 我本想使用 CloudWatchLog 但注意到 PutLogEvents 请求有限制 PutLogEvents 请求的最大速率为每秒 5 个请求 每个日志流 即
  • S3 静态网站中的目录列表

    我已经设置了一个 S3 存储桶来托管静态文件 使用网站端点 http s3 website us east 1 amazonaws com 时 它迫使我设置一个索引文件 当找不到文件时 它会抛出错误而不是列出目录内容 使用 s3 端点 s3
  • 如何在 IIS 中手动配置虚拟目录

    我正在尝试让外部 Visual Studio 解决方案在 Visual Studio Professional 2010 的本地副本中工作 当我打开该解决方案时 我看到一条错误消息 指出本地 IIS URL 尚未配置 我想创建一个虚拟目录吗

随机推荐