本篇内容主要讲解“怎么解决使用EDAS时遇到的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决使用EDAS时遇到的问题”吧!
我开发使用的IntelliJIdea, 找到当前问题所在是在其tomcat日志文件中发现的,因此若你还没去查看过该日志文件建议去查看。该日志文件路径在: C:\Users\tom\.IntelliJIdea2017.3\system\tomcat\项目名\logs
在使用阿里的EDAS时,开发中启动消费者的web项目无法启动,控制台打印如下信息:
INFO: spas-client-initializer start JM.Log:INFO Init JM logger with Log4jLoggerFactory JM.Log:INFO Log root path: C:\Users\Vchar\logs\ JM.Log:INFO Set pandora log path: C:\Users\Vchar\logs\pandora 2018-07-06 18:21:33,391 com.taobao.tomcat.container.context.pandora.PandoraManager startInternal INFO: Pandora container started. log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. 2018-07-06 18:21:41,283 org.apache.catalina.core.StandardContext startInternal SEVERE: Error listenerStart 2018-07-06 18:21:41,287 org.apache.catalina.core.StandardContext startInternal SEVERE: Context [] startup failed due to previous errors 2018-07-06 18:21:41,436 com.taobao.tomcat.container.context.pandora.PandoraManager getPandoraLocation INFO: found pandora location from system property: D:\devtools\taobao-tomcat-7.0.59\deploy\taobao-hsf.sar 2018-07-06 18:21:41,437 com.taobao.tomcat.container.context.pandora.PandoraManager stopInternal INFO: Stopping pandora container: D:\devtools\taobao-tomcat-7.0.59\deploy\taobao-hsf.sar [EagleEye][INFO] SelfLog async thread is exited [EagleEye][INFO] closed AsyncAppender: AsyncAppender [appender=EagleEyeRollingFileAppender [filePath=C:\Users\Vchar\logs\eagleeye\eagleeye-self.log]] INFO: spas-client-initializer stop 2018-07-06 18:21:41,853 com.taobao.tomcat.container.context.pandora.PandoraManager stopInternal INFO: Pandora container stopped. [2018-07-06 06:21:41,879] Artifact Skyecho-Web-New:war exploded: Error during artifact deployment. See server log for details.
根据提示去查看logs\eagleeye\eagleeye-self.log
日志文件发现里面有如下错误:
[ERROR] failed to add tracing to RxJava. java.lang.NoClassDefFoundError: io/reactivex/functions/Consumer at com.taobao.eagleeye.EagleEye.addRxJavaTracing(EagleEye.java:506) at com.taobao.eagleeye.EagleEye.init(EagleEye.java:585) at com.taobao.eagleeye.EagleEye.init(EagleEye.java:616) at com.taobao.eagleeye.EagleEye.<clinit>(EagleEye.java:529) at com.taobao.eagleeye.EagleEyePandoraService.init(EagleEyePandoraService.java:37) ...... ...... ...... Caused by: com.taobao.pandora.common.exception.PandoraLoaderException: [Module-Loader] eagleeye-core: can not load class {io.reactivex.functions.Consumer} after all phase. ...... ......
但是看了错误提示后一脸懵逼,不晓得如何解决,网上查了很久还是无果。最后又返回阿里官方文档去一个个的查阅,官方文档说tomcat启动失败时,请去查看tomcat的catalina.log
和localhost.log
日志文件,在查阅了日志文档后发现是有同事的service的bean重复注入,导致启动失败,最后解决后项目正常启动。
因此在发现不晓得的错误后,最好去这两个日志文件头去查看一下。因为阿里的这个潘多拉容器会将我们的日志配置文件覆盖掉,同时它们自己也有一个日志配置。因此控制台打印的信息可能不全面。
解决方式一: 如果你使用的是Eclipse; 右键项目>properties>targeted runtimes>去掉 apache tomcat的勾
解决方式二: 由于本地启动了多个项目,导致容器在进行临时文件同步时发生错误,解决办法:在tomcat的启动参数上加上 -Dcom.taobao.pandora.tmp_path=D:\logs\pandoralog\coustomer-log
后面那个是你自己定义的一个路径。
检查12200端口是否有冲突,一般 Server Bind 失败会造成启动失败。 多网卡且存在外网 IP 机器,通过-Dhsf.server.ip 来指定本地 IP。
到此,相信大家对“怎么解决使用EDAS时遇到的问题”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。