2016-12-01 179 views
3

早安,大家好,錯誤無法找到插件類型[爲RollingFile和TimeBasedTriggeringPolicy]

我開始工作的碼頭工人elasticsearch 5.0.1實例在以下詳細的官方說明:

https://www.elastic.co/guide/en/elasticsearch/reference/5.0/settings.html

爲了配置elasticsearch.yml和log4j2.properties文件

,這些文件位於:

$ pwd 
/system/mesos/elasticsearchf/config 
$ ls 
elasticsearch.yml log4j2.properties 

包含這些配置文件:

$cat elasticsearch.yml 
path: 
data: /usr/share/elasticsearch/data 
logs: /usr/share/elasticsearch/data 
shared_data: /usr/share/elasticsearch/data 
config: /usr/share/elasticsearch/config 

node.add_lock_id_to_custom_path: false 
index.number_of_shards: 2 
cluster.name: elasticcluster 
discovery.zen.ping.unicast.hosts: ["10.120.1.190", "10.120.1.191"] 

$cat log4j2.properties 
appender.rolling.type = RollingFile 
appender.rolling.name = rolling 
appender.rolling.fileName = ${sys:es.logs}.log 
appender.rolling.layout.type = PatternLayout 
appender.rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %.10000m%n 
appender.rolling.filePattern = ${sys:es.logs}-%d{yyyy-MM-dd}.log 
appender.rolling.policies.type = Policies 
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy 
appender.rolling.policies.time.interval = 1 
appender.rolling.policies.time.modulate = true 

當我運行命令:

$ docker -D -H unix:///var/run/docker.sock run --cpu-shares 1024 --memory 2634022912 -e ES_JAVA_OPTS="-Xms2G -Xmx2G" -v /system/mesos/elasticsearchf/data:/usr/share/elasticsearch/data/:rw -v /system/mesos/elasticsearchf/config:/usr/share/elasticsearch/config/:rw --net bridge -p 9200:9200/tcp -p 9300:9300/tcp docker.elastic.co/elasticsearch/elasticsearch:5.0.1 

我得到log4j2消息相關的錯誤信息,你可以看到下面

任何幫助將受到歡迎

親切的問候

DEBU[0001] framesize: 81 
2016-12-01 10:37:15,526 main ERROR Unable to locate plugin type for RollingFile 
DEBU[0001] framesize: 90 
2016-12-01 10:37:15,554 main ERROR Unable to locate plugin for TimeBasedTriggeringPolicy 
DEBU[0001] framesize: 2223 
2016-12-01 10:37:15,555 main ERROR Unable to invoke factory method in class class org.apache.logging.log4j.core.appender.rolling.CompositeTriggeringPolicy for element Policies. java.lang.NullPointerException 
     at org.apache.logging.log4j.core.config.plugins.visitors.PluginElementVisitor.visit(PluginElementVisitor.java:52) 
     at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.generateParameters(PluginBuilder.java:243) 
     at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:131) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:918) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:858) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:850) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:850) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:479) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:219) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:231) 
     at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:496) 
     at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:249) 
     at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:116) 
     at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:83) 
     at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:249) 
     at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:112) 
     at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:103) 
     at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) 
     at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:96) 
     at org.elasticsearch.cli.Command.main(Command.java:62) 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:80) 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:73) 

DEBU[0001] framesize: 76 
2016-12-01 10:37:15,557 main ERROR Unable to locate plugin for RollingFile 
DEBU[0001] framesize: 1974 
2016-12-01 10:37:15,558 main ERROR Unable to invoke factory method in class class org.apache.logging.log4j.core.config.AppendersPlugin for element Appenders. java.lang.NullPointerException 
     at org.apache.logging.log4j.core.config.plugins.visitors.PluginElementVisitor.visit(PluginElementVisitor.java:52) 
     at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.generateParameters(PluginBuilder.java:243) 
     at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:131) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:918) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:858) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:479) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:219) 
     at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:231) 
     at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:496) 
     at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:249) 
     at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:116) 
     at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:83) 
     at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:249) 
     at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:112) 
     at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:103) 
     at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) 
     at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:96) 
     at org.elasticsearch.cli.Command.main(Command.java:62) 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:80) 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:73) 

DEBU[0002] Corrupted prefix: [] 
DEBU[0002] [hijack] End of stdout 
+0

我得到了同樣的錯誤,我不明白這是爲什麼。 – banuj

回答

5

當我嘗試在Docker上運行Elasticsearch 5.3時遇到了完全相同的錯誤,並且我使用了與Elasticsearch日誌記錄配置部分中提到的類似的屬性。 我花了一段時間才弄清楚爲什麼我得到這個錯誤。這是因爲在定義類型屬性時在行尾有空格。行尾應該沒有空格。

appender.rolling.type = RollingFile 
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy 

一旦你刪除空格(在這個問題上面提到的配置)您Elasticsearch上來了,但你仍然會得到任何日誌,因爲它覆蓋的默認設置顯示在控制檯中的錯誤和滾動的appender也不會添加到根記錄器。 要查看日誌信息被產生,你需要以下的兩行添加到您的log4j2.properties以及

rootLogger.level = info 
rootLogger.appenderRef.rolling.ref = rolling 
相關問題