fixed catch exception when looking for remote ip address
[unfold.git] / activity / __init__.py
index 6157bae..7038181 100644 (file)
@@ -56,21 +56,25 @@ def logWrite(request, action, message, objects = None):
         "apikey"    : apikey,
         "signature" : sign(secret, "%s%s%s%s" % (timestamp, ip, request.user, action)),
         "slice"     : None,
-        "resource"  : None
+        "resource"  : None,
+        "resource_type"     : None,
+        "facility"      : None,
+        "testbed"       : None,
     }
     
-    if objects and 'slice' in objects :
-        log['slice'] = objects['slice']
-    
-    if objects and 'resource' in objects :
-        log['resource'] = objects['resource']
+    if objects is not None:
+        for o in objects :
+            if (o in log) :
+                log[o] = objects[o]
     
     try :
         result = urllib2.urlopen(server, urllib.urlencode(log))
-        print "===============>> activity: " + action + " <" + request.user + "> " + message
+        print "===============>> activity: %s <%s> %s" % (action, request.user,message)
         content = result.read()
     except urllib2.URLError as e:
         print "===============>> activity: connection to " + server + " impossible, could not log action"
+        print e.strerror
+        print ""
 
 def log(request, action, message, objects = None):
     # Create a new thread in Daemon mode to send the log entry
@@ -79,10 +83,10 @@ def log(request, action, message, objects = None):
     t.start()
 
 def getClientIp(request):
-    x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
-    if x_forwarded_for:
+    try :
+        x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
         ip = x_forwarded_for.split(',')[0]
-    else:
+    except:
         ip = request.META.get('REMOTE_ADDR')
     return ip