View a markdown version of this page

儀表板內文結構和語法 - Amazon CloudWatch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

儀表板內文結構和語法

整體結構

DashboardBody 是 JSON 格式的字串。它可以包含介於 0 到 500 個小工具物件之間的陣列,以及其他一些參數。儀表板必須包含widgets陣列,但該陣列可以是空的。

以下是此結構的範例,其中包含一個指標小工具和一個文字小工具、在目前時間前六小時開始的時間範圍,以及一律遵守每個圖形的期間設定。

{ "start": "-PT6H", "periodOverride": "inherit", "widgets": [ { "type":"metric", "x":0, "y":0, "width":12, "height":6, "properties":{ "metrics":[ [ "AWS/EC2", "CPUUtilization", "InstanceId", "i-012345" ] ], "period":300, "stat":"Average", "region":"us-east-1", "title":"EC2 Instance CPU", "liveData": false, "legend": { "position": "right" } } }, { "type":"text", "x":0, "y":7, "width":3, "height":3, "properties":{ "markdown":"Hello world" } } ] }

下一個範例會顯示三個 Lambda 每個函數指標,並使用儀表板變數,讓儀表板使用者可以在不同 Lambda 函數名稱之間切換,並查看每個函數的所有三個指標。這可協助您建立單一彈性儀表板,以顯示不同資源的關鍵指標。在此範例中,函數是由指標搜尋查詢探索,因此儀表板會在建立新的 Lambda 函數時自動探索。

{ "widgets": [{ "height": 6, "width": 6, "y": 0, "x": 0, "type": "metric", "properties": { "view": "timeSeries", "stacked": false, "metrics": ["AWS/Lambda", "Invocations", "FunctionName", "my-function-name"], "region": "us-east-1", "liveData": true } }, { "height": 12, "width": 12, "y": 0, "x": 6, "type": "metric", "properties": { "view": "timeSeries", "stacked": false, "metrics": ["AWS/Lambda", "Errors", "FunctionName", "my-function-name"], "region": "us-east-1", "liveData": true } }, { "height": 3, "width": 6, "y": 0, "x": 18, "type": "metric", "properties": { "view": "timeSeries", "stacked": false, "metrics": ["AWS/Lambda", "Duration", "FunctionName", "my-function-name"], "region": "us-east-1", "liveData": true } } ], "variables": [{ "type": "property", "property": "FunctionName", "inputType": "select", "id": "LambdaFunction_Variable", "label": "Function", "visible": true, "search": "{AWS/Lambda,FunctionName} MetricName=\"Duration\"", "populateFrom": "FunctionName" }] }

下一個範例有兩個小工具。第一個包括兩個指標和一個數學表達式,加總其總數。第二個小工具是搜尋表達式,顯示 區域中CPUUtilization所有 EC2 執行個體的 。

{ "start": "-PT9H", "periodOverride": "inherit", "widgets": [ { "type":"metric", "x":0, "y":0, "width":12, "height":6, "properties":{ "metrics":[ [ "AWS/EC2", "DiskReadBytes", "InstanceId", "i-123",{ "id": "m1" } ], [ ".", ".", ".", "i-abc", { "id": "m2" } ], [ { "expression": "SUM(METRICS())", "label": "Sum of DiskReadbytes", "id": "e3" } ] ], "view": "timeSeries", "stacked": false, "period":300, "stat":"Average", "region":"us-east-1", "title":"EC2 Instance CPU" } }, { "type":"metric", "x":0, "y":0, "width":18, "height":9, "properties":{ "metrics":[ [ { "expression": "SEARCH('{AWS/EC2,InstanceId} MetricName=\"CPUUtilization\"', 'Average', 300)", "id": "e1" } ] ], "view": "timeSeries", "stacked": false, "region":"us-east-1", "title":"EC2 Instance CPU" } } ] }

本節的其餘部分包含說明DashboardBody語法每個部分的範例。如需顯示整個命令語法的更多範例,請參閱《Amazon CloudWatch API 參考》中的 PutDashboard

JSON 物件的頂層可以包含下列屬性。

小工具

儀表板中的小工具清單。如需詳細資訊,請參閱Widgets 陣列結構

必要:是

variables

儀表板中使用的儀表板變數物件陣列。如需您可以在每個儀表板變數物件中使用的欄位的詳細資訊,請參閱 變數陣列結構

如需儀表板變數的詳細資訊,請參閱使用儀表板變數建立彈性儀表板

如果您包含variables陣列,它可以包含 0 到 25 個變數物件。

必要:否

end

儀表板載入時要用於儀表板上每個小工具的時間範圍結束。如果您指定一個值給 end,則您必須也指定一個值給 start。對於每個值,以 ISO 8601 格式指定絕對時間。例如 2018-12-17T06:00:00.000Z

類型:字串

必要:否

入門

儀表板上每個小工具要使用的時間範圍開始。

您可以指定 endstart而無需指定以目前時間結束的相對時間範圍。在此情況下,-PT如果您以分鐘或小時為單位指定時間範圍,則 的值start必須以 開頭,-P如果您以天、週或月為單位指定時間範圍,則必須以 開頭。然後,您可以使用 M、H、D、W 和 M 做為分鐘、小時、天、週和月的縮寫。例如, -PT5M 顯示過去 5 分鐘、 -PT8H顯示過去 8 小時, -P3M顯示過去三個月。

您也可以使用 start搭配 end 欄位來指定絕對時間範圍。指定絕對時間範圍時,請使用 ISO 8601 格式。例如 2018-12-17T06:00:00.000Z

如果您省略 start,儀表板會在載入時顯示預設時間範圍。

類型:字串

必要:否

periodOverride

使用此欄位指定儀表板載入時的圖形期間。指定 auto會導致儀表板上所有圖形的期間自動適應儀表板的時間範圍。指定 inherit可確保一律遵守為每個圖形設定的期間。

有效值:自動 | 繼承

類型:字串

必要:否

Widgets 陣列結構

任何類型的每個小工具都可以有下列屬性。

type

小工具的類型。

