1
2
3
4
5
6
7
8
9 """
10 Agent FreshClam
11 """
12
13 from zephir.monitor.agentmanager.agent import Agent
14 from zephir.monitor.agentmanager.data import TableData, HTMLData
15
16 from zephir.monitor.agentmanager import status
17 from os.path import isfile
18 from zephir.monitor.agentmanager.util import status_to_img
19 import time
20
21 freshclam_file = '/var/log/clamav/freshclam-status.log'
22
24 """
25 Utilisateurs connectes
26 """
35
36
37
38
39
40
42 ret = {}
43 try:
44 if isfile(freshclam_file):
45 execfile(freshclam_file, {}, ret)
46 if ret['STATUS'] == '0':
47 self.status = 1
48 status = 'On'
49 last_update = time.strftime("%d %b %Y %H:%M:%S", time.localtime(float(ret['DATE'])))
50 msg = 'Base antivirale mise à jour le %s' % last_update
51 else:
52 self.status = 0
53 status = 'Off'
54 msg = ret['MSG']
55 else:
56 self.status = 0
57 status = 'Off'
58 msg = "Le fichier %s n'existe pas" % freshclam_file
59 except Exception, e:
60 self.status = 0
61 status = 'Off'
62 msg = "Impossible de lire %s : %s" % (freshclam_file, e)
63 return [{'msg': msg, 'status': status}]
64
69
71 Agent.write_data(self)
72 if self.last_measure is not None:
73 self.table.table_data = self.last_measure.value
74