# File lib/puppet/util/log.rb, line 329
329:         def handle(msg)
330:             unless msg.is_a?(String) or msg.remote
331:                 unless defined? @hostname
332:                     @hostname = Facter["hostname"].value
333:                 end
334:                 unless defined? @domain
335:                     @domain = Facter["domain"].value
336:                     if @domain
337:                         @hostname += "." + @domain
338:                     end
339:                 end
340:                 if msg.source =~ /^\//
341:                     msg.source = @hostname + ":" + msg.source
342:                 elsif msg.source == "Puppet"
343:                     msg.source = @hostname + " " + msg.source
344:                 else
345:                     msg.source = @hostname + " " + msg.source
346:                 end
347:                 begin
348:                     #puts "would have sent %s" % msg
349:                     #puts "would have sent %s" %
350:                     #    CGI.escape(YAML.dump(msg))
351:                     begin
352:                         tmp = CGI.escape(YAML.dump(msg))
353:                     rescue => detail
354:                         puts "Could not dump: %s" % detail.to_s
355:                         return
356:                     end
357:                     # Add the hostname to the source
358:                     @driver.addlog(tmp)
359:                 rescue => detail
360:                     if Puppet[:trace]
361:                         puts detail.backtrace
362:                     end
363:                     Puppet.err detail
364:                     Puppet::Util::Log.close(self)
365:                 end
366:             end
367:         end