

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

# Edge Agent for AWS IoT FleetWise 軟體問題
<a name="trouebleshoot-edge-agent"></a>

故障診斷 Edge Agent 軟體問題。

**Topics**
+ [問題：Edge Agent 軟體未啟動。](#troubleshooting-issue1)
+ [問題：【ERROR】 【IoTFleetWiseEngine：：connect】：【無法初始化持續性程式庫】](#troubleshooting-issue2)
+ [問題：Edge Agent 軟體不會收集內建診斷 (OBD) II PIDs和診斷故障碼 DTCs)。](#troubleshooting-issue3)
+ [問題：Edge Agent for AWS IoT FleetWise 軟體無法從網路收集資料，或無法套用資料檢查規則。](#troubleshooting-issue5)
+ [問題：【ERROR】 【AwsIotConnectivityModule：：connect】： 【連線失敗並發生錯誤】 或 【WARN】 【AwsIotChannel：：send】： 【無作用中 MQTT 連線。】](#troubleshooting-issue4)

## 問題：Edge Agent 軟體未啟動。
<a name="troubleshooting-issue1"></a>

當 Edge Agent 軟體未啟動時，您可能會看到下列錯誤。
+ 

  ```
  Error from reader: * Line 1, Column 1
  Syntax error: value, object or array expected.
  ```

  **解決方案：**確定 Edge Agent for AWS IoT FleetWise 軟體組態檔案使用有效的 JSON 格式。例如，確保已正確使用逗號。如需組態檔案的詳細資訊，請執行下列動作來下載 *Edge Agent for AWS IoT FleetWise 軟體開發人員指南*。

  1. <a name="fleetwise-open-console"></a>開啟 [AWS IoT FleetWise 主控台](https://console.aws.amazon.com/iotfleetwise)。

  1. <a name="open-edge-resources"></a>在服務首頁的**開始使用 AWS IoT FleetWise** 區段中，選擇**探索邊緣代理**程式。
+ 

  ```
  [ERROR] [SocketCANBusChannel::connect]: [ SocketCan with name xxx is not accessible]
  [ERROR] [IoTFleetWiseEngine::connect]: [ Failed to Bind Consumers to Producers ]
  ```

  **解決方案：**當 Edge Agent 軟體無法與組態檔案中定義的網路介面建立通訊端通訊時，您可能會看到此錯誤。

  若要檢查組態中定義的每個網路界面是否可用，請執行下列命令。

  ```
  ip link show
  ```

  若要讓網路界面上線，請執行下列命令。將 *network-interface-id* 取代為網路介面的 ID。

  ```
  sudo ip link set network-interface-id up
  ```
+ 

  ```
  [ERROR] [AwsIotConnectivityModule::connect]: [Connection failed with error]
  [WARN] [AwsIotChannel::send]: [No alive MQTT Connection.]
  # or 
  [WARN] [AwsIotChannel::send]: [aws-c-common: AWS_ERROR_FILE_INVALID_PATH]
  ```

  **解決方案：**當 Edge Agent 軟體無法建立 MQTT 連線時，您可能會看到此錯誤 AWS IoT Core。檢查下列項目是否已正確設定，並重新啟動 Edge Agent 軟體。
  + `mqttConnection::endpointUrl` – AWS 帳戶的 IoT 裝置端點。
  + `mqttConnection::clientID` – Edge Agent 軟體執行所在的車輛 ID。
  + `mqttConnection::certificateFilename` – 車輛憑證檔案的路徑。
  + `mqttConnection::privateKeyFilename` – 車輛私有金鑰檔案的路徑。
  + 您已使用 AWS IoT Core 佈建車輛。如需詳細資訊，請參閱[Provision AWS IoT FleetWise 車輛](provision-vehicles.md)。

  如需更多故障診斷資訊，請參閱[適用於 C\$1\$1 的 AWS IoT Device SDK 常見問答集](https://github.com/aws/aws-iot-device-sdk-cpp-v2/blob/main/documents/FAQ.md#frequently-asked-questions)。

## 問題：【ERROR】 【IoTFleetWiseEngine：：connect】：【無法初始化持續性程式庫】
<a name="troubleshooting-issue2"></a>

**解決方案：**當 Edge Agent 軟體找不到持久性儲存體時，您可能會看到此錯誤。檢查下列項目是否已正確設定，並重新啟動 Edge Agent 軟體。

`persistency:persistencyPath` – 用於保留收集方案、解碼器資訊清單和資料快照的本機路徑。

## 問題：Edge Agent 軟體不會收集內建診斷 (OBD) II PIDs和診斷故障碼 DTCs)。
<a name="troubleshooting-issue3"></a>

**解決方案：**如果 `obdInterface:pidRequestIntervalSeconds`或 `obdInterface:dtcRequestIntervalSeconds` 設定為 0，您可能會看到此錯誤。

如果 Edge Agent 軟體在自動傳輸車輛中執行，請確定 `obdInterface:hasTransmissionEcu` 已設定為 `true`。

如果您的車輛支援擴充控制器區域網路 (CAN 匯流排） 仲裁 IDs，請確定 `obdInterface:useExtendedIds` 已設定為 `true`。

## 問題：Edge Agent for AWS IoT FleetWise 軟體無法從網路收集資料，或無法套用資料檢查規則。
<a name="troubleshooting-issue5"></a>

**解決方案：**當違反預設配額時，您可能會看到此錯誤。


| 資源 | 配額 | 可調整 | 注意 | 
| --- | --- | --- | --- | 
| 訊號 ID 的值 | 訊號 ID 必須小於或等於 50，000 | 是 | Edge Agent 軟體不會從 ID 大於 50，000 的訊號收集資料。我們建議您在變更此配額之前，先檢查訊號目錄包含的訊號數量。 | 
| 每輛車的作用中資料收集方案數量 | 256 | 是 | 我們建議您在變更此配額之前，先檢查您在雲端中建立的行銷活動數量，以及每個行銷活動包含的方案數量。 | 
| 訊號歷史記錄緩衝區的大小 | 20 MB | 是 | 如果違反配額，Edge Agent 軟體會停止收集新資料。 | 

## 問題：【ERROR】 【AwsIotConnectivityModule：：connect】： 【連線失敗並發生錯誤】 或 【WARN】 【AwsIotChannel：：send】： 【無作用中 MQTT 連線。】
<a name="troubleshooting-issue4"></a>

**解決方案：**當 Edge Agent 軟體未連線至雲端時，您可能會看到此錯誤。根據預設，Edge Agent 軟體 AWS IoT Core 每分鐘會傳送 ping 請求至 ，並等待三分鐘。如果沒有回應，Edge Agent 軟體會自動重新建立與雲端的連線。