]> git.ipfire.org Git - oddments/ddns.git/blobdiff - src/ddns/__init__.py
Create database to track updates that have been performed
[oddments/ddns.git] / src / ddns / __init__.py
index 4e4093e2690d731376f2a0ca2603be18f5bd03ac..84b8c80043a2378284afc254585d4c080b72b837 100644 (file)
@@ -28,6 +28,7 @@ from i18n import _
 logger = logging.getLogger("ddns.core")
 logger.propagate = 1
 
+import database
 import providers
 
 from .errors import *
@@ -42,6 +43,8 @@ def setup_logging():
        handler = logging.handlers.SysLogHandler(address="/dev/log",
                facility=logging.handlers.SysLogHandler.LOG_DAEMON
        )
+       formatter = logging.Formatter("ddns[%(process)d]: %(message)s")
+       handler.setFormatter(formatter)
        handler.setLevel(logging.INFO)
        rootlogger.addHandler(handler)
 
@@ -74,6 +77,9 @@ class DDNSCore(object):
                # Add the system class.
                self.system = DDNSSystem(self)
 
+               # Open the database.
+               self.db = database.DDNSDatabase(self, "/var/lib/ddns.db")
+
        def get_provider_names(self):
                """
                        Returns a list of names of all registered providers.
@@ -83,7 +89,7 @@ class DDNSCore(object):
        def load_configuration(self, filename):
                logger.debug(_("Loading configuration file %s") % filename)
 
-               configs = ConfigParser.SafeConfigParser()
+               configs = ConfigParser.RawConfigParser()
                configs.read([filename,])
 
                # First apply all global configuration settings.
@@ -161,7 +167,3 @@ class DDNSCore(object):
                except Exception, e:
                        logger.error(_("Dynamic DNS update for %(hostname)s (%(provider)s) throwed an unhandled exception:") % \
                                { "hostname" : entry.hostname, "provider" : entry.name }, exc_info=True)
-
-               else:
-                       logger.info(_("Dynamic DNS update for %(hostname)s (%(provider)s) successful") % \
-                               { "hostname" : entry.hostname, "provider" : entry.name })