py.lib
30:fe4a96d06243 Browse Files
. Используем в логах monotonic вместо time
log/slog_console.py log/slog_syslogger.py log/tiny_slog.py
1.1 --- a/log/slog_console.py Sun Jul 17 22:21:37 2022 +0300 1.2 +++ b/log/slog_console.py Sun Jul 17 22:26:31 2022 +0300 1.3 @@ -9,7 +9,7 @@ 1.4 "#": Alert 1.5 """ 1.6 1.7 -from time import time 1.8 +from time import monotonic 1.9 from datetime import timedelta 1.10 from sys import exc_info, stderr, stdout 1.11 from traceback import extract_tb, extract_stack 1.12 @@ -21,23 +21,23 @@ 1.13 self.prefix = '' 1.14 else: 1.15 self.prefix = '%s :: ' % name 1.16 - self.tsAll = time() 1.17 + self.tsAll = monotonic() 1.18 self.ts = self.tsAll 1.19 1.20 def getTime(self): 1.21 - return time() - self.ts 1.22 + return monotonic() - self.ts 1.23 1.24 def reset(self): 1.25 - self.ts = time() 1.26 + self.ts = monotonic() 1.27 self.tsAll = self.ts 1.28 1.29 def __str__(self): 1.30 - ts = time() 1.31 + ts = monotonic() 1.32 return self.prefix + '%s(%.4f)' % (timedelta(seconds=(ts - self.tsAll)), ts - self.ts) 1.33 1.34 def __call__(self, msg): 1.35 _buf = '%s | %s' % (self, msg) 1.36 - self.ts = time() 1.37 + self.ts = monotonic() 1.38 return _buf 1.39 1.40
2.1 --- a/log/slog_syslogger.py Sun Jul 17 22:21:37 2022 +0300 2.2 +++ b/log/slog_syslogger.py Sun Jul 17 22:26:31 2022 +0300 2.3 @@ -13,7 +13,7 @@ 2.4 2.5 import syslog 2.6 from sys import exc_info 2.7 -from time import time 2.8 +from time import monotonic 2.9 from traceback import extract_tb, extract_stack 2.10 from datetime import timedelta 2.11 from typing import Any 2.12 @@ -69,23 +69,23 @@ 2.13 self.prefix = '' 2.14 else: 2.15 self.prefix = f'{name} :: ' 2.16 - self.tsAll = time() 2.17 + self.tsAll = monotonic() 2.18 self.ts = self.tsAll 2.19 2.20 def get_time(self): 2.21 - return time() - self.ts 2.22 + return monotonic() - self.ts 2.23 2.24 def reset(self): 2.25 - self.ts = time() 2.26 + self.ts = monotonic() 2.27 self.tsAll = self.ts 2.28 2.29 def __str__(self): 2.30 - ts = time() 2.31 + ts = monotonic() 2.32 return self.prefix + '%s(%.4f)' % (timedelta(seconds=(ts - self.tsAll)), ts - self.ts) 2.33 2.34 def __call__(self, msg: Any) -> str: 2.35 _buf = f'{self} | {msg}' 2.36 - self.ts = time() 2.37 + self.ts = monotonic() 2.38 return _buf 2.39 2.40
3.1 --- a/log/tiny_slog.py Sun Jul 17 22:21:37 2022 +0300 3.2 +++ b/log/tiny_slog.py Sun Jul 17 22:26:31 2022 +0300 3.3 @@ -10,7 +10,7 @@ 3.4 "#": Alert 3.5 3.6 """ 3.7 -from time import time 3.8 +from time import monotonic 3.9 from datetime import timedelta 3.10 3.11 import syslog 3.12 @@ -24,23 +24,23 @@ 3.13 self.prefix = '' 3.14 else: 3.15 self.prefix = '%s :: ' % name 3.16 - self.tsAll = time() 3.17 + self.tsAll = monotonic() 3.18 self.ts = self.tsAll 3.19 3.20 def getTime(self): 3.21 - return time() - self.ts 3.22 + return monotonic() - self.ts 3.23 3.24 def reset(self): 3.25 - self.ts = time() 3.26 + self.ts = monotonic() 3.27 self.tsAll = self.ts 3.28 3.29 def __str__(self): 3.30 - ts = time() 3.31 + ts = monotonic() 3.32 return self.prefix + '%s(%.4f)' % (timedelta(seconds=(ts - self.tsAll)), ts - self.ts) 3.33 3.34 def __call__(self, msg): 3.35 _buf = '%s | %s' % (self, msg) 3.36 - self.ts = time() 3.37 + self.ts = monotonic() 3.38 return _buf 3.39 3.40