23
23
# This will get replaced with a git SHA1 when you do a git archive
24
24
__revision__ = '$Format:%H$'
25
25
26
- import datetime
27
26
import os
28
- from sextante .core .SextanteUtils import SextanteUtils
29
- from sextante .core .SextanteConfig import SextanteConfig
30
27
import codecs
28
+ import datetime
31
29
from PyQt4 import QtGui
30
+
31
+ from sextante .core .SextanteUtils import SextanteUtils
32
+ from sextante .core .SextanteConfig import SextanteConfig
33
+
32
34
class SextanteLog ():
33
35
34
36
LOG_ERROR = "ERROR"
35
37
LOG_INFO = "INFO"
36
38
LOG_WARNING = "WARNING"
37
39
LOG_ALGORITHM = "ALGORITHM"
40
+ DATE_FORMAT = u"%a %b %d %Y %H:%M:%S" .encode ("utf-8" )
38
41
recentAlgs = []
39
42
40
43
@staticmethod
41
44
def startLogging ():
42
45
if os .path .isfile (SextanteLog .logFilename ()):
43
- logfile = open (SextanteLog .logFilename (), "a" )
46
+ logfile = codecs . open (SextanteLog .logFilename (), "a" , encoding = "utf-8 " )
44
47
else :
45
- logfile = open (SextanteLog .logFilename (), "w" )
46
- logfile .write ("Started logging at " + datetime .datetime .now ().strftime ("%a %b %d %Y %H:%M:%S " ) + "\n " )
48
+ logfile = codecs . open (SextanteLog .logFilename (), "w" , encoding = "utf-8 " )
49
+ logfile .write ("Started logging at " + datetime .datetime .now ().strftime (SextanteLog . DATE_FORMAT ). decode ( "utf-8 " ) + "\n " )
47
50
logfile .close ()
48
51
49
52
@staticmethod
50
53
def logFilename ():
51
54
batchfile = SextanteUtils .userFolder () + os .sep + "sextante_qgis.log"
52
55
return batchfile
53
56
54
-
55
57
@staticmethod
56
58
def addToLog (msgtype , msg ):
57
59
try : #it seems that this fails sometimes depending on the msg added:
@@ -63,8 +65,8 @@ def addToLog(msgtype, msg):
63
65
text = a
64
66
else :
65
67
text = msg .replace ("\n " , "|" )
66
- line = msgtype + "|" + datetime .datetime .now ().strftime ("%a %b %d %Y %H:%M:%S " ) + "|" + text + "\n "
67
- logfile = open (SextanteLog .logFilename (), "a" )
68
+ line = msgtype + "|" + datetime .datetime .now ().strftime (SextanteLog . DATE_FORMAT ). decode ( "utf-8 " ) + "|" + text + "\n "
69
+ logfile = codecs . open (SextanteLog .logFilename (), "a" , encoding = "utf-8 " )
68
70
#logfile = codecs.open(SextanteLog.logFilename(), "a", encoding='utf-8')
69
71
logfile .write (line )
70
72
logfile .close ()
@@ -78,7 +80,6 @@ def addToLog(msgtype, msg):
78
80
except :
79
81
pass
80
82
81
-
82
83
@staticmethod
83
84
def getLogEntries ():
84
85
entries = {}
@@ -115,7 +116,6 @@ def getLogEntries():
115
116
entries [SextanteLog .LOG_WARNING ] = warnings
116
117
return entries
117
118
118
-
119
119
@staticmethod
120
120
def getRecentAlgorithms ():
121
121
recentAlgsSetting = SextanteConfig .getSetting (SextanteConfig .RECENT_ALGORITHMS )
@@ -125,14 +125,11 @@ def getRecentAlgorithms():
125
125
pass
126
126
return SextanteLog .recentAlgs
127
127
128
-
129
128
@staticmethod
130
129
def clearLog ():
131
130
os .unlink (SextanteLog .logFilename ())
132
131
SextanteLog .startLogging ()
133
132
134
-
135
-
136
133
class LogEntry ():
137
134
def __init__ (self , date , text ):
138
135
self .date = date
@@ -141,8 +138,6 @@ def __init__(self, date, text):
141
138
import re
142
139
import time
143
140
144
-
145
-
146
141
#===============================================================================
147
142
148
143
#this code has been take from pytailer
@@ -173,7 +168,7 @@ class Tailer(object):
173
168
174
169
def __init__ (self , filename , read_size = 1024 , end = False ):
175
170
self .read_size = read_size
176
- self .file = open (filename )
171
+ self .file = codecs . open (filename , encoding = "utf-8" )
177
172
self .start_pos = self .file .tell ()
178
173
if end :
179
174
self .seek_end ()
@@ -259,8 +254,6 @@ def tail(self, lines=10):
259
254
else :
260
255
return []
261
256
262
-
263
-
264
257
def __iter__ (self ):
265
258
return self .follow ()
266
259
@@ -269,7 +262,3 @@ def close(self):
269
262
270
263
def tail (file , lines = 200 ):
271
264
return Tailer (file ).tail (lines )
272
-
273
-
274
-
275
-
0 commit comments