2011-01-03 30 views
5

Tôi đã phải vật lộn hàng giờ để nhận thông báo ghi nhật ký được hiển thị (hoặc vào một tệp hoặc bảng điều khiển) khi thực hiện kiểm tra tích hợp. Tôi cho rằng tôi có thể sử dụng đoạn mã sau để thêm một thông điệp đăng nhập:Đăng nhập vào Grails trong quá trình kiểm tra tích hợp

log.debug "Some useful information here" 

tôi đã nhận xét ra các dòng sau trong _GrailsWar.groovy:

target(startLogging:"Bootstraps logging") { 
// do nothing, overrides default behaviour so that logging doesn't kick in  
} 

như đề xuất ở đây http://jira.codehaus.org/browse/GRAILS-4470

Phần log4j của Config.groovy trông giống như sau:

// log4j configuration 
log4j = { 
    // Example of changing the log pattern for the default console 
    // appender: 
    // 
    appenders { 
     //console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n 
     //console name: 'stdout', layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - %m%n') 
     //file name: 'hibeFile', file: 'hibe.log', layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - %m%n') 
     file name:'file', file:'C:/Users/Christopher/Documents/NetBeansProjects/TestProject/smyh.log', append: false 
     console name:'stdout' 
    } 

    error 'org.codehaus.groovy.grails.web.servlet', // controllers 
      'org.codehaus.groovy.grails.web.pages', // GSP 
      'org.codehaus.groovy.grails.web.sitemesh', // layouts 
      'org.codehaus.groovy.grails.web.mapping.filter', // URL mapping 
      'org.codehaus.groovy.grails.web.mapping', // URL mapping 
      'org.codehaus.groovy.grails.commons', // core/classloading 
      'org.codehaus.groovy.grails.plugins', // plugins 
      'org.codehaus.groovy.grails.orm.hibernate', // hibernate integration 
      'org.springframework', 
      'org.hibernate', 
      'net.sf.ehcache.hibernate' 

    warn 'org.mortbay.log' 

    debug 'grails.app' 

    info 'grails.app' 

    root { 
     // change the root logger to my tomcatLog file 
     error 'file', stdout 
     info 'file', stdout 
     warn 'file', stdout 
     debug 'file', stdout 
     additivity = true 
    } 

} 

Có ai biết tại sao tôi không thể nhìn thấy thông điệp tường trình của mình trong khi kiểm tra tích hợp không?

Rất cám ơn vì đã dành thời gian của bạn.

Trả lời

0

Hãy xem this recent thread trên danh sách gửi thư của người dùng.
Bạn có thể đang gặp phải the same issue?

Chỉnh sửa: tốt, đó có thể là những gì bạn đã làm, xin lỗi.

+0

Cảm ơn đề xuất. Tôi đã không nhìn thấy danh sách gửi thư cụ thể mà bạn đã đề cập, mặc dù tôi đã đi qua liên kết được bao gồm cho thấy việc sửa đổi tệp _GrailsWar.groovy. Tôi đã không thể làm việc ra một giải pháp từ các sợi không may. –

6

Cuối cùng tôi đã tìm được giải pháp cho câu hỏi của riêng mình. Để làm được khai thác gỗ trong thử nghiệm tích hợp, tôi đã thêm dòng sau gần đầu:

import org.apache.commons.logging.LogFactory 

Sau đó, trong lớp tôi đã thêm như sau:

def log = LogFactory.getLog(getClass()) 

Đây là từ: http://grails.1312388.n4.nabble.com/Problems-with-Logging-td1360669.html

Sau đó, tôi có thể đăng nhập, chẳng hạn như

log.debug('*** It works! ***'); 
+0

Nó hoạt động chỉ cho mã trong lớp thử nghiệm – pinei

Các vấn đề liên quan