2017-06-18 12 views
0

私はここでチュートリアルSpring Eureka Tutorialに従って、基本的なユーレカレジストリジャーアプリケーションを作成しました。次のステップはlog4j2へのロギングを変更することでしたので、ガイドSpring log4j2 guideを使用してローリングファイルを作成することができます。springboot + eureka + log4j2空のログファイル

私が持っている問題は、私がアプリケーションを実行すると、私は何もスローされたエラーが、

  1. ユーレカ・サーバ・ログはまだコンソールに出力されているを持っていないです
  2. カスタムログ出力ファイル「eureka.log」作成されていますが空です。
  3. たとえば、logger.info("Starting Eureka Registry server...");などのカスタムログは、ログファイルやコンソールログには表示されません。彼らはちょうどメモリのどこかに飲み込まれています。

だから、春は私のlog4j2プロパティファイルを拾いますが、それでもユーレカサーバのデフォルトのinbuiltログを使用し、他のものは無視します。

Main.java

@EnableEurekaServer 
@SpringBootApplication 
public class Main { 

public static void main(String[] args) { 
    Logger logger = LogManager.getLogger(Main.class.getSimpleName()); 
    logger.info("Starting Eureka Registry server..."); //Log message disappears 
    logger.info("Starting Eureka Registry server..."); //Log message disappears 
    logger.info("Starting Eureka Registry server..."); //Log message disappears 
    logger.info("Starting Eureka Registry server..."); //Log message disappears 
    SpringApplication.run(Main.class, args);  
} 
} 

のpom.xml

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.5.2.RELEASE</version> 
    <relativePath/> <!-- lookup parent from repository --> 
</parent> 

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <java.version>1.8</java.version> 
</properties> 

<dependencies> 
    <dependency> 
     <groupId>org.springframework.cloud</groupId> 
     <artifactId>spring-cloud-starter-eureka-server</artifactId> 
     <exclusions> 
      <exclusion> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-starter-logging</artifactId> 
      </exclusion> 
     </exclusions> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-log4j2</artifactId> 
    </dependency> 
</dependencies> 

<dependencyManagement> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework.cloud</groupId> 
      <artifactId>spring-cloud-dependencies</artifactId> 
      <version>Camden.SR5</version> 
      <type>pom</type> 
      <scope>import</scope> 
     </dependency> 
    </dependencies> 
</dependencyManagement> 

log4j2.properties端において

status = error 
name = PropertiesConfig 
property.filename = logs 

filters = threshold 

filter.threshold.type = ThresholdFilter 
filter.threshold.level = info 

appenders = rolling 
appender.rolling.type = RollingFile 
appender.rolling.name = RollingFile 
appender.rolling.fileName = ${filename}/eureka.log 
appender.rolling.filePattern = eureka-%d{MM-dd-yy-HH-mm-ss}-%i.log 
appender.rolling.layout.type = PatternLayout 
appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} [%t] - %m%n 
appender.rolling.policies.type = Policies 
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy 
appender.rolling.policies.time.interval = 1 
appender.rolling.policies.time.modulate = true 
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy 
appender.rolling.policies.size.size=10MB 
appender.rolling.strategy.type = DefaultRolloverStrategy 
appender.rolling.strategy.max = 20 

loggers = rolling 

#Make sure to change the package structure as per your application 
logger.rolling.name = com.lab.servers 
logger.rolling.level = debug 
logger.rolling.additivity = false 
logger.rolling.appenderRef.rolling.ref = RollingFile 

、I私は何かが欠けすることができると私は他のソリューションを見てきたが、運と2日後に私が尋ねるために最善を把握疑い空eureka.logファイルを取得し、コンソール・ログ出力がこの

. ____   _   __ _ _ 
/\\/___'_ __ _ _(_)_ __ __ _ \ \ \ \ 
(()\___ | '_ | '_| | '_ \/ _` | \ \ \ \ 
\\/ ___)| |_)| | | | | || (_| | )))) 
    ' |____| .__|_| |_|_| |_\__, |//// 
