使用 CloudWatch Metric Filter 报告内存消耗百分比

2023-12-08

我们广泛使用 AWS Lambda 作为我们基础设施的一部分。 为了获得更好的可见性,我希望能够报告一个自定义的 CloudWatch 指标,其值为内存已使用/内存分配,这可以使用 CloudWatch 日志和指标过滤器来实现。

考虑以下日志消息:

REPORT RequestId: de96230a-70c1-491f-97f5-f76805227173  Duration: 811.71 ms Billed Duration: 900 ms Memory Size: 256 MB Max Memory Used: 122 MB

对于上述消息,度量的计算值应为122/256=0.476.

那时的我无法克服度量过滤器语法。 对此的任何帮助将不胜感激。


我认为您不能直接使用一个指标过滤器来完成此操作。你可以这样做:

1. 将 MemorySize 和 MaxMemoryUsed 提取为 2 个单独的指标

创建 2 个指标过滤器,两者都具有相同的规则[type=REPORT, ...]。 这将过滤掉以 REPORT 开头的行,并为该行的每一列创建变量。在这种情况下,它将创建变量$type, $2, $3, ... up to $19(日志行中有 19 个空格分隔的单词)。

您需要的值位于变量中$13 and $18,因此在创建 2 个指标过滤器时,请使用$13对于第一个指标和$18对于第二个指标指标值场地。指标名称和命名空间可以是您想要的任何名称。我会用MemorySize and MaxMemoryUsed对于名字和CustomLambdaMetrics作为命名空间。

2. 使用公制数学计算您需要的值。

现在您已经有了 2 个指标,您可以使用这样的源创建一个小部件来获取平均使用情况(您的情况可能会有所不同):

{
    "metrics": [
        [ { "expression": "m2/m1", "label": "Average memory usage", "id": "e1" } ],
        [ "CustomLambdaMetrics", "MemorySize", { "id": "m1", "visible": false } ],
        [ ".", "MaxMemoryUsed", { "id": "m2", "visible": false } ]
    ],
    "view": "timeSeries",
    "stacked": false,
    "region": "us-east-1",
    "stat": "Sum",
    "period": 60
}

有关度量数学的更多信息,请参阅此处:https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 CloudWatch Metric Filter 报告内存消耗百分比 的相关文章