有效值:metric | text | log | alarm | explorer

類型:字串

必要:是

x

小工具在 24 欄儀表板網格上的水平位置。預設值是下一個可用的位置。

有效值:0–23

類型:整數

必要:是,如果y已指定 。否則不需要。

y

小工具在 24 欄儀表板網格上的垂直位置。預設值是下一個可用的位置。

有效值:任何整數,0 或更高。

類型:整數

必要:是,如果x已指定 。否則不需要。

width

小工具的寬度,以網格單位表示 (在 24 欄網格中)。預設值為 6。

有效值:1–24

類型:整數

必要:否

height

以網格單位為單位的小工具高度。預設值為 6。

有效值:1–1000

類型:整數

必要:否

屬性

小工具的詳細屬性,因小工具類型而異。如需 的格式詳細資訊properties,請參閱 指標小工具物件的屬性文字小工具物件的屬性

類型:物件

必要:是

變數陣列結構

陣列中的每個儀表板變數可以具有下列屬性。

type

儀表板變數的類型。CloudWatch 支援兩種類型:屬性變數模式變數

屬性變數會變更儀表板中所有小工具中屬性的所有執行個體的值。屬性可以是下列其中一項:

  • 小工具定義中的任何 JSON 屬性,例如 region

  • 指標的任何維度名稱,例如 InstanceIdFunctionName

模式變數會變更儀表板 JSON 的規則表達式模式。當您只需要變更 JSON 屬性值的一部分,甚至是 JSON 屬性時,請使用它。

屬性變數適用於大多數使用案例,且設定較不複雜。

有效值: property | pattern

類型:字串

必要:是

inputType

決定儀表板使用者如何輸入變數的值。

  • 指定 input 以使用使用者可以輸入值的文字方塊。

  • 指定 select以使用您定義的一組值,或指標搜尋查詢找到的值下拉式清單。

  • 指定 radio以使用一組選項按鈕,以及您定義的值,或您使用指標搜尋查詢找到的值。

有效值: input | select | radio

類型:字串

必要:是

values

如果您的 inputTypeselect或 ,radio而且您想要定義可能的變數值,而不是使用指標查詢搜尋,請在此處指定這些值。

values 是陣列,其中陣列中的每個物件都包含必要的和選用的標籤。每個可以是字串、數字或布林值,而且每個標籤都必須是字串。每個值和標籤最多可達 255 個字元。

如果您指定values陣列,它必須至少包含一個項目,且最多可包含 500 個項目。

例如,以下會建立三個可用區域的清單,做為變數的值。

"values": [ { "label": "US East (IAD)", "value": "us-east-1" }, { "label": "US West (SFO)", "value": "us-west-1" }, { "label": "EU (DUB)", "value": "eu-west-1" } ]

類型:陣列

必要:如果 inputTypeselectradio且您未使用指標搜尋查詢來填入值,則為是。

id

此變數的 ID。它最多可達 32 個字元,有效字元為 0-9A-Za-z-_

類型:字串

必要:是

label

要為輸入欄位顯示的標籤。它最多可有 30 個字元。

如果您省略 屬性變數的此欄位,則屬性名稱會顯示為標籤。如果您省略模式變數,則 pattern_1, pattern_2, ... 會用於標籤。

類型:字串

必要:否

defaultValue

第一次開啟儀表板時,變數的預設值。

  • 如果 inputTypeinput,您可以defaultValue在這裡手動指定 ,並使用最多 255 個字元

  • 如果 inputTypeselectradio,您必須指定您在values陣列中指定的有效可能值,或在指標查詢搜尋中擷取的有效可能值。

有效值:此變數的任何有效值

類型:字串、數字或布林值,取決於此變數的類型值

必要:否

search

指定此欄位,使用指標搜尋表達式填入您的 selectradio輸入欄位。針對此欄位的值,指定命名空間、維度名稱和指標名稱。您指定的維度必須對該指標有效。CloudWatch 會尋找發佈該指標和維度的所有資源,並將這些資源填入清單。

例如,指定 "search": "{AWS/EC2,InstanceId} MetricName=\"CPUUtilization\"" 搜尋帳戶中的 Amazon EC2 執行個體,或指定 "search": "{AWS/Lambda,FunctionName} MetricName=\"Duration\"",傳回帳戶中的 Lambda 函數

您指定的search字串最多可達 2048 個字元。

注意

如果您使用的是搜尋表達式,而且也想要指定預設值,則只要該預設值是 或搜尋擷取的資源,defaultValue就會使用您在 中指定的預設值。使用搜尋表達式填入輸入欄位時,您也可以指定 __FIRST 的特殊值defaultValue,讓預設值成為從搜尋傳回的第一個值。(特殊值包含兩個底線,然後是 FIRST) 搜尋傳回的值一律按字母順序排序。

類型:字串

必要:如果 inputTypeselectradio且您未指定 ,則為是values

populateFrom

如果您使用 search 欄位來使用搜尋表達式填入輸入欄位,請使用搜尋將擷取的維度名稱指定此欄位。

例如,如果您search的值是 "search": "{AWS/EC2,InstanceId} MetricName=\"CPUUtilization\"",則可以InstanceId為 指定 populateFrom

類型:字串

必要:如果 inputTypeselectradio且您未指定 ,則為是values

visible

指定輸入標籤和欄位是否顯示在儀表板上。如果您省略此項,預設為使用 true

使用 可在儀表板上false儲存一些空間,但需要使用者變更儀表板 URL 來變更變數值。

類型:布林值

必要:否

變數範例

下列範例使用 屬性變數,使用文字輸入欄位變更所有小工具的區域。第一次開啟儀表板時, 的預設值us-east-1會用於 變數。

"variables": [ { "type": "property", "property": "region", "inputType": "input", "id": "region", "label": "Region", "defaultValue": "us-east-1", "visible": true } ],

下列範例使用模式變數來變更所有小工具的區域,有時區域會設定在字串中間,例如 ARN。

