2017-02-24 21 views
7

Geri yükleme başlatılmadan önce başlangıçta stdout için günlüğe kaydetme yaklaşık 1500 satır JNDI hata ayıklama çıkaran bir önyükleme uygulaması var. Buna neyin sebep olduğunu bilen var mı? Eğer bu işlemden önce başlatılmış bir geri dönüş almanın bir yolu var mı? -Dlogback.debug = true var ama çok yardımcı olmuyor. Özel bir logback-spring.xml kullanırkenbahar JNDI günlüğe kaydedilmeden önce günlüğe kaydetme başlatıldı

10:44:56.453 [main] DEBUG org.springframework.jndi.JndiTemplate - Looking up JNDI object with name [java:comp/env/logging.exception-conversion-word] 
10:44:56.457 [main] DEBUG jndi - InitialContextFactory.getInitialContext() 
10:44:56.457 [main] DEBUG jndi - Created initial context delegate for local namespace:[email protected] 
10:44:56.457 [main] DEBUG org.eclipse.jetty.jndi.java.javaURLContextFactory - >>> new root context requested 
10:44:56.457 [main] DEBUG jndi - Looking up name="comp/env/logging.exception-conversion-word" 
10:44:56.457 [main] DEBUG jndi - Trying thread context classloader 
10:44:56.457 [main] DEBUG jndi - Looking up name="env/logging.exception-conversion-word" 
10:44:56.458 [main] DEBUG org.springframework.jndi.JndiLocatorDelegate - Converted JNDI name [java:comp/env/logging.exception-conversion-word] not found - trying original name [logging.exception-conversion-word]. javax.naming.NameNotFoundException; remaining name 'env/logging.exception-conversion-word' 
10:44:56.458 [main] DEBUG org.springframework.jndi.JndiTemplate - Looking up JNDI object with name [logging.exception-conversion-word] 

... 

10:44:56.487 [main] DEBUG jndi - Looking up name="env/LOGGING_PATTERNLEVEL" 
10:44:56.487 [main] DEBUG org.springframework.jndi.JndiLocatorDelegate - Converted JNDI name [java:comp/env/LOGGING_PATTERNLEVEL] not found - trying original name [LOGGING_PATTERNLEVEL]. javax.naming.NameNotFoundException; remaining name 'env/LOGGING_PATTERNLEVEL' 
10:44:56.487 [main] DEBUG org.springframework.jndi.JndiTemplate - Looking up JNDI object with name [LOGGING_PATTERNLEVEL] 
10:44:56.487 [main] DEBUG jndi - InitialContextFactory.getInitialContext() 
10:44:56.487 [main] DEBUG jndi - Created initial context delegate for local namespace:[email protected] 
10:44:56.487 [main] DEBUG jndi - Looking up name="LOGGING_PATTERNLEVEL" 
10:44:56.487 [main] DEBUG org.springframework.jndi.JndiPropertySource - JNDI lookup for name [LOGGING_PATTERNLEVEL] threw NamingException with message: null. Returning null. 
10:44:56,536 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender] 
10:44:56,539 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT] 
10:44:56,543 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property 
10:44:56,561 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender] 
10:44:56,564 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE] 
10:44:56,565 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property 
10:44:56,571 |-INFO in [email protected] - Will use the pattern /tmp/logs/qs.%d{yyyyMMdd-HHmmss}.log to archive files 
10:44:56,574 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /tmp/logs/qs.log 
10:44:56,574 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/tmp/logs/qs.log] 
10:44:56,576 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to WARN 
10:44:56,576 |-INFO in [email protected] - Propagating WARN level on Logger[ROOT] onto the JUL framework 
10:44:56,576 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE] to Logger[ROOT] 
10:44:56,576 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT] 
10:44:56,576 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration. 
10:44:56,577 |-INFO in org.s[email protected]32b260fa - Registering current configuration as safe fallback point 

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

