diff options
author | Scott Moser <smoser@ubuntu.com> | 2011-01-31 16:40:43 -0500 |
---|---|---|
committer | Scott Moser <smoser@ubuntu.com> | 2011-01-31 16:40:43 -0500 |
commit | 85444c68c8728d4324b71218d15d4f04ecdb4fbd (patch) | |
tree | 4759569605606ca1776eb2688d3d58e28752fa66 /cloudinit/DataSource.py | |
parent | 9e520d45a60a91750f9ad77da0be7dc58e57f4d8 (diff) | |
download | vyos-cloud-init-85444c68c8728d4324b71218d15d4f04ecdb4fbd.tar.gz vyos-cloud-init-85444c68c8728d4324b71218d15d4f04ecdb4fbd.zip |
replace DataSource's self.log
After adding the 'log' element to the DataSource class, pickling would
fail with
TypeError: can't pickle file objects
Instead of having the object with a log reference, use one from
'DataSource.log' and have that set by cloudinit
Diffstat (limited to 'cloudinit/DataSource.py')
-rw-r--r-- | cloudinit/DataSource.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/cloudinit/DataSource.py b/cloudinit/DataSource.py index 21404ecc..43f66eff 100644 --- a/cloudinit/DataSource.py +++ b/cloudinit/DataSource.py @@ -22,17 +22,22 @@ DEP_NETWORK = "NETWORK" import UserDataHandler as ud +log = None +def setlog(log_in=None, name="DataSource"): + log = log_in + if log is None: + class NullHandler(logging.Handler): + def emit(self,record): pass + log = logging.getLogger(name) + log.addHandler(NullHandler()) + class DataSource: userdata = None metadata = None userdata_raw = None - log = None - def __init__(self, log=None): - if not log: - import logging - log = logging.log - self.log = log + def __init__(self): + pass def get_userdata(self): if self.userdata == None: |