1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 from spacewalk.common.rhnLog import log_debug
19 from spacewalk.server import rhnSQL
20
21
22 MAX_SUMMARY = 128
23 MAX_DETAILS = 4000
24
25
27
30
31 - def add_history(self, summary, details=""):
32 """ Add a history event to the server. """
33 log_debug(4, summary)
34 if details == '':
35 self.__h.append((summary[:MAX_SUMMARY], None))
36 else:
37 self.__h.append((summary[:MAX_SUMMARY], details[:MAX_DETAILS]))
38
39 - def save_history_byid(self, server_id):
40 log_debug(3, server_id, "%d history events" % len(self.__h))
41 if not self.__h:
42 return 0
43 hist = rhnSQL.prepare("""
44 insert into rhnServerHistory
45 (id,
46 server_id,
47 summary,
48 details)
49 values
50 (sequence_nextval('rhn_event_id_seq'),
51 :server_id,
52 :summary,
53 :details)
54 """)
55 summaries = [x[0] for x in self.__h]
56 details = [x[1] for x in self.__h]
57 server_ids = [server_id] * len(self.__h)
58 hist.executemany(server_id=server_ids, summary=summaries,
59 details=details)
60
61 self.__h = []
62 return 0
63