Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(147)

Side by Side Diff: third_party/android/testrunner/logger.py

Issue 8322008: Upstream: Test script library from Android (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add a way to checkout specific version Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « third_party/android/testrunner/errors.py ('k') | third_party/android/testrunner/run_command.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #!/usr/bin/python2.4
2 #
3 #
4 # Copyright 2007, The Android Open Source Project
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 # http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17
18 """Simple logging utility. Dumps log messages to stdout, and optionally, to a
19 log file.
20
21 Init(path) must be called to enable logging to a file
22 """
23
24 import datetime
25
26 _LOG_FILE = None
27 _verbose = False
28 _log_time = True
29
30 def Init(log_file_path):
31 """Set the path to the log file"""
32 global _LOG_FILE
33 _LOG_FILE = log_file_path
34 print "Using log file: %s" % _LOG_FILE
35
36 def GetLogFilePath():
37 """Returns the path and name of the Log file"""
38 global _LOG_FILE
39 return _LOG_FILE
40
41 def Log(new_str):
42 """Appends new_str to the end of _LOG_FILE and prints it to stdout.
43
44 Args:
45 # new_str is a string.
46 new_str: 'some message to log'
47 """
48 msg = _PrependTimeStamp(new_str)
49 print msg
50 _WriteLog(msg)
51
52 def _WriteLog(msg):
53 global _LOG_FILE
54 if _LOG_FILE is not None:
55 file_handle = file(_LOG_FILE, 'a')
56 file_handle.write('\n' + str(msg))
57 file_handle.close()
58
59 def _PrependTimeStamp(log_string):
60 """Returns the log_string prepended with current timestamp """
61 global _log_time
62 if _log_time:
63 return "# %s: %s" % (datetime.datetime.now().strftime("%m/%d/%y %H:%M:%S"),
64 log_string)
65 else:
66 # timestamp logging disabled
67 return log_string
68
69 def SilentLog(new_str):
70 """Silently log new_str. Unless verbose mode is enabled, will log new_str
71 only to the log file
72 Args:
73 # new_str is a string.
74 new_str: 'some message to log'
75 """
76 global _verbose
77 msg = _PrependTimeStamp(new_str)
78 if _verbose:
79 print msg
80 _WriteLog(msg)
81
82 def SetVerbose(new_verbose=True):
83 """ Enable or disable verbose logging"""
84 global _verbose
85 _verbose = new_verbose
86
87 def SetTimestampLogging(new_timestamp=True):
88 """ Enable or disable outputting a timestamp with each log entry"""
89 global _log_time
90 _log_time = new_timestamp
91
92 def main():
93 pass
94
95 if __name__ == '__main__':
96 main()
OLDNEW
« no previous file with comments | « third_party/android/testrunner/errors.py ('k') | third_party/android/testrunner/run_command.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698