lib/async/dns/server.rb in async-dns-1.2.0 vs lib/async/dns/server.rb in async-dns-1.2.1
- old
+ new
@@ -20,11 +20,10 @@
require 'async'
require 'async/io'
require_relative 'transaction'
-require_relative 'logger'
module Async::DNS
class Server
# The default server interfaces
DEFAULT_ENDPOINTS = [[:udp, "0.0.0.0", 53], [:tcp, "0.0.0.0", 53]]
@@ -75,28 +74,27 @@
begin
query.question.each do |question, resource_class|
begin
question = question.without_origin(@origin)
- @logger.debug {"<#{query.id}> Processing question #{question} #{resource_class}..."}
+ @logger.debug(query) {"Processing question #{question} #{resource_class}..."}
transaction = Transaction.new(self, query, question, resource_class, response, options)
transaction.process
rescue Resolv::DNS::OriginError
# This is triggered if the question is not part of the specified @origin:
- @logger.debug {"<#{query.id}> Skipping question #{question} #{resource_class} because #{$!}"}
+ @logger.debug(query) {"Skipping question #{question} #{resource_class} because #{$!}"}
end
end
rescue StandardError => error
- @logger.error "<#{query.id}> Exception thrown while processing #{transaction}!"
- Async::DNS.log_exception(@logger, error)
-
+ @logger.error(query) {error}
+
response.rcode = Resolv::DNS::RCode::ServFail
end
end_time = Time.now
- @logger.debug {"<#{query.id}> Time to process request: #{end_time - start_time}s"}
+ @logger.debug(query) {"Time to process request: #{end_time - start_time}s"}
return response
end
# Setup all specified interfaces and begin accepting incoming connections.