=========|_|==============|___/=/_/_/_/ 
:: Spring Boot ::  (v1.5.2.RELEASE) 

2017-06-18 16:25:48.349 INFO 2601 --- [   main] c.g.c.s.Main        : No active profile set, falling back to default profiles: default 
2017-06-18 16:25:48.362 INFO 2601 --- [   main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot[email protected]2783717b: startup date [Sun Jun 18 16:25:48 EDT 2017]; parent: org.spring[email protected]5a56cdac 
2017-06-18 16:25:48.812 WARN 2601 --- [   main] o.s.c.a.ConfigurationClassPostProcessor : Cannot enhance @Configuration bean definition 'refreshScope' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'. 
2017-06-18 16:25:48.953 INFO 2601 --- [   main] o.s.c.c.s.GenericScope     : BeanFactory id=7bcf4003-cc89-31c0-9a0e-e63326839222 
2017-06-18 16:25:48.966 INFO 2601 --- [   main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring 
2017-06-18 16:25:49.039 INFO 2601 --- [   main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$25365eb7] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2017-06-18 16:25:49.197 INFO 2601 --- [   main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8761 (http) 
. 
. 
. 
2017-06-18 16:25:51.733 INFO 2601 --- [  Thread-11] o.s.c.n.e.s.EurekaServerBootstrap  : isAws returned false 
2017-06-18 16:25:51.734 INFO 2601 --- [  Thread-11] o.s.c.n.e.s.EurekaServerBootstrap  : Initialized server context 
2017-06-18 16:25:51.734 INFO 2601 --- [  Thread-11] c.n.e.r.PeerAwareInstanceRegistryImpl : Got 1 instances from neighboring DS node 
2017-06-18 16:25:51.734 INFO 2601 --- [  Thread-11] c.n.e.r.PeerAwareInstanceRegistryImpl : Renew threshold is: 1 
2017-06-18 16:25:51.734 INFO 2601 --- [  Thread-11] c.n.e.r.PeerAwareInstanceRegistryImpl : Changing status to UP 
2017-06-18 16:25:51.739 INFO 2601 --- [  Thread-11] e.s.EurekaServerInitializerConfiguration : Started Eureka Server 
2017-06-18 16:25:51.792 INFO 2601 --- [   main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8761 (http) 
2017-06-18 16:25:51.793 INFO 2601 --- [   main] c.n.e.EurekaDiscoveryClientConfiguration : Updating port to 8761 
2017-06-18 16:25:51.795 INFO 2601 --- [   main] c.g.c.s.Main        : Started Main in 4.286 seconds (JVM running for 4.924) 
2017-06-18 16:25:56.788 INFO 2601 --- [  Thread-13] ationConfigEmbeddedWebApplicationContext : Closing org.springframework.boot[email protected]2783717b: startup date [Sun Jun 18 16:25:48 EDT 2017]; parent: org.spring[email protected]5a56cdac 
2017-06-18 16:25:56.790 INFO 2601 --- [  Thread-13] c.n.e.EurekaDiscoveryClientConfiguration : Unregistering application CiveMicroserviceRegistry with eureka with status DOWN 
2017-06-18 16:25:56.791 INFO 2601 --- [  Thread-13] c.n.d.DiscoveryClient     : Shutting down DiscoveryClient ... 
2017-06-18 16:25:56.791 INFO 2601 --- [  Thread-13] c.n.d.DiscoveryClient     : Completed shut down of DiscoveryClient 

に見えます助けを求めてどんな提案やヒントも大歓迎です。 application.properties

答えて

0

、あなたを指定することができます。

  • logging.path
  • logging.file
  • logging.level
+0

はい、しかし、これはまだ、ロギングのデフォルトLogbackを使用します。 。私はチュートリアルのようにLog4j2に切り替える必要があります。しかし、それは動作しません。 – Rhycce

関連する問題