# File lib/puppet/network/http/webrick.rb, line 68
68:     def setup_logger
69:         # Make sure the settings are all ready for us.
70:         Puppet.settings.use(:main, :ssl, Puppet[:name])
71: 
72:         if Puppet[:name] == "puppetmasterd"
73:             file = Puppet[:masterhttplog]
74:         else
75:             file = Puppet[:httplog]
76:         end
77: 
78:         # open the log manually to prevent file descriptor leak
79:         file_io = ::File.open(file, "a+")
80:         file_io.sync
81:         file_io.fcntl(Fcntl::F_SETFD, Fcntl::FD_CLOEXEC)
82: 
83:         args = [file_io]
84:         args << WEBrick::Log::DEBUG if Puppet::Util::Log.level == :debug
85: 
86:         logger = WEBrick::Log.new(*args)
87:         return :Logger => logger, :AccessLog => [
88:             [logger, WEBrick::AccessLog::COMMON_LOG_FORMAT ],
89:             [logger, WEBrick::AccessLog::REFERER_LOG_FORMAT ]
90:         ]
91:     end