"variables": [ { "type": "pattern", "pattern": "us-east-1", "inputType": "input", "id": "region", "label": "Region", "defaultValue": "us-east-1", "visible": true } ],

下列範例會產生 Lambda 函數變數,每個函數都有選項按鈕。函數由指標查詢搜尋探索。

"variables": [ { "type": "pattern", "pattern": "originalFuncNameInDashboard", "inputType": "radio", "id": "functionName", "label": "Function", "visible": true, "search": "{AWS/Lambda,FunctionName} MetricName=\"Duration\"", "populateFrom": "FunctionName", "defaultValue": "__FIRST" } ],

下列範例顯示如何在儀表板中指定多個變數,並示範數種類型的變數。

"variables": [{ "type": "property", "property": "region", "inputType": "select", "id": "unique_id_1", "label": "Region", "defaultValue": "us-east-1", "visible": true, "values": [{ "label": "IAD", "value": "us-east-1" }, { "label": "CMH", "value": "us-east-2" }, { "label": "NRT", "value": "ap-northeast-1" } ] }, { "type": "property", "property": "FunctionName", "inputType": "select", "id": "unique_id_2", "label": "Function", "visible": true, "values": [{ "value": "my-FunctionName-1" }, { "value": "my-FunctionName-2" }, { "value": "my-FunctionName-3" } ] }, { "type": "property", "property": "accountId", "inputType": "radio", "id": "unique_id_3", "defaultValue": "111122223333", "visible": true, "values": [{ "label": "IAD Account", "value": "111122223333" }, { "label": "CMH Account", "value": "123456789012" }, { "label": "NRT Account", "value": "000000000000" } ] } ]

文字小工具物件的屬性

類型的小工具在 properties區段中text可以有一或兩個參數。markdown 欄位為必要欄位,欄位為選用transparent欄位。

如需 CloudWatch 文字小工具中支援 Markdown 樣式的詳細資訊,請參閱 主控台中的使用 Markdown

Markdown

小工具要顯示的文字。僅將此參數用於文字小工具。

類型:字串

必要:是 (小工具type為 時text)。

背景

指定文字小工具具有純色或透明背景。值transparent可讓 Widget 透明化。值solid為預設值。

類型:字串

必要:否

{ "widgets":[ { "type":"text", "x":0, "y":7, "width":3, "height":3, "properties":{ "markdown":"Hello world", "background": "transparent" } } ] }

日誌小工具物件的屬性

類型的小工具log代表 CloudWatch Logs Insights 查詢的結果。如需詳細資訊,請參閱搭配 CloudWatch Logs Insights 分析日誌資料

log Widget 可以在其properties欄位中包含下列欄位。

accountId

如果這是跨帳戶查詢,則包含日誌 AWS 的帳戶的帳戶 ID。

類型:字串

必要:否

region

日誌查詢的區域。

類型:字串

必要:是

標題

要由小工具顯示的標題文字。

類型:字串

必要:否

query

包含 CloudWatch Logs Insights 查詢函數。

類型:字串

必要:是 (小工具type為 時log)。

query 字串開頭為要查詢的日誌群組名稱。您必須在每個日誌群組名稱前面加上 SOURCE。使用管道字元 (|) 分隔多個日誌群組。

在日誌群組清單之後新增另一個管道字元,然後指定查詢語法。使用 分隔查詢語法中的每一行 \n|

例如,以下行代表兩個日誌群組 service_log1和 的查詢service_log2。查詢會顯示發生錯誤的 Canary。

"query": "SOURCE 'service_log1' | SOURCE 'service_log2' |filter Fault > 0\n| fields Fault.Message\n| stats count(*) by Canary.Name, Fault.Message"
檢視

指定查詢結果的顯示方式。指定 table以資料表形式檢視結果。指定 timeSeries將此指標顯示為折線圖。指定 將其bar顯示為長條圖。指定 將其pie顯示為圓餅圖。

如果您省略此參數,結果會顯示為資料表。

類型:字串

必要:否 (小工具type為 時log)。

{ "widgets": [ { "type": "log", "x": 12, "y": 24, "width": 12, "height": 6, "properties": { "region": "us-east-1", "title": "Errors (Application Log)", "query": "SOURCE 'application1.log' | SOURCE 'application2.log' | filter @message like \"[ERROR]\"\n| parse \"Error for [*] [*] due to: *\" canaryName1, canaryId1, cause1\n| parse \"Executor canary [*] *\" canaryName2, cause2\n| fields coalesce(cause1, cause2) as cause\n| fields coalesce(canaryName1, canaryName2) as canaryName\n| fields ispresent(cause) as isP\n| filter isP\n| stats count() as errCount by canaryName, substr(cause, 0, 130)\n| sort errCount DESC", "view": "table" } } ] }

指標小工具物件的屬性

類型的小工具在 中metric可以有下列欄位properties

accountId

指定此小工具中所有指標的來源 AWS 帳戶 ID。這適用於包含多個帳戶小工具的跨帳戶儀表板。如需詳細資訊,請參閱跨帳戶跨區域 CloudWatch 主控台

如果您省略此選項,則會使用目前的帳戶做為預設值。僅將此參數用於指標小工具。

您也可以使用 陣列中每個指標內的 accountId 欄位metrics來建立單一小工具,其中包含來自多個帳戶的指標。

類型:字串

必要:否

註釋

若要在小工具中包含警示或註釋,請指定 annotations陣列。如需 格式的詳細資訊,請參閱 儀表板小工具物件:註釋屬性。僅將此參數用於指標小工具。

類型:物件

必要:只有在小工具typemetric 且未metrics指定時,才需要警示註釋。不需要水平或垂直註釋。

liveData

指定 true 在小工具中顯示即時資料。即時資料是在尚未完全彙總的最後一分鐘內所發布的資料。如需詳細資訊,請參閱使用即時資料

類型:布林值

必要:否

圖例

指定 legend以判斷圖形上線條的圖例顯示位置。legend 欄位包含另一個名為 的欄位position。的可能值positionrightbottomhidden

例如,以下會導致圖例出現在圖形的右側。

"legend": { "position": "right" }

