Skip to content

Commit 5a933c8

Browse files
author
rob
committed
finished file logging changes
1 parent 3af54da commit 5a933c8

File tree

8 files changed

+45
-404
lines changed

8 files changed

+45
-404
lines changed

sysdata/mongodb/mongo_log.py renamed to sysdata/_DEPRECATED/mongo_log.py

-66
Original file line numberDiff line numberDiff line change
@@ -20,72 +20,6 @@
2020
LOG_COLLECTION_NAME = "Logs"
2121

2222

23-
class logToMongod(logToDb):
24-
"""
25-
Logs to a mongodb
26-
27-
"""
28-
29-
def __init__(
30-
self,
31-
type: str,
32-
data=None,
33-
log_level: str = "Off",
34-
mongo_db: mongoDb = arg_not_supplied,
35-
**kwargs,
36-
):
37-
super().__init__(type=type, data=data, log_level=log_level, **kwargs)
38-
self._mongo_data = mongoDataWithSingleKey(
39-
LOG_COLLECTION_NAME, LOG_RECORD_ID, mongo_db=mongo_db
40-
)
41-
42-
@property
43-
def mongo_data(self):
44-
return self._mongo_data
45-
46-
def get_next_log_id(self) -> int:
47-
# slightly complicated to deal with race conditions
48-
invalid_id = True
49-
counter = 0
50-
while invalid_id:
51-
last_id = self._get_last_used_log_id()
52-
next_id = last_id + 1
53-
reserved_okay = self._reserve_log_id(next_id)
54-
if reserved_okay:
55-
break
56-
counter = counter + 1
57-
if counter > 100:
58-
raise Exception("Couldn't reserve log ID")
59-
60-
return next_id
61-
62-
def _get_last_used_log_id(self) -> int:
63-
"""
64-
Get last used log id. Returns None if not present
65-
66-
:return: int or None
67-
"""
68-
current_max = self.mongo_data.get_max_of_keys()
69-
if current_max == None:
70-
return 0
71-
72-
return current_max
73-
74-
def _reserve_log_id(self, next_id: int) -> bool:
75-
try:
76-
self.mongo_data.add_data(next_id, {})
77-
except existingData:
78-
return False
79-
else:
80-
return True
81-
82-
def add_log_record(self, log_entry: logEntry):
83-
record_as_dict = log_entry.log_as_dict()
84-
key = record_as_dict[LOG_RECORD_ID]
85-
86-
self.mongo_data.add_data(key, record_as_dict, allow_overwrite=True)
87-
88-
8923
class mongoLogData(logData):
9024
def __init__(
9125
self, mongo_db: mongoDb = arg_not_supplied, log=logtoscreen("mongoLogData")

syslogdiag/_DEPRECATED/__init__.py

Whitespace-only changes.
+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import datetime
2+
import itertools
3+
4+
from syscore.constants import arg_not_supplied
5+
from syscore.exceptions import missingData
6+
from sysdata.base_data import baseData
7+
from syslogdiag.logger import logger, DEFAULT_LOG_LEVEL
8+
from syslogdiag.log_entry import INVERSE_MAP, LEVEL_ID, logEntry
9+
from syslogdiag.log_to_screen import logtoscreen
10+
11+
from syslogdiag.email_via_db_interface import send_production_mail_msg
12+
13+
LOG_COLLECTION_NAME = "Logs"
14+
EMAIL_ON_LOG_LEVEL = [4]
15+
16+
17+
class logData(baseData):
18+
def __init__(self, log: logger = logtoscreen("logData")):
19+
super().__init__(log=log)
20+
21+
def delete_log_items_from_before_n_days(self, lookback_days: int = 365):
22+
# need something to delete old log records, eg more than x months ago
23+
24+
raise NotImplementedError

syslogdiag/database_log.py

-221
This file was deleted.

syslogdiag/log_to_file.py

Whitespace-only changes.

sysproduction/_DEPRECATED/__init__.py

Whitespace-only changes.

sysproduction/_DEPRECATED/logs.py

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
from sysdata._DEPRECATED.mongo_log import mongoLogData
2+
from sysdata.data_blob import dataBlob
3+
from syslogdiag._DEPRECATED.database_log import logData
4+
from sysproduction.data.generic_production_data import productionDataLayerGeneric
5+
6+
#### BASICALLY DEPRECATED KEEP ON TO CLEAN OLD LOGS OUT
7+
8+
9+
class diagLogs(productionDataLayerGeneric):
10+
def _add_required_classes_to_data(self, data) -> dataBlob:
11+
data.add_class_object(mongoLogData)
12+
return data
13+
14+
@property
15+
def db_log_data(self) -> logData:
16+
return self.data.db_log
17+
18+
def delete_log_items_from_before_n_days(self, days: int = 365):
19+
# need something to delete old log records, eg more than x months ago
20+
21+
self.db_log_data.delete_log_items_from_before_n_days(lookback_days=days)

0 commit comments

Comments
 (0)