2010-11-18 6 views
2

Ich habe versucht, die Protokollierung auf Savon bei der Ausführung gegen eine WSDL, aber war nicht erfolgreich in der Protokollierung Ebene ändern.Ruby Savon Gem ändern Logging-Konfiguration

las ich die Dokumentation: http://rubiii.github.com/savon/#global_configuration

Ich tat dies:

Savon.configure do |config| 
    config.log = false   # disable logging 
    config.log_level = :info  # changing the log level 
    config.logger = Rails.logger # using the Rails logger 
end 

Und es beschwert sich zu wissen, über was nicht Mittel konfigurieren .. irgendwelche Ideen?

Antwort

4

Diese Dokumentation, die Sie verlinkt haben, ist für savon 0.8, möglicherweise verwenden Sie eine ältere Version. Im Zweifelsfall auf den Quellcode gehen (Pfad ist plattformabhängig) und überprüft, wie der Code/Test tut es:

$ cd /usr/lib/ruby/gems/1.8/gems/savon-0.7.8 
$ grep -lr log_level * 
lib/savon/logger.rb 
spec/savon/request_spec.rb 
$ cat spec/savon/request_spec.rb 
... 
Savon::Request.log_level = :info 
... 
+0

danke! für einen Neuling bei Ruby kenne ich noch keine einfachen Tricks wie diese .. – nictrix

+4

Die von @Nick erwähnte Dokumentation ist nicht veraltet. es ist die neue Dokumentation für Savon 0.8. aber danke für die Hilfe @tokland – rubiii

+1

@rubii. Du hast Recht, sorry, ich habe nicht richtig nachgesehen. BTW, tolle Sachen in 0.8.x, danke für deine Arbeit! – tokland

1

Mindestens ab gem 'savon', '~> 2.3.0', können Sie die Konfigurationsschlüssel hinzufügen, wenn der Client instanziieren.

client = Savon.client(
    log_level: :debug, 
    log: true, 
    pretty_print_xml: true, 
    wsdl: 'http://ws.cdyne.com/emailverify/Emailvernotestemail.asmx?wsdl' 
)