Browse Source

[trac739] Checkpoint of work at end of week

Stephen Morris 14 years ago
parent
commit
1f91575ae4
3 changed files with 36 additions and 26 deletions
  1. 15 3
      src/bin/resolver/Makefile.am
  2. 8 10
      src/bin/resolver/main.cc
  3. 13 13
      src/bin/resolver/resolver.cc

+ 15 - 3
src/bin/resolver/Makefile.am

@@ -18,10 +18,12 @@ endif
 
 
 pkglibexecdir = $(libexecdir)/@PACKAGE@
 pkglibexecdir = $(libexecdir)/@PACKAGE@
 
 
-CLEANFILES = *.gcno *.gcda resolver.spec spec_config.h
+CLEANFILES  = *.gcno *.gcda
+CLEANFILES += resolver.spec spec_config.h
+CLEANFILES += resolverdef.cc resolverdef.h
 
 
 man_MANS = b10-resolver.8
 man_MANS = b10-resolver.8
-EXTRA_DIST = $(man_MANS) b10-resolver.xml
+EXTRA_DIST = $(man_MANS) b10-resolver.xml resolverdef.mes
 
 
 if ENABLE_MAN
 if ENABLE_MAN
 
 
@@ -36,13 +38,23 @@ resolver.spec: resolver.spec.pre
 spec_config.h: spec_config.h.pre
 spec_config.h: spec_config.h.pre
 	$(SED) -e "s|@@LOCALSTATEDIR@@|$(localstatedir)|" spec_config.h.pre >$@
 	$(SED) -e "s|@@LOCALSTATEDIR@@|$(localstatedir)|" spec_config.h.pre >$@
 
 
-BUILT_SOURCES = spec_config.h 
+# Define rule to build logging source files from message file
+resolverdef.h resolverdef.cc: resolverdef.mes
+	$(top_builddir)/src/lib/log/compiler/message $(top_srcdir)/src/lib/resolver/resolverdef.mes
+
+
+BUILT_SOURCES = spec_config.h resolverdef.cc resolverdef.h
+
 pkglibexec_PROGRAMS = b10-resolver
 pkglibexec_PROGRAMS = b10-resolver
 b10_resolver_SOURCES = resolver.cc resolver.h
 b10_resolver_SOURCES = resolver.cc resolver.h
 b10_resolver_SOURCES += response_scrubber.cc response_scrubber.h
 b10_resolver_SOURCES += response_scrubber.cc response_scrubber.h
 b10_resolver_SOURCES += $(top_builddir)/src/bin/auth/change_user.h
 b10_resolver_SOURCES += $(top_builddir)/src/bin/auth/change_user.h
 b10_resolver_SOURCES += $(top_builddir)/src/bin/auth/common.h
 b10_resolver_SOURCES += $(top_builddir)/src/bin/auth/common.h
 b10_resolver_SOURCES += main.cc
 b10_resolver_SOURCES += main.cc
+
+nodist_b10_resolver_SOURCES = resolverdef.cc resolverdef.h
+
+
 b10_resolver_LDADD =  $(top_builddir)/src/lib/dns/libdns++.la
 b10_resolver_LDADD =  $(top_builddir)/src/lib/dns/libdns++.la
 b10_resolver_LDADD += $(top_builddir)/src/lib/config/libcfgclient.la
 b10_resolver_LDADD += $(top_builddir)/src/lib/config/libcfgclient.la
 b10_resolver_LDADD += $(top_builddir)/src/lib/cc/libcc.la
 b10_resolver_LDADD += $(top_builddir)/src/lib/cc/libcc.la

+ 8 - 10
src/bin/resolver/main.cc

@@ -58,7 +58,6 @@ using namespace std;
 using namespace isc::cc;
 using namespace isc::cc;
 using namespace isc::config;
 using namespace isc::config;
 using namespace isc::data;
 using namespace isc::data;
-using isc::log::dlog;
 using namespace isc::asiodns;
 using namespace isc::asiodns;
 using namespace isc::asiolink;
 using namespace isc::asiolink;
 
 
@@ -127,7 +126,7 @@ main(int argc, char* argv[]) {
         for (int i = 0; i < argc; ++ i) {
         for (int i = 0; i < argc; ++ i) {
             cmdline = cmdline + " " + argv[i];
             cmdline = cmdline + " " + argv[i];
         }
         }
-        dlog(cmdline);
+        LOG_INFO(resolver_logger, RESOLVER_STARTING).arg(cmdline);
     }
     }
 
 
     int ret = 0;
     int ret = 0;
@@ -144,7 +143,7 @@ main(int argc, char* argv[]) {
         }
         }
 
 
         resolver = boost::shared_ptr<Resolver>(new Resolver());
         resolver = boost::shared_ptr<Resolver>(new Resolver());
-        dlog("Server created.");
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_CREATED);
 
 
         SimpleCallback* checkin = resolver->getCheckinProvider();
         SimpleCallback* checkin = resolver->getCheckinProvider();
         DNSLookup* lookup = resolver->getDNSLookupProvider();
         DNSLookup* lookup = resolver->getDNSLookupProvider();
@@ -197,15 +196,13 @@ main(int argc, char* argv[]) {
         
         
         DNSService dns_service(io_service, checkin, lookup, answer);
         DNSService dns_service(io_service, checkin, lookup, answer);
         resolver->setDNSService(dns_service);
         resolver->setDNSService(dns_service);
-        dlog("IOService created.");
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_SERVICE);
 
 
         cc_session = new Session(io_service.get_io_service());
         cc_session = new Session(io_service.get_io_service());
-        dlog("Configuration session channel created.");
-
         config_session = new ModuleCCSession(specfile, *cc_session,
         config_session = new ModuleCCSession(specfile, *cc_session,
                                              my_config_handler,
                                              my_config_handler,
                                              my_command_handler);
                                              my_command_handler);
