配置 Spark 記載層次資訊

檢閱執行的應用程式,並使用 IBM Analytics Engine Spark 應用程式產生的日誌來識別存在的問題。 可用的標準記載層次為 ALL、TRACE、DEBUG、INFO、WARN、ERROR、FATAL 及 OFF。 依預設,Analytics Engine Spark 應用程式會以 WARN 記載層次記載 Spark 驅動程式,並以 OFF 記載 Spark 執行程式。 您可以配置記載層次,以顯示相關且較少的詳細訊息。

IBM Analytics Engine 記載配置會配置 Spark 架構的記載層次資訊。 它不會影響使用者程式碼在 Spark 應用程式中使用指令 (例如 'logger.info()'、'logger.warn()'、'print () '、or'show ()') 寫入的日誌。

配置選項

配置下列 IBM Analytics Engine 日誌,以設定 Spark 應用程式記載層次:

  • Spark 驅動程式日誌 (使用 ae.spark.driver.log.level)
  • Spark 執行程式日誌 (使用 ae.spark.executor.log.level)

在佈建 IBM Analytics Engine 實例或提交 Spark 應用程式時,請在 Spark 配置區段中指定選項。 您可以指定下列標準記載層次值:

  • 全部
  • TRACE
  • DEBUG
  • 資訊
  • WARN
  • 錯誤
  • FATAL
  • 關閉

驅動程式記載層次的預設值是 WARN,執行程式記載層次是 OFF

您可以使用下列兩種方式來套用配置:

  • 實例層次配置
  • 應用程式層次配置

在實例層次配置 Spark 記載層次資訊

在佈建 IBM Analytics Engine 實例時,請在 default_config 屬性下指定記載層次配置。 如需相關資訊,請參閱 預設 Spark 配置

範例:


    "default_config": {
        "ae.spark.driver.log.level": "WARN",
        "ae.spark.executor.log.level": "ERROR"
    }

在應用程式層次配置 Spark 記載層次資訊

提交工作時,請在 conf 下指定有效負載中的選項。 如需相關資訊,請參閱 Spark 應用程式 REST API

範例:


{
     "conf": {
	"ae.spark.driver.log.level":"WARN",
	"ae.spark.executor.log.level":"WARN",
     }
}

使用案例範例

在實例層次設定記載層次 Spark 配置: 使用案例範例會考量您佈建 IBM Analytics Engine 實例並配置記載層次的情況,以便實例中的所有應用程式都記載「錯誤」。

  1. 將下列配置設為預設 Spark 配置:

    • ae.spark.driver.log.level = ERROR
    • ae.spark.executor.log.level = ERROR

    設定預設 Spark 配置之後,提交至實例之所有應用程式的記載層次會設為 ERROR (假設應用程式有效負載在提交期間未指定 Spark 配置)。

在工作層次設定記載層次 Spark 配置: 使用案例範例會考量一個實務範例,其中您有一個應用程式,且記載層次已配置,因此日誌會記載在 INFO 層次。 您可以在有效負載中指定 Spark 配置。 請考量範例有效負載:

{
  "application_details": {
     "application": "cos://<application-bucket-name>.<cos-reference-name>/my_spark_application.py",
     "arguments": ["arg1", "arg2"],
     "conf": {
        "spark.hadoop.fs.cos.<cos-reference-name>.endpoint": "https://s3.direct.us-south.cloud-object-storage.appdomain.cloud",
        "spark.hadoop.fs.cos.<cos-reference-name>.access.key": "<access_key>",
        "spark.hadoop.fs.cos.<cos-reference-name>.secret.key": "<secret_key>",
        "spark.app.name": "MySparkApp",
     "ae.spark.driver.log.level":"INFO",
     "ae.spark.executor.log.level":"INFO",
     }
  }
}

範例使用案例 中,Spark 應用程式會置換在實例層次設定的記載層次 Spark 配置,即 ERROR 至 INFO。