-
Notifications
You must be signed in to change notification settings - Fork 8.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HDFS-15720 namenode audit async logger should add some log4j config #2532
Conversation
@jojochuang @saintstack ping. Thanks for reviewing it. |
I don't know much about log4j. What values make good performance? |
@jojochuang It just provide options to modify log4j configuration when we enable hdfs audit async logger. In most scenarios, those configurations are irrelevant. But in high concurrency scenarios, namenode will generate a lot of audit logs, and a large amount of audit log output will affect the performance of namenode. |
💔 -1 overall
This message was automatically generated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
patch looks good. Please also add the configuration keys and values to hdfs-default.xml. +1 after that.
done @jojochuang |
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
The checks from jenkins has failed, but I can't find any error about the patch. Is it ok to merge? |
@jojochuang Though these checks has failed, Is it ok to merge. thx |
+1 test failures appear unrelated. |
detail
https://issues.apache.org/jira/browse/HDFS-15720
Hadoop project use log4j 1.2.x, we can't config some properties of logger in log4j.properties file , For example, AsyncAppender BufferSize and Blocking see https://logging.apache.org/log4j/1.2/apidocs/index.html.
Namenode should add some audit async logger log4j config In order to facilitate the adjustment of log4j usage and audit log output performance adjustment.
The new configuration is as follows
dfs.namenode.audit.log.async.blocking false
dfs.namenode.audit.log.async.buffer.size 128
test
no test.