-        dlog("Configuration channel established.");
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_CONFIGCHAN);
 
 
         // FIXME: This does not belong here, but inside Boss
         // FIXME: This does not belong here, but inside Boss
         if (uid != NULL) {
         if (uid != NULL) {
@@ -213,17 +210,18 @@ main(int argc, char* argv[]) {
         }
         }
 
 
         resolver->setConfigSession(config_session);
         resolver->setConfigSession(config_session);
-        dlog("Config loaded");
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_CONFIGLOAD);
 
 
-        dlog("Server started.");
+        LOG_INFO(resolver_logger, RESOLVER_STARTED);
         io_service.run();
         io_service.run();
     } catch (const std::exception& ex) {
     } catch (const std::exception& ex) {
-        dlog(string("Server failed: ") + ex.what(),true);
+        LOG_FATAL(resolver_logger, RESOLVER_FAILED).arg(ex.what());
         ret = 1;
         ret = 1;
     }
     }
 
 
     delete config_session;
     delete config_session;
     delete cc_session;
     delete cc_session;
 
 
+    LOG_INFO(resolver_logger, RESOLVER_SHUTDOWN);
     return (ret);
     return (ret);
 }
 }

+ 13 - 13
src/bin/resolver/resolver.cc

@@ -85,7 +85,7 @@ public:
                     isc::cache::ResolverCache& cache)
                     isc::cache::ResolverCache& cache)
     {
     {
         assert(!rec_query_); // queryShutdown must be called first
         assert(!rec_query_); // queryShutdown must be called first
-        dlog("Query setup");
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_QUSETUP);
         rec_query_ = new RecursiveQuery(dnss, 
         rec_query_ = new RecursiveQuery(dnss, 
                                         nsas, cache,
                                         nsas, cache,
                                         upstream_,
                                         upstream_,
@@ -101,7 +101,7 @@ public:
         // (this is not a safety check, just to prevent logging of
         // (this is not a safety check, just to prevent logging of
         // actions that are not performed
         // actions that are not performed
         if (rec_query_) {
         if (rec_query_) {
-            dlog("Query shutdown");
+            LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_QUSHUT);
             delete rec_query_;
             delete rec_query_;
             rec_query_ = NULL;
             rec_query_ = NULL;
         }
         }
@@ -113,13 +113,12 @@ public:
         upstream_ = upstream;
         upstream_ = upstream;
         if (dnss) {
         if (dnss) {
             if (!upstream_.empty()) {
             if (!upstream_.empty()) {
-                dlog("Setting forward addresses:");
                 BOOST_FOREACH(const AddressPair& address, upstream) {
                 BOOST_FOREACH(const AddressPair& address, upstream) {
-                    dlog(" " + address.first + ":" +
-                        boost::lexical_cast<string>(address.second));
+                    LOG_INFO(resolver_logger, RESOLVER_FWDADDR)
+                             .arg(address.first).arg(address.second);
                 }
                 }
             } else {
             } else {
-                dlog("No forward addresses, running in recursive mode");
+                LOG_INFO(resolver_logger, RESOLVER_RECURSIVE);
             }
             }
         }
         }
     }
     }
@@ -130,13 +129,12 @@ public:
         upstream_root_ = upstream_root;
         upstream_root_ = upstream_root;
         if (dnss) {
         if (dnss) {
             if (!upstream_root_.empty()) {
             if (!upstream_root_.empty()) {
-                dlog("Setting root addresses:");
                 BOOST_FOREACH(const AddressPair& address, upstream_root) {
                 BOOST_FOREACH(const AddressPair& address, upstream_root) {
-                    dlog(" " + address.first + ":" +
-                        boost::lexical_cast<string>(address.second));
+                    LOG_INFO(resolver_logger, RESOLVER_ROOTADDR)
+                             .arg(address.first).arg(address.second);
                 }
                 }
             } else {
             } else {
-                dlog("No root addresses");
+                LOG_WARN(resolver_logger, RESOLVER_NOROOTADDR);
             }
             }
         }
         }
     }
     }
@@ -391,7 +389,6 @@ Resolver::processMessage(const IOMessage& io_message,
                          OutputBufferPtr buffer,
                          OutputBufferPtr buffer,
                          DNSServer* server)
                          DNSServer* server)
 {
 {
-    dlog("Got a DNS message");
     InputBuffer request_buffer(io_message.getData(), io_message.getDataSize());
     InputBuffer request_buffer(io_message.getData(), io_message.getDataSize());
     // First, check the header part.  If we fail even for the base header,
     // First, check the header part.  If we fail even for the base header,
     // just drop the message.
     // just drop the message.
@@ -400,12 +397,15 @@ Resolver::processMessage(const IOMessage& io_message,
 
 
         // Ignore all responses.
         // Ignore all responses.
         if (query_message->getHeaderFlag(Message::HEADERFLAG_QR)) {
         if (query_message->getHeaderFlag(Message::HEADERFLAG_QR)) {
-            dlog("Received unexpected response, ignoring");
+            LOG_DEBUG(resolver_logger, RESOLVER_DBG_RECVMSG, RESOLVER_UNEXRESP);
             server->resume(false);
             server->resume(false);
             return;
             return;
         }
         }
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_RECVMSG, RESOLVER_RECVMSG);
+
     } catch (const Exception& ex) {
     } catch (const Exception& ex) {
-        dlog(string("DNS packet exception: ") + ex.what(),true);
+        LOG_DEBUG(resolver_logger, RESOLVER_DBG_RECVMSG, RESOLVER_PKTEXCEPT)
+                  .arg(ex.what());
         server->resume(false);
         server->resume(false);
         return;
         return;
     }
     }