10:44:56,750 |-INFO in c.q.l.co.rolling.helper.RenameUtil - Renaming file [/tmp/logs/qs.log] to [/tmp/logs/qs.20170222-173130.log] 
10:44:56 [main] INFO my.Application - Starting ... 
+0

bu satırı ekleyebilirsiniz? JNDI etkinleştirilmiş Jetty gibi görünüyor. Gömülü İskelesi mi kullanıyorsunuz yoksa bir savaş dosyası mı kullanıyorsunuz? –

+0

gömülü iskelesi kullanıyoruz. (": /spring/foobar-context.xml sınıf yolu") @ServletComponentScan public class FoobarApplication uzanır Biz @SpringBootApplication gibi başlatmak @ImportResource (scanBasePackages = {...}, = {...} hariç) SpringBootServletInitializer { genel statik geçersiz ana (son Dize [] args) { SpringApplication.run (FoobarApplication.class, args); Tek başına Tomcat 8.0.33 kullanırken } ... } – dlipofsky

+0

Bu aynı zamanda gerçekleşir. Aşağıdaki "spring.jndi.ignore = gerçek" cevap çalışır ama iyi hissetmez. – mle

cevap

9

Ben de Bahar Boot 1.5.1 ile bu gördük. Logback-spring.xml yoksa, hata ayıklama ifadeleri görünmez.

JNDIPropertySource özelliğini devre dışı bırakarak çalıştım. senin Sınıfyolu kök, spring.properties bir dosya oluşturun:

# Disable the JNDIPropertySource. This avoids dozens of spurious DEBUG messages 
# when starting up with a custom logback-spring.xml. We're not alone: 
# http://stackoverflow.com/questions/42446013/spring-jndi-logging-before-logback-is-initialized 
spring.jndi.ignore=true 

spring.jndi.ignore https://jira.spring.io/browse/SPR-14026 yılında eklenmiştir.

Bu yaklaşım titriyor, ama JNDI'nin yararlı olabileceği bir kapta koşmadığım için, benim için hiçbir şey kırmıyor.

+0

Bu benim için çalışıyor. Bunu bir -D bayrağıyla da ayarlayabilirsiniz, ancak dosya benim amaçlarım için daha iyi çalışır. – dlipofsky

+0

Bu sorunla karşılaşan başka biri varsa. Yapılandırmayı spring.properties içine koyduğumda ancak bootstrap.properties içine koyduğumda bu değişiklik benim için çalışır. –

2

Aynı sorunu yaşadım, ancak jndi'yi kapatamadım çünkü uygulamam başlangıçta kullanıyor.

2) örneğin logback-config.xml için,

1) diğer bazı isme logback-spring.xml adlandırmak application.properties dosyaya logging.config özelliğini koydu: Yani bazı araştırma sonra ben çözümü ile sona erdi.

Sonuç olarak, yapılandırma yalnızca ilkbahar başlangıcında uygulanacak ve bu hata ayıklama günlüğü atlanacaktır. Ayrıca benim durumumda ilk çözüm işe yaramadı çünkü jndi'ye ihtiyacım vardı, bu durumda jndi'yi de etkin bıraktın.

Güncelleme: bu böylece bulduğunu, ben logback.xml bu logback dosyasını yeniden adlandırma ile sona erdi, uzak tomcat üzerinde aynı işi yapmak ve catalina.log dosyadan Bu hata ayıklama günlüğünü kaldırmak için, sadece yerel çevre için yardımcı jndi arayışından önce, başlangıçta.

-1

Eğer bunu önleyebilirsiniz Başvurunuzu ne çalıştıran ortamda sizin logback xml dosyasında

<logger name="org.springframework.jndi" level="INFO" /> 
+0

Hayır, yapamazsınız, çünkü bu iletiler günlüğe kaydedilmeden önce günlüğe kaydedilir. Kayıttan çıkarım zaten varsayılan olarak WARN eşiğine ayarlandı. – dlipofsky

İlgili konular