類型:物件

必要:否

指標

指定metrics陣列以包含一或多個指標 (不含警示)、Metrics Insights 查詢、數學表達式或搜尋表達式。一個metrics陣列可以包含 0–500 個指標和表達式。僅將此參數用於指標小工具。如需 的格式詳細資訊metrics,請參閱 指標小工具:陣列中每個指標的格式

一個指標陣列不能包含一個以上的 Metrics Insights 查詢。

單一expression欄位不能同時包含 Metrics Insights 查詢和數學表達式,但您可以使用一個表達式傳回的 Metrics Insights 查詢結果,做為陣列中不同表達式中數學表達式的輸入。

類型:陣列陣列

必要:是,未metricannotations指定小工具type時。

period

此小工具中所有指標的預設期間,以秒為單位。期間是圖形上一個資料點所表示的時間長度。您可以在每個指標定義中覆寫此預設值。僅將此參數用於指標小工具。預設值為 300。

有效值:60 的任何倍數,最小值為 60。

類型:整數

必要:否

region

指標的區域。

類型:字串

必要:是

微型圖表

指定 以在數字小工具下true顯示 sparkline 功能。指定 false 自行顯示數字小工具。如果檢視不是 ,則會忽略此參數singleValue。僅將此參數用於指標小工具。

類型:布林值

必要:否

堆疊

指定 true將圖形顯示為堆疊行,或false指定 顯示為個別行。如果 view是 ,則會忽略此參數singleValue。僅將此參數用於指標小工具。

類型:布林值

必要:否

stat

要針對陣列中的每個指標顯示的預設統計資料。您可以在metrics陣列中每個個別指標的定義內覆寫此預設值。僅將此參數用於指標小工具。

有效值:SampleCount | Average | Sum | Minimum | Maximum | p??

類型:字串是有效的 CloudWatch 統計資料。

必要:否

資料表

包含table區段,以在小工具中包含與資料表相關的變更。如需 格式的詳細資訊,請參閱 Dashboard Widget 物件:資料表屬性

類型:物件

必要:否

timezone

用於在圖形中顯示時間的時區。格式為 + 或 - 後接四位數。前兩位數表示 UTC 前後的小時數,最後兩位數表示分鐘數。例如, +0130表示時間比 UTC 提前 1 小時 30 分鐘。預設值為 +0000

類型:字串

必要:否

標題

要為圖形或數字顯示的標題。僅將此參數用於指標小工具。

類型:字串

必要:否

檢視

指定 timeSeries將此指標顯示為折線或堆疊區域圖。指定 singleValue將此指標顯示為數字圖表。指定 gauge將此指標顯示為量測計圖形。指定 bar將此指標顯示為長條圖。指定 pie將此指標顯示為圓餅圖。

注意

如果您指定 gauge,則必須max在 的左側設定 min和 的值yAxis

有效值:timeSeries | singleValue | gauge | bar | pie | table

類型:字串

必要:否

yAxis

圖形 Y 軸左側和右側的最小值和最大值。此屬性適用於所有圖形化指標,但覆寫此設定的特定指標除外。如需詳細資訊,請參閱儀表板小工具物件:yAxis 屬性格式

類型:yAxis 物件

必要:否

範例:堆疊區域和量測計小工具

