Vin*_*raj 5 windows logging log4j apache-kafka
我在 Windows 平台上运行 Kafka 版本 2.8.0,该平台又使用 log4J 版本 1.2.17。我面临下面的log4j:ERROR Failed to rename由 Log4j 在 Zookeeper 和 Kafka 服务器上引起的问题。请让我知道如何解决这个问题?
动物园管理员日志:
[ERR] [ZooKeeper] log4j:ERROR Failed to rename [C:\kafka-2.8.0/logs/controller.log] to [C:\kafka-2.8.0/logs/controller.log.2021-07-21-00].
Run Code Online (Sandbox Code Playgroud)
卡夫卡服务器日志:
log4j:ERROR Failed to rename [C:\kafka-2.8.0/logs/controller.log] to [C:\kafka-2.8.0/logs/controller.log.2021-07-21-00].
Run Code Online (Sandbox Code Playgroud)
注意: controller.log 和 server.log 文件经常发生此问题
下面是我当前正在使用的 log4J 属性文件,
log4j.properties 文件:
# Unspecified loggers and loggers with additivity=true output to server.log and stdout
# Note that INFO only applies to unspecified loggers, the log level of the child logger is used otherwise
log4j.rootLogger=INFO, stdout, kafkaAppender
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.kafkaAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.kafkaAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
log4j.appender.kafkaAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.kafkaAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.stateChangeAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.stateChangeAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.stateChangeAppender.File=${kafka.logs.dir}/state-change.log
log4j.appender.stateChangeAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.stateChangeAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.requestAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.requestAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.requestAppender.File=${kafka.logs.dir}/kafka-request.log
log4j.appender.requestAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.requestAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.cleanerAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.cleanerAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.cleanerAppender.File=${kafka.logs.dir}/log-cleaner.log
log4j.appender.cleanerAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.cleanerAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.controllerAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.controllerAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.controllerAppender.File=${kafka.logs.dir}/controller.log
log4j.appender.controllerAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.controllerAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.authorizerAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.authorizerAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.authorizerAppender.File=${kafka.logs.dir}/kafka-authorizer.log
log4j.appender.authorizerAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.authorizerAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
# Change the line below to adjust ZK client logging
log4j.logger.org.apache.zookeeper=INFO
# Change the two lines below to adjust the general broker logging level (output to server.log and stdout)
log4j.logger.kafka=INFO
log4j.logger.org.apache.kafka=INFO
# Change to DEBUG or TRACE to enable request logging
log4j.logger.kafka.request.logger=WARN, requestAppender
log4j.additivity.kafka.request.logger=false
# Uncomment the lines below and change log4j.logger.kafka.network.RequestChannel$ to TRACE for additional output
# related to the handling of requests
#log4j.logger.kafka.network.Processor=TRACE, requestAppender
#log4j.logger.kafka.server.KafkaApis=TRACE, requestAppender
#log4j.additivity.kafka.server.KafkaApis=false
log4j.logger.kafka.network.RequestChannel$=WARN, requestAppender
log4j.additivity.kafka.network.RequestChannel$=false
log4j.logger.kafka.controller=TRACE, controllerAppender
log4j.additivity.kafka.controller=false
log4j.logger.kafka.log.LogCleaner=INFO, cleanerAppender
log4j.additivity.kafka.log.LogCleaner=false
log4j.logger.state.change.logger=INFO, stateChangeAppender
log4j.additivity.state.change.logger=false
# Access denials are logged at INFO level, change to DEBUG to also log allowed accesses
log4j.logger.kafka.authorizer.logger=INFO, authorizerAppender
log4j.additivity.kafka.authorizer.logger=false
Run Code Online (Sandbox Code Playgroud)
正如 @OneCricketeer 建议的那样,您应该将路径从 更改/为\\
在配置文件中使用 2 个反斜杠:
在C:\kafka\config\zookeeper.properties中:
dataDir=c:\\kafka\\zookeeper
Run Code Online (Sandbox Code Playgroud)
并在C:\kafka\config\server.properties中:
log.dirs=c:\\kafka\\kafka-logs
Run Code Online (Sandbox Code Playgroud)
还要转到C:\kafka\config\log4j.properties
无论你在哪里看到这样的东西:
log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
Run Code Online (Sandbox Code Playgroud)
改成这样:
log4j.appender.kafkaAppender.File=${kafka.logs.dir}\\server.log
Run Code Online (Sandbox Code Playgroud)
这些都是您应该更改的地方:
Line 26: log4j.appender.kafkaAppender.File=${kafka.logs.dir}\\server.log
Line 32: log4j.appender.stateChangeAppender.File=${kafka.logs.dir}\\state-change.log
Line 38: log4j.appender.requestAppender.File=${kafka.logs.dir}\\kafka-request.log
Line 44: log4j.appender.cleanerAppender.File=${kafka.logs.dir}\\log-cleaner.log
Line 50: log4j.appender.controllerAppender.File=${kafka.logs.dir}\\controller.log
Line 56: log4j.appender.authorizerAppender.File=${kafka.logs.dir}\\kafka-authorizer.log
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3781 次 |
| 最近记录: |