2014-10-28 3 views
0

ребята, я пытаюсь использовать solrj в Java. Сначала мне нужно запустить объект HttpSolrServer.Файл журнала в Solr

Когда я бегу:

//This variable stores the default url of the solr sever 
protected static final String DEFAULT_URL = "http://localhost:8083/solr"; 
//This is a static instance of solr sever. 
protected static HttpSolrServer solrServer = null; 
//This keeps the log 
private static Logger log = Logger.getLogger(SolrService.class); 

//Create a solrServer instance. The connection time out is set to be 5000 ms. 
static { 
    solrServer = new HttpSolrServer(DEFAULT_URL); 
    solrServer.setConnectionTimeout(5000); 
} 

Это дает:

log4j:ERROR setFile(null,true) call failed. 
java.io.FileNotFoundException: /logs/log (No such file or directory) 
at java.io.FileOutputStream.open(Native Method) 
at java.io.FileOutputStream.<init>(FileOutputStream.java:206) 
at java.io.FileOutputStream.<init>(FileOutputStream.java:127) 
at org.apache.log4j.FileAppender.setFile(FileAppender.java:289) 
at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:163) 
at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:215) 
at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256) 
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132) 
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96) 
at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654) 
at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612) 
at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:509) 
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:415) 
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:441) 
at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:470) 
at org.apache.log4j.LogManager.<clinit>(LogManager.java:122) 
at org.apache.log4j.Logger.getLogger(Logger.java:117) 
at com.pressure.meta.search.SolrService.<clinit>(SolrService.java:23) 
at com.pressure.test.search.SolrServiceTest.testBuildIndex(SolrServiceTest.java:36) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:483) 
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) 
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) 
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) 
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) 
at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49) 
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) 
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) 
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) 
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) 
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) 
at org.junit.runners.ParentRunner.run(ParentRunner.java:236) 
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) 
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
log4j:ERROR Either File or DatePattern options are not set for appender [stdout]. 

Ну я совершенно не имею понятия, где "журналы/Log". Не могли бы вы мне помочь? Огромное спасибо.

ответ

1

Это не имеет ничего общего с Solr, это просто конфигурация Log4J. Вы должны указать файл log4j.xml или log4j.properties в каталоге Solr (возможно, в каталоге ресурсов), который позволит вам обновить соответствующее местоположение, чтобы сохранить ваши файлы журналов. Вы можете увидеть примеры настройки файла XML и свойств на Log4jXmlFormat wiki page.

+0

Спасибо человеку. Я просто решил это. – penpen926

Смежные вопросы