このトピックでは、データ変換中のデータプルエラーの原因とそれに対応する解決策について説明します。

変換ルールに ApsaraDB for RDS やその他の Logstore などの外部リソースからのデータプルが含まれる場合、データプルまたは更新エラーが発生する可能性があります。

エラーの影響
  • 外部リソースのデータのプルまたは更新に失敗した場合、対応するデータ変換タスクは、リトライが成功するか手動で停止されるまで、データのプルを再試行します。 再試行の成功後、データ変換タスクが続きます。
  • データ変換タスクはブレークポイントを保存し、データのプルを再試行します。 データの損失や重複を避けるために、再試行の成功後、データプルはブレークポイントから再開されます。

エラーの影響

  • 外部リソースのデータのプルまたは更新に失敗した場合、対応するデータ変換タスクは、リトライが成功するか手動で停止されるまで、データのプルを再試行します。 再試行の成功後、データ変換タスクが続きます。
  • データ変換タスクはブレークポイントを保存し、データのプルを再試行します。 データの損失や重複を避けるために、再試行の成功後、データプルはブレークポイントから再開されます。

エラーの処理

エラー処理の詳細については、「res_log_logstore_pull」、「res_rds_mysql」、および「res_oss_file」をご参照ください。

解決方法

次の例は、コンソールでのリソース関数の誤った使用によって発生したエラーを修正する方法を示しています。
  • 変換ルール
    res_log_logstore_pull(endpoint="cn-shenzhen.log.aliyuncs.com",ak_id="xxx",
            ak_secret="xxx",project="etl-test-shenzhen",
            fields=["__source__"]),field="processid",output_fields=["xx"]
    res_rds_mysql(address="xx",username="xx",password="xx",database="xx")
    res_oss_file(endpoint='xx',ak_id="xx",ak_key="xx",bucket='xx', file='xx',format='xx',change_detect_interval=0)
  • エラーメッセージ
    aliyun.log.logexception.LogException: {"errorCode": "InvalidEtlConfig", "errorMessage": "ETL config doesn't pass security check, detail: invalid type detected: <class '_ast.Expr'>", "requestId": ""}
  • 原因

    このエラーは、構文が正しくないために発生します。 res_log_logstore_pullres_rds_mysql、または res_oss_file 関数をコンソールで単独で使用した場合、このエラーが発生する可能性があります。

  • 解決策

    リソース関数を e_table_map または e_search_table_map 関数と一緒に使用します。

参照