tree b5e88b176a5e8660faa6add3a60d9998896db2f3
parent 67ae23934b56761617c2fb217ae6cf6f2d8f619b
author Gengliang Wang <gengliang@apache.org> 1715134227 -0700
committer Gengliang Wang <gengliang@apache.org> 1715134227 -0700

[SPARK-48126][CORE] Make `spark.log.structuredLogging.enabled` effective

### What changes were proposed in this pull request?

Currently, the spark conf `spark.log.structuredLogging.enabled` is not taking effect. The current code base checks this config in the method `prepareSubmitEnvironment`. However, Log4j is already initialized before that.

This PR is to fix it by checking the config `spark.log.structuredLogging.enabled` before the initialization of Log4j.
Also, this PR enhances the doc for this configuration.

### Why are the changes needed?

Bug fix. After the fix, the Spark conf `spark.log.structuredLogging.enabled` takes effect.

### Does this PR introduce _any_ user-facing change?

No

### How was this patch tested?

Manual test.

### Was this patch authored or co-authored using generative AI tooling?

Generated-by: GPT-4
I used GPT-4 to improve the documents.

Closes #46452 from gengliangwang/makeConfEffective.

Authored-by: Gengliang Wang <gengliang@apache.org>
Signed-off-by: Gengliang Wang <gengliang@apache.org>