{ "widgets": [ { "type":"metric", "x":0, "y":0, "width":12, "height":6, "properties":{ "metrics":[ [ "AWS/EC2", "CPUUtilization", "InstanceId", "i-012345" ], [ "AWS/EC2", "NetworkIn", "InstanceId", "i-012345", { "yAxis":"right", "label":"NetworkIn", "period":3600, "stat":"Maximum" } ] ], "period":300, "stat":"Average", "region":"us-east-1", "timezone":"+0300", "title":"EC2 Instance CPU", "stacked":true, "view":"timeSeries", "liveData":false, "yAxis":{ "left":{ "min":0, "max":100 }, "right":{ "min":50 } }, "annotations":{ "horizontal":[ { "visible":true, "color":"#9467bd", "label":"Critical range", "value":20, "fill":"above", "yAxis":"right" } ] } }, { "type": metric, "x": 18, "y"; 60, "width": 6, "height": 6, "properties": { "metrics": [ [ "AWSLogsShrinkRay", "disk_inodes_used", "path", "/dev/shm", "InstanceId", "i-012345", "AutoScalingGroupName", "ShrinkRayExecutorResourceStack-Gamma-us-east-1-ASGuseast1ac48xlargeASGB9B53974-VTYXJUZGUAHV", "InstanceType", "c4.8xlarge", "device", "tmpfs", "fstype", "tmpfs" ] ], "view": "gauge", "title": "Disk Inodes Used" "region": "us-east-1", "yAxis": { "left": { "min": 0, "max": 100, } } } }

指標小工具:陣列中每個指標的格式

metrics 陣列中的每個項目都是單一指標或數學表達式或搜尋表達式。metrics 陣列中的每個單一指標都有下列格式:

[ Namespace, MetricName, [{DimensionName,DimensionValue}...] {Rendering Properties Object} ]

metrics 陣列中的每個表達式都有下列格式:

[ {"expression" : "expression", ["label" : "label"] , ["id" : "id"] } ]
accountId

指定此指標來自 AWS 的帳戶 ID。這可讓您建立小工具,其中包含跨帳戶儀表板上多個帳戶的指標。如需詳細資訊,請參閱跨帳戶跨區域 CloudWatch 主控台

如果您省略此選項,則會使用目前帳戶做為預設值。僅將此參數用於指標小工具。

類型:字串

必要:否

命名空間

包含 指標的 AWS 命名空間。如果您在metrics陣列中有多個項目,則對於第一個項目之後的每個項目,您只能指定"."使用與陣列中先前指標相同的命名空間。

類型:字串

必要:是

MetricName

CloudWatch 指標的名稱。如果您在metrics陣列中有多個項目,則對於第一個項目之後的每個項目,您只能指定"."使用與陣列中先前指標相同的指標名稱。

類型:字串

必要:是,針對單一指標

表達式

如果這是表達式而非單一指標,則為 Metrics Insights 查詢、數學表達式或搜尋表達式。

在使用雙引號進行完全相符的搜尋表達式中,每個雙引號都必須以反斜線逸出。

如需 Metrics Insights 查詢語法的詳細資訊,請參閱 Metrics Insights 查詢元件和語法

如需數學表達式或搜尋表達式的詳細資訊,請參閱《Amazon CloudWatch 使用者指南》中的使用指標數學或在圖形中使用搜尋表達式

類型:字串

必要:是,表達式為

Metrics Insights 查詢的表達式範例:

[ { "expression": "SELECT MAX(CPUUtilization) FROM SCHEMA(\"AWS/EC2\", InstanceId) GROUP BY InstanceId LIMIT 10", "label": "View the 10 max CPU Utilization", "id": "q1" } ]
DimensionName

維度的名稱,以進一步精簡顯示的資料。如果您在metrics陣列中有多個項目,則對於第一個項目之後的每個項目,您只能指定"."使用與陣列中先前指標中指定的對應維度相同的維度名稱。您可以為指標指定 0 個維度,或最多指定指標支援的維度。

類型:字串

必要:否

DimensionValue

用於指標該維度的值。如果有對應的維度名稱,則為必要。

類型:字串

必要:否

id

此時間序列的 ID。此 ID 可以用作數學表達式的一部分。ID 必須以小寫字母開頭。

類型:字串

必要:否

label

圖表中顯示的標籤,代表此時間序列。

類型:字串

必要:否

region

指標的區域。僅將此參數用於指標小工具。如果您省略此選項,則會使用目前的區域做為預設值。

類型:字串

必要:否

轉譯屬性物件

指定要用於此特定指標的轉譯屬性,覆寫針對整體小工具指定的值。如需 格式的詳細資訊,請參閱 儀表板小工具物件:轉譯屬性物件格式

類型:指標轉譯屬性物件

必要:否

// The simplest example, a metric with no dimensions [ "AWS/EC2", "CPUUtilization" ] // A metric with a single dimension [ "AWS/EC2", "CPUUtilization", "InstanceId", "i-012345" ] // A metric with a single dimension and rendering properties [ "AWS/EC2", "DiskReadBytes", "InstanceId", "i-xyz", { "yAxis": "right"} ] // The following example graphs the DiskReadBytes metric for three instances. [ "AWS/EC2", "DiskReadBytes", "InstanceId", "i-xyz" ], [ ".", ".", ".", "i-abc" ], [ ".", ".", ".", "i-123" ] // The following example includes two metrics and a math expression to sum them. [ "AWS/EC2", "DiskReadBytes", "InstanceId", "i-123",{ "id": "m1" } ], [ ".", ".", ".", "i-abc", { "id": "m2" } ], [ { "expression": "SUM(METRICS())", "label": "Sum of DiskReadbytes", "id": "e3" } ] // The following example is a search expression showing the EC2 CPUUtilization for each instance in the Region. [ { "expression": "SEARCH('{AWS/EC2,InstanceId} MetricName=\"CPUUtilization\"', 'Average', 300)", "id": "e1" } ],

儀表板小工具物件:轉譯屬性物件格式

metrics 陣列中的每個指標都可以選擇性地具有自訂轉譯屬性,以覆寫widget物件yAxis參數中指定的預設轉譯屬性。本節說明這些每個指標自訂轉譯屬性的格式。

color

用於此指標的六位數 HTML 十六進位顏色代碼。

類型:字串

必要:否

label

此指標在圖形圖例中顯示的標籤。如果未指定,則會為指標指定自動產生的標籤,以將其與小工具中的其他指標區分開來。

類型:字串

必要:否

period

此指標的期間,以秒為單位。此期間是圖形上一個資料點所表示的時間長度。

有效值:60 的倍數,下限為 60。

類型:整數

必要:否

stat

此指標的統計資料,如果與陣列中其他指標所使用的統計資料不同。根據預設,如果您未在陣列或指標層級指定統計資料,CloudWatch 會使用平均

有效值:SampleCount | Average | Sum | Minimum | Maximum | p??

類型:字串是有效的 CloudWatch 統計資料。

必要:否

visible

將此設定為 true,讓指標出現在圖形中,或false將其隱藏。預設值為 true

類型:布林值

必要:否

yAxis

圖表上顯示此指標 y 軸的位置。預設值為 left

有效值: left | right

類型:字串

必要:否

// The third metric has its own rendering properties, overriding those of the rest of the widget. [ "AWS/EC2", "DiskReadBytes", "InstanceId", "i-xyz" ], [ ".", ".", ".", "i-abc" ], [ ".", ".", ".", "i-123", { "label":"Instance i-123", "yAxis": "right"} ]

儀表板小工具物件:註釋屬性

註釋包括警示、水平註釋和垂直註釋。單一指標小工具最多可以有一個警示,也可以有一或多個水平或垂直註釋。單一小工具不能同時具有警示和水平或垂直註釋。

警示註釋

如果您指定警示註釋,您也無法在相同的小工具中指定metrics陣列。

警示

警示的 Amazon Resource Name (ARN)。

類型:字串陣列。陣列中可以有 0–1 個字串。

必要:只有在未列出指標時。

"annotations": { "alarms": [ "arn1" ] }

水平註釋

水平

水平註釋的陣列。水平註釋有數個填充陰影的選項,包括註釋行上方的陰影、註釋行下方的陰影,以及出現在兩個連結註釋行之間的「帶」陰影,作為單一帶註釋的一部分。陣列中的每個水平註釋都是單一註釋,而不是頻帶註釋,格式如下:

{value, label, color, fill, yAxis, visible}

每個作為頻帶註釋的水平註釋都有以下格式:

[ {value, label, color, yAxis, visible}, {value, label} ]
value

圖形中顯示水平註釋行的指標值。在頻帶著色註釋上,值的兩個值會定義頻帶的上下邊緣。

在具有水平註釋的圖形上,擴展圖形,以便所有可見的水平註釋都顯示在圖形上。

類型:浮點數

必要:是

label

出現在註釋旁圖形上的字串。

類型:字串

必要:否

color

用於註釋的六位數 HTML 十六進位顏色代碼。此顏色用於註釋行和填充陰影。

類型:字串

必要:否

填滿

如何搭配 註釋使用填充陰影。有效值above適用於註釋上方的陰影、below適用於註釋下方的陰影,以及none適用於無陰影。fill 如果省略 ,則沒有陰影。

例外是帶著色的註釋。這些註釋一律在兩個值之間具有陰影,且會fill忽略 的任何值。

類型:字串

必要:否

visible

將此設定為 true,讓註釋出現在圖形中,或false將其隱藏。預設值為 true

類型:布林值

必要:否

yAxis

如果圖形包含多個指標,請指定 中的數字是Value參考與左側 Y 軸或右側 Y 軸相關聯的指標 。有效值為 rightleft

類型:字串

必要:否

// A single horizontal annotation with fill shading above the annotation line, based on the metric associated with the right Y-axis "annotations": { "horizontal": [ { "visible":true, "color":"#9467bd", "label":"Critical range", "value":20, "fill":"above", "yAxis":"right" } ] } // A band annotation. Each value has a label, but other parameters for the band are specified only with the first number "annotations": { "horizontal": [ [ { "label": "Band top", "value": 200, "color": "#9467bd", "visible": true, "yAxis": "right" }, { "value": 95.5, "label": "Band bottom" } ] ] } // Three annotations on a graph. The first one is a band annotation. The final one is hidden. "annotations": { "horizontal": [ [ { "label": "Band top", "value": 200, "color": "#9467bd", "visible": true, "yAxis": "right" }, { "value": 95.5, "label": "Band bottom" } ], { "visible": true, "color": "#9467bd", "label": "Label for this annotation", "value": 20, "fill": "below", "yAxis": "right" }, { "visible": false, "color": "#aaa", "label": "Hidden annotation", "value": 150 } ] }

垂直註釋

垂直

垂直註釋的陣列。對於每個垂直註釋,您可以選擇在註釋之前、之後或在連結為單一頻帶註釋的兩條垂直線之間填充陰影。陣列中每個垂直註釋都是單一註釋,而不是頻帶註釋,其格式如下:

{value, label, color, fill, visible}

每個作為頻帶註釋的垂直註釋都有以下格式:

[ {value, label, color, visible}, {value, label} ]
value

圖表中要顯示垂直註釋線的日期和時間。在頻帶著色註釋上,值的兩個值會定義頻帶的開始和結束邊緣。

在具有垂直註釋的圖形上,擴展圖形,以便所有可見的垂直註釋都顯示在圖形上。

這定義為 ISO 8601 格式的字串。如需詳細資訊,請參閱 ISO 8601

類型:字串

必要:是

label

出現在註釋旁圖形上的字串。

類型:字串

必要:否

color

用於註釋的六位數 HTML 十六進位顏色代碼。此顏色用於註釋行和填充陰影。

類型:字串

必要:否

填滿

如何搭配 註釋使用填充陰影。有效值before適用於註釋之前的陰影、註釋後的after陰影,以及none無陰影。fill 如果省略 ,則沒有陰影。

例外是帶著色的註釋。這些註釋一律在兩個值之間具有陰影,且會fill忽略 的任何值。

類型:字串

必要:否

visible

將此設定為 true,讓註釋出現在圖形中,或false將其隱藏。預設值為 true

類型:布林值

必要:否

// A single vertical annotation with fill shading after the annotation line "annotations": { "vertical": [ { "visible": true, "color": "#9467bd", "label": "Bug fix deployed", "value": "2018-08-28T15:25:26Z", "fill": "after" } ] } // A band vertical annotation. Each annotation line has a label, but other parameters for the band are specified only with the first value "annotations": { "vertical": [ [ { "label": "Band start", "value": "2018-08-27T15:25:26Z", "color": "#9467bd", "visible": true }, { "value": "2018-08-28T15:25:26Z", "label": "Band end" } ] ] }

儀表板小工具物件:yAxis 屬性格式

定義圖形 Y 軸的設定。這些設定包括最大值和最小值、軸的標籤,以及軸是否顯示單位。在 widget 物件中將此設定為影響小工具中的所有指標。若要覆寫特定指標的小工具設定,請將其設定為metrics陣列中的指標。

{ left: { min: 0, max: 100 }, right: { min: 0 } }

左側 Y 軸的選用設定。

類型:YAxis 物件

必要:否

右側 Y 軸的選用設定。

類型:YAxis 物件

必要:否

每個 leftright 物件可以包含下列參數:

label

此 Y 軸的標籤

類型:字串

必要:否

min

此 Y 軸的最小值

類型:浮點數

必要:否

max

此 Y 軸的最大值

類型:浮點數

必要:否

showUnits

決定是否針對與此軸相關聯的指標顯示單位。預設值為 true。

類型:布林值

必要:否

Dashboard Widget 物件:資料表屬性

如果您table為指標小工具指定 ,則可以包含與摘要資料欄、資料點資料欄和資料表配置可見性相關的視覺化。這些屬性只有在小工具檢視類型為 時才會生效,如果包含,table則不會更改其他檢視類型。使用資料表小工具不需要 table 屬性。

layout

使用此欄位轉換資料表,讓資料點垂直或水平延伸。預設值為 horizontal

有效值: vertical | horizontal

類型:字串

必要:否

stickySummary

將此設定為 true 以將您包含在資料表中的摘要資料欄設為黏性,因此您可以探索資料資料欄,同時始終在檢視區中擁有摘要資料欄。預設值為 false

無論您在此欄位的選擇為何,小工具標籤一律黏性。

有效值: true | false

類型:布林值

必要:否

showTimeSeriesData

false 如果您希望只顯示標籤和摘要資料欄,請將其設定為 隱藏資料的其他資料欄。

預設值為 true

有效值: true | false

類型:布林值

必要:否

summaryColumns

摘要資料欄是與資料表小工具一起引入的新屬性。這些資料欄是目前表格摘要的特定子集。例如,Sum摘要是其個別資料列中所有轉譯資料點的總和。摘要資料欄與 CloudWatch 指標統計資料的概念不同。

預設為 [“MIN“, "MAX","SUM", "AVG"]

有效值:"MIN" | "MAX" | "SUM" | "AVG"

類型:陣列

必要:否

例如,下列 JSON 會建立資料表,顯示資料表中每個指標的最小值和最大值。

"table": { "summaryColumns": ["MIN", "MAX"], "layout": "vertical", "stickySummary": true, "showTimeSeriesData": false, },

Metrics Explorer Widget 物件的屬性

類型的小工具explorer代表指標瀏覽器小工具。如需詳細資訊,請參閱使用 Metrics Explorer 依其標籤和屬性監控資源

您也可以使用 將指標瀏覽器小工具新增至儀表板 CloudFormation。如需詳細資訊,請參閱 AWS::CloudWatch::Dashboard

此小工具類型在小工具 中可以有下列欄位properties

aggregateBy

指定如何從多個資源彙總指標的物件。此物件中 key 欄位的有效值是標籤和資源屬性的索引鍵。此物件包含下列欄位。

  • key – 用於彙總指標的標籤或資源屬性金鑰。

  • func – 要使用的彙總函數。有效值為 AVG | MIN | MAX | STDDEV | SUM

類型:物件

必要:否

labels

用於判斷小工具中顯示哪些指標的標籤陣列或資源屬性。

如果您指定不同的金鑰,則只會顯示符合所有金鑰/值對的資源。如果您為單一索引鍵指定多個值,則會顯示符合該索引鍵任何值的資源。

  • key – 要篩選的標籤或資源屬性。

    對於 key,所有標籤索引鍵都可有效指定。下列 EC2 和 Lambda 資源屬性也適用於 key

    • EC2:

      Architecture, Hypervisor, CoreCount, ImageId, InstanceId, InstanceLifecycle, InstanceType, InstanceFamily, InstanceSize, Affinity, AvailabilityZone, Tenancy, Platform, RootDeviceType SecurityGroups, State, SubnetId, VirtualizationType, and VpcId

    • Lambda:

      FunctionNameRuntimeLanguageMemorySizeVersionSecurityGroupIdsSubnetIdsSubnetIdCountVpcIdTimeout

  • value– (選用) 要篩選的標籤或資源屬性的值。如果省略此選項,則會顯示與該標籤或資源屬性所有值對應的指標。

類型:物件

必要:是

指標

指定要包含一或多個指標的metrics陣列。一個metrics陣列可以包含 1–100 個指標。陣列中的每個物件必須包含下列欄位。

  • metricName – 指標的名稱。

  • resourceType – 發佈指標的資源類型,以 使用的格式描述 AWS CloudFormation。例如 AWS::EC2::InstanceAWS::Lambda::Function

    對於小工具中的所有resourceType指標,您必須使用相同的 值。

    如需有效值的完整清單,請參閱 Metric Explorer Widget 物件的有效 resourceType 值

  • stat – 此指標的統計資料,如果與陣列中其他指標所使用的統計資料不同。根據預設,如果您未在陣列或指標層級指定統計資料,CloudWatch 會使用平均

    有效值:SampleCount | Average | Sum | Minimum | Maximum | p??

類型: 物件陣列

必要:是

period

此小工具中所有指標的預設期間,以秒為單位。期間是圖形上一個資料點所表示的時間長度。預設值為 300。

有效值:60 的任何倍數,最小值為 60。

類型:整數

必要:否

splitBy

指定如何將指標從多個資源分割成圖形上的不同行,或分割成不同的圖形。有效值是標籤的索引鍵,以及資源屬性的索引鍵。

類型:字串

必要:否

標題

要為小工具顯示的標題。預設值為 Explorer

類型:字串

必要:否

widgetOptions

指定小工具在儀表板上顯示方式的物件。它可以包含下列欄位。

  • 圖例

    決定每個圖形的圖例顯示位置。legend 欄位包含另一個名為 的欄位position。的可能值positionrightbottomhidden

    例如,以下會導致圖例出現在圖形的右側。

    "legend": { "position": "right" }
  • rowsPerPage

    指定小工具中每個頁面顯示的圖形列數。

  • 堆疊

    指定 true將圖形顯示為堆疊區域圖表,或false指定 顯示為單獨的行。

  • 檢視

    指定每個圖形的顯示方式。指定 timeSeries將此指標顯示為折線圖。指定 將其bar顯示為長條圖。指定 將其pie顯示為圓餅圖。預設值為 timeSeries

  • widgetsPerRow

    指定指標瀏覽器小工具的每一列中顯示多少圖表。

類型:物件

必要:否

範例

下列範例顯示每個帳戶執行中 EC2 執行個體的三個指標,小工具中的圖形會依可用區域分割。在每個圖形中,指標會依執行個體類型彙總。

{ "widgets": [ { "type": "explorer", "width": 24, "height": 15, "x": 0, "y": 0, "properties": { "metrics": [ { "metricName": "CPUUtilization", "resourceType": "AWS::EC2::Instance", "stat": "Average" }, { "metricName": "NetworkIn", "resourceType": "AWS::EC2::Instance", "stat": "Average" }, { "metricName": "NetworkOut", "resourceType": "AWS::EC2::Instance", "stat": "Average" } ], "aggregateBy": { "key": "InstanceType", "func": "MAX" }, "labels": [ { "key": "State", "value": "running" } ], "widgetOptions": { "legend": { "position": "bottom" }, "view": "timeSeries", "rowsPerPage": 8, "widgetsPerRow": 2 }, "period": 300, "splitBy": "AvailabilityZone", "title": "Running EC2 Instances by AZ" } } ] }

Metric Explorer Widget 物件的有效 resourceType 值

指標瀏覽器小工具 metrics區段中 resourceType 欄位的有效值如下:

  • AWS::AmazonMQ::Broker

  • AWS::ApiGateway::RestApi

  • AWS::AppStream::Fleet

  • AWS::AppSync::GraphQLApi

  • AWS::CloudFront::Distribution

  • AWS::CodeBuild::Project

  • AWS::Datasync::Agent

  • AWS::Datasync::Task

  • AWS::DMS::ReplicationInstance

  • AWS::DynamoDB::Table

  • AWS::EC2::CapacityReservation

  • AWS::EC2::Instance

  • AWS::EC2::NatGateway

  • AWS::EC2::TransitGateway

  • AWS::EC2::Volume

  • AWS::EC2::VPNConnection

  • AWS::ECS::Cluster

  • AWS::EFS::FileSystem

  • AWS::ElastiCache::CacheCluster

  • AWS::ElastiCache::ReplicationGroup

  • AWS::ElasticBeanstalk::Environment

  • AWS::ElasticLoadBalancing::LoadBalancer

  • AWS::ElasticLoadBalancingV2::LoadBalancer/ApplicationELB

  • AWS::ElasticLoadBalancingV2::LoadBalancer/GatewayELB

  • AWS::ElasticLoadBalancingV2::LoadBalancer/NetworkELB

  • AWS::ElasticLoadBalancingV2::TargetGroup

  • AWS::EMR::Cluster

  • AWS::Events::Rule

  • AWS::FSx::FileSystem

  • AWS::GameLift::Fleet

  • AWS::GlobalAccelerator::Accelerator

  • AWS::IoT::TopicRule

  • AWS::IoT1Click::Device

  • AWS::IoTAnalytics::Channel

  • AWS::IoTAnalytics::Dataset

  • AWS::IoTAnalytics::Datastore

  • AWS::IoTAnalytics::Pipeline

  • AWS::Kafka::Cluster

  • AWS::Kinesis::Stream

  • AWS::KinesisAnalytics::Application

  • AWS::KinesisFirehose::DeliveryStream

  • AWS::KinesisVideo::Stream

  • AWS::KMS::Key

  • AWS::Lambda::Function

  • AWS::Logs::LogGroup

  • AWS::MediaPackage::Channel

  • AWS::MediaStore::Container

  • AWS::OpsWorks::Instance

  • AWS::OpsWorks::Layer

  • AWS::OpsWorks::Stack

  • AWS::QLDB::Ledger

  • AWS::RDS::DBInstance

  • AWS::Redshift::Cluster

  • AWS::RoboMaker::SimulationJob

  • AWS::Route53::HealthCheck

  • AWS::Route53Resolver::ResolverEndpoint

  • AWS::S3::Bucket

  • AWS::SageMaker::Endpoint

  • AWS::ServiceCatalog::CloudFormationProduct

  • AWS::SES::ConfigurationSet

  • AWS::SNS::Topic

  • AWS::SQS::Queue

  • AWS::StepFunctions::Activity

  • AWS::StepFunctions::StateMachine

  • AWS::StorageGateway::Gateway

  • AWS::Synthetics::Canary

  • AWS::Transfer::Server

  • AWS::WorkMail::Organization

  • AWS::WorkSpaces::Workspace

警示狀態小工具物件的屬性

類型的小工具在 中alarm可以有下列欄位properties

警示

要包含在小工具中的警示 ARNs 陣列。陣列可以有 1-100 ARNs。

類型:字串陣列

必要:是 (小工具type為 時alarm)。

sortBy

指定如何排序小工具中的警示。

選擇default依警示名稱的字母順序排序。

選擇依警示狀態先排序,且警示先處於 ALARM 狀態,接著stateUpdatedTimestamp為 INSUFFICIENT_DATA 警示,最後為 OK 警示。在每個群組中,警示會依上次變更狀態時排序,並會先列出較新的狀態變更。

無論目前的警示狀態為何,選擇依警示最近變更狀態的時間timestamp排序。首先列出最近變更狀態的警示。

如果您省略此欄位,警示會依字母順序排序。

類型:字串

有效值:預設 | stateUpdatedTimestamp | 時間戳記

必要:否

states

使用此欄位將小工具中顯示的警示清單篩選為目前處於指定狀態的警示。您可以在此欄位的值中指定一或多個警示狀態。您可以指定的警示狀態為 ALARMINSUFFICIENT_DATAOK

如果您省略此欄位或指定空陣列,alarms則會顯示指定的所有警示。

類型:字串陣列

必要:否

標題

要由小工具顯示的標題文字。

類型:字串

必要:否

下列範例是警示狀態小工具,會顯示名稱指定的四個警示,無論其目前狀態為何:

{ "type": "alarm", "x": 0, "y": 0, "width": 12, "height": 6, "properties": { "alarms": [ "arn:aws:cloudwatch:us-east-1:012345678901:alarm:EC2FrontendCPU", "arn:aws:cloudwatch:us-east-1:012345678901:alarm:EC2BackendCPU", "arn:aws:cloudwatch:eu-west-1:987654321098:alarm:EC2FrontendCPU", "arn:aws:cloudwatch:eu-west-1:987654321098:alarm:EC2BackendCPU" ], "sortBy": "stateUpdatedTimestamp", "title": "All EC2 CPU alarms" } }

下列範例小工具會指定相同的四個警示,但小工具只會顯示目前處於 ALARM 或 INSUFFICIENT_DATA 狀態的警示:

{ "type": "alarm", "x": 0, "y": 0, "width": 12, "height": 6, "properties": { "alarms": [ "arn:aws:cloudwatch:us-east-1:012345678901:alarm:EC2FrontendCPU", "arn:aws:cloudwatch:us-east-1:012345678901:alarm:EC2BackendCPU", "arn:aws:cloudwatch:eu-west-1:987654321098:alarm:EC2FrontendCPU", "arn:aws:cloudwatch:eu-west-1:987654321098:alarm:EC2BackendCPU" ], "sortBy": "stateUpdatedTimestamp", "states": [ "ALARM", "INSUFFICIENT_DATA" ], "title": "EC2 alarms that are not currently OK" } }