随机推荐

  • Facebook iFrame 应用程序:如何从 URL 查询字符串传递数据

    我有一个带有图片库的 Facebook 应用程序 它是在 Flex 4 中构建的 我想允许用户链接到特定图像 那怎么办呢 我看到完成此操作的唯一方法是在 Facebook 页面 URL 中添加像 my picture asd jpg 这样的
  • 表排序器。按下拉选择排序

    我有一个简单的表 其中包含 ID 和姓名 名字 姓氏 字段 在表格上方有一个下拉列表 其中包含选项 ID 名字 姓氏 根据下拉表的选择进行排序 我不知道如何根据选择触发 tablesort 排序功能 也许这就是你想要的 demo HTML
  • 如何在nextjs中用两个url链接同一页面

    如果用户正在搜索特定城市 我想在页面名称之前的网址中显示城市名称 如果用户没有搜索特定城市 那么我想显示正常的网址 我们如何在 Next Js 中实现这一点 Ex http localhost 3000 Delhi furniture ht
  • 为什么在 Bash 中“false && true”不使用 set -e 退出? [复制]

    这个问题在这里已经有答案了 为什么第三个案例返回成功 退出代码为 0 case 1 bash c set e false true echo success echo success 0 case 2 bash c set e true f
  • 具有动态过滤器/搜索条件的 Ember 路线

    由于以下问题 我已经被困了好几天了 我的用例是我有一个包含数百万个地址的数据库 我想从网络应用程序中搜索它们 显示结果列表 然后显示有关单个地址的信息 一个重要的目标是将搜索条件表示为 URL 的一部分 这样用户就可以返回到以前的搜索 甚至
  • MSI:如何在 InstallValidate 期间卸载时停止服务 - 这仍然可以工作吗?

    我想知道 如果服务被标记为 具体如何以及何时尝试停止Remove uninstall Stop uninstall 在 WiX 项目文件中 我为什么要问 卸载时 重新启动管理器无法识别或正确处理该服务 从而导致 重新启动对话框 我将调试器附
  • Django 中的“正向外键”和“反向外键”是什么?

    当阅读与 Django 相关的主题时选择相关 and 预取相关 在一些网站上 包括堆栈溢出 我经常看到这样的词转发外键 and 反向外键但我在 Django 文档中找不到定义 models py from django db import
  • CodeIgniter 中允许 URL 中包含任何字符

    我正在使用 CodeIgniter PHP 框架 我使用JS动态加载PHP页面 someIFrame writeAttribute src index php controller method escape userGeneratedSt
  • jade 过滤器:带有 a 的对象的 markdown

    我有一个来自数据库的对象 其中包含一些我想用玉渲染的降价标记 但如何呢 当我应用 markdown 过滤器时 我不能再将对象用作对象 但它会被视为文本 我从这里开始 p markdown entry content 这呈现为普通 entry
  • node.js - 使用归档器归档文件夹生成一个空 zip

    我正在尝试使用以下方式存档文件夹archiver 我想要存档的文件夹的路径如下所示 Project app js tmp folderToArchive file1 txt file2 txt file3 txt 我的服务器端代码将生成 z
  • 在 Android 中读取 Zip 存档中的文件并将其内容放入字符串中

    这是我的第一个问题 尽管我已经使用了 Stack Overflow 上的很多技巧 但对于这种情况我还没有找到解决办法 情况是这样的 我有一个压缩文件 我想读取一个特定的文件并将其内容放入一个 String 变量中 该变量将被返回并放入 An
  • 用于检查属性是否存在的简写函数[重复]

    这个问题在这里已经有答案了 你们能帮我制作一个速记函数来确定对象属性是否存在吗 在 99 的情况下 我想用它来检查返回的 json 对象是否包含指定的属性 请注意 不保证必须定义任何父属性甚至 json 对象本身 我是这样想的 functi
  • 模型衍生 API 响应未通过 Jackson 映射

    是否对模型派生 API 的响应对象进行了更新 因为我们在将 3D 模型请求的响应映射回清单和元数据对象时遇到问题 两人都抛出了杰克逊的错误 GetManifest 返回未处理的角色枚举 GetMetadataForGuid 抛出 非法字符
  • 根据邮政编码确定 USPS 邮政区域的公式

    我希望能够更轻松地按 USPS 邮区对数百个信封进行分类 困难在于必须根据原始邮政编码对美国 8 个区域中的每一个区域进行手动排序 91352 http postcalc usps gov ZoneCharts 我有一个包含 ZIP 列的联
  • 对 ? 的行为感到困惑。操作员

    这是我的代码 class Address public bool IsAppartment get set class Employee public string Name get set public Address Address g
  • 关闭选项卡前确认框

    我希望当用户尝试关闭窗口时有一个确认框 window onbeforeunload function evt var message Are you sure you want to leave cause there are some u
  • HTML5 输入模式中的正则表达式无效

    我需要在 HTML 输入中使用这个正则表达式 取自以逗号或逗号和空格分隔的项目列表的正则表达式 s s 所以我将其设置为输入
  • 如何触发 Chrome 扩展按钮的点击?

    我正在建立一个自动化测试套件使用 Selenium Web 驱动程序 在某个时刻 我必须通过以下方式测试页面的工作方式 Chrome 扩展程序打开或关闭 可以将其想象为您想要单击 Adblock 扩展 然后单击对此站点的禁用 然后 再次打开
  • g++ -fdump-class-hierarchy 输出中的第一个 (int (*)(...))0 vtable 条目是什么?

    对于这段代码 class B1 public virtual void f1 class D public B1 public void f1 int main B1 b1 new B1 D d new D return 0 编译后 我得到
  • 使用 CloudWatch Metric Filter 报告内存消耗百分比

    我们广泛使用 AWS Lambda 作为我们基础设施的一部分 为了获得更好的可见性 我希望能够报告一个自定义的 CloudWatch 指标 其值为内存已使用 内存分配 这可以使用 CloudWatch 日志和指标过滤器来实现 考虑以下日志消