

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

# 您可以傳送到 CloudWatch 的自訂指標和延伸指標
<a name="CloudWatch-RUM-custom-and-extended-metrics"></a>

依預設，RUM 應用程式監視器會將指標傳送至 CloudWatch。這些預設指標和維度會列於[您可以使用 CloudWatch RUM 收集的 CloudWatch 指標](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-metrics.html)當中。

您也可以設定應用程式監視器來匯出指標。應用程式監視器可以傳送延伸指標、自訂指標或同時傳送兩者。它可以將它們傳送到 CloudWatch。
+ **自訂指標** — 自訂指標是您定義的指標。透過自訂指標，您可以使用任何指標名稱和命名空間。若要衍生指標，您可以使用任何自訂事件、內建事件、自訂屬性或預設屬性。

  您可以將自訂指標傳送至 CloudWatch。
+ **延伸指標** - 您可以將任何預設 CloudWatch RUM 指標以額外的維度傳送至 CloudWatch。如此一來，這些指標就能提供您更精細的檢視。

**Topics**
+ [

## 自訂指標
](#CloudWatch-RUM-custom-metrics)
+ [

## 延伸指標
](#CloudWatch-RUM-vended-metrics)

## 自訂指標
<a name="CloudWatch-RUM-custom-metrics"></a>

若要傳送自訂指標，您必須使用 AWS APIs或 ， AWS CLI 而非 主控台。如需使用 AWS APIs的詳細資訊，請參閱 [PutRumMetricsDestination](https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_PutRumMetricsDestination.html) 和 [BatchCreateRumMetricDefinitions](https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_BatchCreateRumMetricDefinitions.html)。

一個目的地可包含的延伸指標和自訂指標定義數量上限為 2000 個。對於您傳送至每個目的地的每個自訂指標和延伸指標，每個維度名稱和維度值的組合都會計入此限制。您不需要為衍生自 CloudWatch RUM 任何類型事件或屬性的自訂指標付費。

下列範例顯示如何建立從自訂事件衍生的自訂指標。以下是使用的自訂事件範例：

```
cwr('recordEvent', {
    type: 'my_custom_event', 
    data: {
        location: 'IAD', 
        current_url: 'amazonaws.com', 
        user_interaction: {
            interaction_1 : "click",
            interaction_2 : "scroll"
        }, 
        visit_count:10
    }
})
```

如果是此自訂事件，您可以建立自訂指標來計算透過 Chrome 瀏覽器造訪 `amazonaws.com` URL 的次數。在 `RUM/CustomMetrics/PageVisits` 命名空間中，下列定義會在您的帳戶中建立名為 `AmazonVisitsCount` 的指標。

```
{
    "AppMonitorName":"customer-appMonitor-name",
    "Destination":"CloudWatch",
    "MetricDefinitions":[
        {
            "Name":"AmazonVisitsCount",
            "Namespace":"PageVisit",
            "ValueKey":"event_details.visit_count",
            "UnitLabel":"Count",
            "DimensionKeys":{
                "event_details.current_url": "URL"
            },
            "EventPattern":"{\"metadata\":{\"browserName\":[\"Chrome\"]},\"event_type\":[\"my_custom_event\"],\"event_details\": {\"current_url\": [\"amazonaws.com\"]}}" 
        }
    ]
}
```

## 延伸指標
<a name="CloudWatch-RUM-vended-metrics"></a>

如果您設定延伸指標，則可以使用其他維度將任何預設 CloudWatch RUM 指標傳送至 CloudWatch，以便指標為您提供更精細的檢視。

如需有關預設 CloudWatch RUM 指標的詳細資訊，請參閱「[您可以使用 CloudWatch RUM 收集的 CloudWatch 指標](CloudWatch-RUM-metrics.md)」。

一個目的地可包含的延伸指標和自訂指標定義數量上限為 2000 個。對於您傳送至每個目的地的每個延伸或自訂指標，每個維度名稱和維度值的組合都會計為此限制的延伸指標。

將延伸指標傳送至 CloudWatch 後，就可以使用 CloudWatch RUM 主控台在這些指標上建立 CloudWatch 警示。

您不需要為針對 CloudWatch RUM 預設指標建立的延伸指標付費。

### Web 應用程式延伸指標
<a name="CloudWatch-RUM-web-extended-metrics"></a>

Web 應用程式延伸指標支援下列維度：
+ `BrowserName`

  維度值範例：`Chrome`、`Firefox`、`Chrome Headless`
+ `CountryCode` 此維度會使用 ISO-3166 格式 (兩個字母的代碼)。

  維度值範例：`US`、`JP`、`DE`
+ `DeviceType`

  維度值範例：`desktop`、`mobile`、`tablet`、`embedded`
+ `FileType`

  維度值範例：`Image`、`Stylesheet`
+ `OSName`

  維度值範例：`Linux`、`Windows`、`iOS`、`Android`
+ `PageId`

### 行動應用程式延伸指標
<a name="CloudWatch-RUM-mobile-extended-metrics"></a>

行動應用程式延伸指標支援下列維度：
+ `ScreenName`
  + `attributes.screen.name` 來自您應用程式的螢幕名稱屬性 - 的值
  + 範例值：HomeScreen、 SettingsView、ProfilePage
+ `DeviceModel`
  + 裝置模型屬性的值 - `resource.attributes.device.model.name`
  + 範例值：iPhone14，3、SM-G998B
+ `OSVersion`
  + 作業系統版本屬性的值 - `resource.attributes.os.version`
  + 範例值：16.0、13.0

**注意**  
目前支援行動應用程式的預設指標：`ScreenLoadTime`、`ScreenLoadCount`、`NetworkLatency`、`Http4xxCount``Http5xxCount`、`CrashCount`、`ANRCount`、、`AppHangCount`、`ColdLaunchTime`、`WarmLaunchTime`、 `SessionCount``SpanPayloadSize`和 `LogPayloadSize`。

### 使用主控台設定延伸指標
<a name="CloudWatch-RUM-extended-metrics-console"></a>

若要使用主控台將延伸指標傳送至 CloudWatch，請遵循下列步驟。

如需使用 AWS APIs 將延伸指標傳送至 CloudWatch 的資訊，請參閱 [PutRumMetricsDestination](https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_PutRumMetricsDestination.html) 和 [BatchCreateRumMetricDefinitions](https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_BatchCreateRumMetricDefinitions.html)。

**使用主控台設定應用程式監視器，並將 RUM 延伸指標傳送至 CloudWatch**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格中，依次選擇 **Application Signals**、**RUM**。

1. 選擇要傳送指標之應用程式監視器的名稱。

1. 選擇 **Configuration** (組態) 索引標籤，然後選擇 **RUM extended metrics** (RUM 延伸指標)。

1. 選擇 **Send metrics** (傳送指標)。

1. 選取要與其他維度一起傳送的一或多個指標名稱。

1. 選取一或多個要作為這些指標之維度的因素。作出選擇後，您選擇建立的延伸指標數量會顯示在 **Number of extended metrics** (延伸指標的數量) 中。

   此數字的計算方式是將選擇的指標名稱數目乘以您建立的不同維度數量。

   1. 若要傳送以頁面 ID 作為維度的指標，請選擇 **Browse for page ID** (瀏覽頁面 ID)，然後選取要使用的頁面 ID。

   1. 若要傳送以裝置類型作為維度的指標，請選擇 **Desktop devices** (桌面裝置) 或 **Mobile and tablets** (行動裝置和平板電腦)。

   1. 若要傳送以作業系統作為維度的指標，請在 **Operating system** (作業系統) 下選取一或多個作業系統。

   1. 若要傳送以瀏覽器類型作為維度的指標，請在 **Browsers** (瀏覽器) 下選取一或多個瀏覽器。

   1. 若要傳送以地理位置作為維度的指標，請在 **Locations** (位置) 下選取一或多個位置。

      只有此應用程式監視器已回報指標的位置才會顯示在清單中供您選擇。

1. 完成選擇後，選擇 **Send metrics** (傳送指標)。

1. (選用) 在 **Extended metrics** (延伸指標) 清單中，若要建立監看其中一個指標的警示，請在該指標列中選擇 **Create alarm** (建立警示)。

   如需有關 CloudWatch 警示的一般資訊，請參閱[使用 Amazon CloudWatch 警示](CloudWatch_Alarms.md)。如需在 CloudWatch RUM 延伸指標上設定警示的教學課程，請參閱[教學課程：建立延伸指標並設定其警示](#CloudWatch-RUM-extended-metrics-alarmtutorial)。

**停止傳送延伸指標**

**使用主控台停止傳送延伸指標**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格中，依次選擇 **Application Signals**、**RUM**。

1. 選擇要傳送指標之應用程式監視器的名稱。

1. 選擇 **Configuration** (組態) 索引標籤，然後選擇 **RUM extended metrics** (RUM 延伸指標)。

1. 選取要停止傳送的一或多個指標名稱和維度組合。接著選擇 **Actions** (動作)，**Delete** (刪除)。

### 教學課程：建立延伸指標並設定其警示
<a name="CloudWatch-RUM-extended-metrics-alarmtutorial"></a>

本教學課程示範如何設定要傳送至 CloudWatch 的延伸指標，以及如何設定該指標的警示。在本教學課程中，您將建立一個指標來追蹤 Chrome 瀏覽器上的 JavaScript 錯誤。

**設定此延伸指標並設定其警示**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格中，依次選擇 **Application Signals**、**RUM**。

1. 選擇要傳送指標之應用程式監視器的名稱。

1. 選擇 **Configuration** (組態) 索引標籤，然後選擇 **RUM extended metrics** (RUM 延伸指標)。

1. 選擇 **Send metrics** (傳送指標)。

1. 選取 **JSErrorCount**。

1. 在 **Browsers** (瀏覽器) 下，選取 **Chrome**。

   這種 **JSerrorCount** 和 **Chrome** 的組合會將一個延伸指標傳送到 CloudWatch。此指標只會計算使用 Chrome 瀏覽器的使用者工作階段 JavaScript 錯誤。此指標名稱是 **JSerrorCount**，維度名稱是 **Browser**。

1. 選擇 **Send metrics** (傳送指標)。

1. 在 **Extended metrics** (延伸指標) 清單中，在 **Name** (名稱) 下顯示 **JSerrorCount** 和在 **BrowserName** 下顯示 **Chrome** 中的列中選擇 **Create alarm** (建立警示)。

1. 在 **Specify metric and conditions** (指定指標和條件) 下，確認 **Metric name** (指標名稱) 和 **BrowserName** (瀏覽器名稱) 欄位已預先填入正確的值。

1. 在 **Statistic** (統計資料) 中，選取您要用於警示的統計資料。對於這種類型的計數指標，**Average** (平均值) 是一個不錯的選擇。

1. 在 **Period** (期間) 中，選取 **5 minutes** (5 分鐘)。

1. 在 **Conditions** (條件) 下，執行下列動作：
   + 選擇 **Static** (靜態)。
   + 選擇 **Greater** (大)，指定當錯誤數量大於您要指定的閾值時，警示應進入 ALARM 狀態。
   + 在 **than...** (於…) 下方，輸入警示閾值的數字。如果 5 分鐘的期間內錯誤數量超過此數量時，警示會進入 ALARM 狀態。

1. (選用) 依預設，一旦 5 分鐘期間內的錯誤數量超過您設定的閾值數量，警示就會進入 ALARM 狀態。您也可以選擇將此設定變更為只有在連續多個 5 分鐘期間內超過此數字時，警示才進入 ALARM 狀態。

   若要這麼做，請選擇 **Additional configuration** (其他組態)，然後在 **Datapoints to alarm** (要警示的資料點) 中，指定在連續多少個 5 分鐘期間內錯誤次數超過閾值才會觸發警示。例如，您可以選取 2 個 (共 2 個)，只有在連續兩個 5 分鐘期間內超過閾值時才觸發警示；如果選取 2個 (共 3 個)，只有連續三個 5 分鐘期間內任何兩個期間內超過閾值，才會觸發警示。

   如需有關此類型警示評估的詳細資訊，請參閱[警示評估](alarm-evaluation.md)。

1. 選擇**下一步**。

1. 在 **Configure actions** (設定動作) 中，指定警示進入 ALARM 狀態時應採取的動作。若要使用 Amazon SNS 接收通知，請執行以下操作：
   + 選擇 **Add notification** (新增通知)。
   + 選擇**警示中**。
   + 選取現有的 SNS 主題，或建立新主題。如果您建立新主題，請為其指定名稱，並至少向其新增一個電子郵件地址。

1. 選擇**下一步**。

1. 輸入名稱和選用的警示描述，然後選擇 **Next** (下一步)。

1. 檢閱詳細資訊，並選擇 **Create alarm** (建立警示)。