Contact: fumanchu@aminus.org

Log in as guest/dejavu to create tickets

I think I've seen this ORM somewhere before...

root/trunk/dejavu/logflags.py

Revision 582 (checked in by fumanchu, 5 years ago)

Added logging.IO calls to memcached (plus one to partitions).

  • Property svn:eol-style set to native
Line 
1 """Log flags (and their associated messages) for Dejavu."""
2
3
4 class LogCategory(int):
5    
6     def __new__(cls, value, message=None):
7         return int.__new__(cls, value)
8    
9     def __init__(self, value, message=None):
10         if message is not None:
11             self.message = message
12    
13     def message(self, *args):
14         return " ".join(map(repr, args))
15
16
17 ERROR = LogCategory(1)
18 def message(*args):
19     return "IO: " + " ".join(map(repr, args))
20 IO = LogCategory(2, message)
21 SQL = LogCategory(4)
22
23 def message(msg):
24     return "DDL: %s" % msg
25 DDL = LogCategory(8, message)
26
27 def message(store, cls):
28     return "REGISTER: %r in store %r" % (cls, store)
29 REGISTER = LogCategory(16, message)
30
31
32
33 def message(unit):
34     return "RESERVE %s: %s" % (unit.__class__.__name__,
35                                repr(unit.identity())[:100])
36 RESERVE = LogCategory(128, message)
37
38 def message(classes, expr):
39     import dejavu
40     if isinstance(classes, dejavu.UnitJoin):
41         target = repr(classes)
42     else:
43         target = classes.__name__
44     return "RECALL %s: %r" % (target, expr)
45 RECALL = LogCategory(256, message)
46
47 def message(query, distinct):
48     d = ""
49     if distinct:
50         d = " (distinct)"
51     return "VIEW: %s%s" % (query, d)
52 VIEW = LogCategory(512, message)
53
54 def message(unit, forceSave):
55     fs = ""
56     if forceSave:
57         fs = " (forced)"
58     return "SAVE %s: %s%s" % (unit.__class__.__name__,
59                               repr(unit.identity())[:100], fs)
60 SAVE = LogCategory(1024, message)
61
62 def message(unit):
63     return "DESTROY %s: %s" % (unit.__class__.__name__,
64                                repr(unit.identity())[:100])
65 DESTROY = LogCategory(2048, message)
66
67 STORE = LogCategory(DDL | RESERVE | RECALL | VIEW | SAVE | DESTROY)
68
69 del message
Note: See TracBrowser for help on using the browser.