/ lib / python / qtvcp / lib / machine_log.py
machine_log.py
 1  from qtvcp.core import Status, Info
 2  
 3  import os
 4  import time
 5  
 6  # Set up logging
 7  from qtvcp import logger
 8  log = logger.getLogger(__name__)
 9  # Set the log level for this module
10  # log.setLevel(logger.INFO) # One of DEBUG, INFO, WARNING, ERROR, CRITICAL
11  
12  STATUS = Status()
13  INFO = Info()
14  
15  
16  class MachineLogger():
17      def __init__(self):
18          STATUS.connect('update-machine-log', self.log_it)
19          self.mlp = os.path.expanduser(INFO.MACHINE_LOG_HISTORY_PATH)
20  
21      def log_it(self, w, message, option):
22          if option == 'TIME':
23              self.log_message_time(message)
24          elif option == 'DATE':
25              self.log_message_date(message)
26          elif option == 'DELETE':
27              self.delete_log()
28          elif option == 'INITIAL':
29              self.initial_greeting()
30          else:
31              self.log_message(message)
32  
33      def initial_greeting(self):
34          try:
35              timestamp = time.strftime("%a, %b %d %Y %X ---\n")
36              fp = open(self.mlp, 'a')
37  
38              #fp.write(""" $$$$$$\  $$$$$$$$\ """)
39              #fp.write('\n')
40              #fp.write('''$$  __$$\ \__$$  __|''')
41              #fp.write('\n')
42              #fp.write('$$ /  $$ |   $$ |  $$$$$$$\  $$$$$$$\  $$$$$$\   $$$$$$\   $$$$$$\  $$$$$$$\  ')
43              #fp.write('\n')
44              #fp.write('$$ |  $$ |   $$ | $$  _____|$$  _____|$$  __$$\ $$  __$$\ $$  __$$\ $$  __$$\ ')
45              #fp.write('\n')
46              #fp.write('$$ |  $$ |   $$ | \$$$$$$\  $$ /      $$ |  \__|$$$$$$$$ |$$$$$$$$ |$$ |  $$ |')
47              #fp.write('\n')
48              #fp.write('$$ $$\$$ |   $$ |  \____$$\ $$ |      $$ |      $$   ____|$$   ____|$$ |  $$ |')
49              #fp.write('\n')
50              #fp.write('\$$$$$$ /    $$ | $$$$$$$  |\$$$$$$$\ $$ |      \$$$$$$$\ \$$$$$$$\ $$ |  $$ |')
51              #fp.write('\n')
52              #fp.write(' \___$$$\    \__| \_______/  \_______|\__|       \_______| \_______|\__|  \__|')
53              #fp.write('\n')
54              #fp.write('     \___|        ')
55  
56              fp.write('--- Qtvcp Screen Started on: ' + timestamp)
57              fp.close()
58          except:
59              log.warning('machine log history: path valid?')
60  
61      def log_message_time(self, message):
62          try:
63              timestamp = time.strftime("%a%d %H:%M ")
64              fp = open(self.mlp, 'a')
65              fp.write(timestamp + message + "\n")
66              fp.close()
67          except:
68              log.warning('machine log history: path valid?: {}'.format(fp))
69          STATUS.emit('machine-log-changed')
70  
71      def log_message_date(self, message):
72          try:
73              timestamp = time.strftime("%a, %b %d %Y %X ---\n")
74              fp = open(self.mlp, 'a')
75              fp.write(timestamp + message)
76              fp.close()
77          except:
78              log.warning('machine log history: path valid?')
79          STATUS.emit('machine-log-changed')
80  
81      def log_message(self, message):
82          try:
83              fp = open(self.mlp, 'a')
84              fp.write(message)
85              fp.close()
86          except:
87              log.warning('machine log history: path valid?')
88          STATUS.emit('machine-log-changed')
89  
90      def delete_log(self):
91          fp = open(self.mlp, 'w')
92          fp.write('')
93          fp.close()
94          STATUS.emit('machine-log-changed')
95  
96