If /dev/log doesn't exist or cannot be contacted, ovs-monitor-ipsec would
abort with an exception. This allows it to start up and run.
It's pretty common for a chroot used for testing not to have a syslogd
instance set up and running, so this limitation caused testing problems.
Reported-by: Simon Horman <horms@verge.net.au>
Tested-by: Simon Horman <horms@verge.net.au>
import glob
import logging, logging.handlers
import os
import glob
import logging, logging.handlers
import os
import subprocess
import sys
import subprocess
import sys
import ovs.daemon
import ovs.db.idl
import ovs.daemon
import ovs.db.idl
-
-# By default log messages as DAEMON into syslog
s_log = logging.getLogger("ovs-monitor-ipsec")
s_log = logging.getLogger("ovs-monitor-ipsec")
-l_handler = logging.handlers.SysLogHandler(
- "/dev/log",
- facility=logging.handlers.SysLogHandler.LOG_DAEMON)
-l_formatter = logging.Formatter('%(filename)s: %(levelname)s: %(message)s')
-l_handler.setFormatter(l_formatter)
-s_log.addHandler(l_handler)
-
+try:
+ # By default log messages as DAEMON into syslog
+ l_handler = logging.handlers.SysLogHandler(
+ "/dev/log",
+ facility=logging.handlers.SysLogHandler.LOG_DAEMON)
+ l_formatter = logging.Formatter('%(filename)s: %(levelname)s: %(message)s')
+ l_handler.setFormatter(l_formatter)
+ s_log.addHandler(l_handler)
+except socket.error, e:
+ logging.basicConfig()
+ s_log.warn("failed to connect to syslog (%s)" % e)
setkey = "/usr/sbin/setkey"
setkey = "/usr/sbin/setkey"