summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTim Laszlo <tim.laszlo@gmail.com>2010-05-26 18:23:07 +0000
committerSol Jerome <solj@ices.utexas.edu>2010-05-26 15:37:25 -0500
commit818a8e6e9c0f8e94fdc284341663518287efb530 (patch)
treea9bb11afa650f4b96fd7f839af41f3288aca5dc7 /src
parentb3f4b34e8bf3634b812b83f15b675c626b0b1472 (diff)
downloadbcfg2-818a8e6e9c0f8e94fdc284341663518287efb530.tar.gz
bcfg2-818a8e6e9c0f8e94fdc284341663518287efb530.tar.bz2
bcfg2-818a8e6e9c0f8e94fdc284341663518287efb530.zip
Use logging instead of print statements in importscript.py
Switch from print statements to the standard Logger.py functions. This allows load_stats in importscript.py to log error messages when daemonized. git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5867 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src')
-rw-r--r--src/lib/Server/Plugins/DBStats.py1
-rwxr-xr-xsrc/lib/Server/Reports/importscript.py34
2 files changed, 22 insertions, 13 deletions
diff --git a/src/lib/Server/Plugins/DBStats.py b/src/lib/Server/Plugins/DBStats.py
index 0ecf9abde..49048fad9 100644
--- a/src/lib/Server/Plugins/DBStats.py
+++ b/src/lib/Server/Plugins/DBStats.py
@@ -49,6 +49,7 @@ class DBStats(Bcfg2.Server.Plugin.Plugin,
Bcfg2.Server.Reports.importscript.load_stats(self.core.metadata.clientdata,
container,
0,
+ logger,
True,
platform.node())
break
diff --git a/src/lib/Server/Reports/importscript.py b/src/lib/Server/Reports/importscript.py
index 8cc38268e..8b0b5b144 100755
--- a/src/lib/Server/Reports/importscript.py
+++ b/src/lib/Server/Reports/importscript.py
@@ -26,6 +26,8 @@ from django.db import connection
from Bcfg2.Server.Reports.updatefix import update_database
import ConfigParser
import difflib
+import logging
+import Bcfg2.Logger
def build_reason_kwargs(r_ent):
if r_ent.get('current_bfile', False):
@@ -53,7 +55,7 @@ def build_reason_kwargs(r_ent):
current_diff=rc_diff)
-def load_stats(cdata, sdata, vlevel, quick=False, location=''):
+def load_stats(cdata, sdata, vlevel, logger, quick=False, location=''):
cursor = connection.cursor()
clients = {}
cursor.execute("SELECT name, id from reports_client;")
@@ -67,10 +69,10 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
[datetime.now(), name])
clients[name] = cursor.lastrowid
if vlevel > 0:
- print("Client %s added to db" % name)
+ logger.info("Client %s added to db" % name)
else:
if vlevel > 0:
- print("Client %s already exists in db" % name)
+ logger.info("Client %s already exists in db" % name)
pingability = {}
[pingability.__setitem__(n.get('name'), n.get('pingable', default='N')) \
@@ -93,7 +95,7 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
if ilist:
current_interaction = ilist[0]
if vlevel > 0:
- print("Interaction for %s at %s with id %s already exists"%(clients[name],
+ logger.info("Interaction for %s at %s with id %s already exists"%(clients[name],
datetime(t[0],t[1],t[2],t[3],t[4],t[5]),current_interaction.id))
continue
else:
@@ -108,7 +110,7 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
newint.save()
current_interaction = newint
if vlevel > 0:
- print("Interaction for %s at %s with id %s INSERTED in to db"%(clients[name],
+ logger.info("Interaction for %s at %s with id %s INSERTED in to db"%(clients[name],
timestamp, current_interaction.id))
@@ -127,14 +129,14 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
if rls:
rr = rls[0]
if vlevel > 0:
- print "Reason exists: %s"% (rr.id)
+ logger.info("Reason exists: %s"% (rr.id))
else:
rr = Reason(**kargs)
rr.save()
if vlevel > 0:
- print "Created reason: %s" % rr.id
+ logger.info("Created reason: %s" % rr.id)
except Exception, ex:
- print "Failed to create reason for %s: %s" % (x.get('name'), ex)
+ logger.error("Failed to create reason for %s: %s" % (x.get('name'), ex))
rr=Reason(current_exists=x.get('current_exists',
default="True").capitalize()=="True")
rr.save()
@@ -154,7 +156,7 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
type=type[0])
interaction.save()
if vlevel > 0:
- print "%s interaction created with reason id %s and entry %s" % (xpath, rr.id, entry.id)
+ logger.info("%s interaction created with reason id %s and entry %s" % (xpath, rr.id, entry.id))
for times in statistics.findall('OpStamps'):
for metric, value in times.items():
@@ -176,13 +178,13 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
pass
if vlevel > 1:
- print("----------------INTERACTIONS SYNCED----------------")
+ logger.info("----------------INTERACTIONS SYNCED----------------")
cursor.execute("select reports_interaction.id, x.client_id from (select client_id, MAX(timestamp) as timer from reports_interaction Group BY client_id) x, reports_interaction where reports_interaction.client_id = x.client_id AND reports_interaction.timestamp = x.timer")
for row in cursor.fetchall():
cursor.execute("UPDATE reports_client SET current_interaction_id = %s where reports_client.id = %s",
[row[0],row[1]])
if vlevel > 1:
- print("------------LATEST INTERACTION SET----------------")
+ logger.info("------------LATEST INTERACTION SET----------------")
for key in pingability.keys():
if key not in clients:
@@ -205,7 +207,7 @@ def load_stats(cdata, sdata, vlevel, quick=False, location=''):
newp.save()
if vlevel > 1:
- print "---------------PINGDATA SYNCED---------------------"
+ logger.info("---------------PINGDATA SYNCED---------------------")
connection._commit()
#Clients are consistent
@@ -226,6 +228,12 @@ if __name__ == '__main__':
print "%s\nUsage:\nimportscript.py [-h] [-v] [-u] [-d] [-C bcfg2 config file] [-c clients-file] [-s statistics-file]" % (mesg)
raise SystemExit, 2
+ logger = logging.getLogger('importscript.py')
+ logging.getLogger().setLevel(logging.INFO)
+ Bcfg2.Logger.setup_logging('importscript.py',
+ True,
+ False)
+
for o, a in opts:
if o in ("-h", "--help"):
print "Usage:\nimportscript.py [-h] [-v] -c <clients-file> -s <statistics-file> \n"
@@ -288,4 +296,4 @@ if __name__ == '__main__':
raise SystemExit, 1
# Be sure the database is ready for new schema
update_database()
- load_stats(clientsdata, statsdata, verb, quick=q, location=location)
+ load_stats(clientsdata, statsdata, verb, logger, quick=q, location=location)