diff options
Diffstat (limited to 'src/db/sql.py')
-rw-r--r-- | src/db/sql.py | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/src/db/sql.py b/src/db/sql.py index c47a69c..858ab6b 100644 --- a/src/db/sql.py +++ b/src/db/sql.py @@ -15,11 +15,12 @@ metadata = Base.metadata class Log(Base): __tablename__ = "log" - id = Column(Integer, primary_key=True) - timestamp = Column(Date, nullable=False, - default=datetime.datetime.utcnow) - username = Column(Text, nullable=False) - logtext = Column(Text, nullable=False) + id = Column(Integer, primary_key=True, server_default=text( + "nextval('log_id_seq'::regclass)")) + name = Column(Text, nullable=False) + level = Column(Text, nullable=False) + msg = Column(Text, nullable=False) + func = Column(Text, nullable=True) def as_dict(self): """Return JSON serializable dict.""" @@ -34,12 +35,17 @@ class Log(Base): return d @classmethod - def add(cls, username, logtext): - with sqla_session() as session: - logentry = Log() - logentry.username = username - logentry.logtext = logtext - session.add(logentry) + def add(cls, name, level, msg, func=""): + try: + with sqla_session() as session: + logentry = Log() + logentry.name = name + logentry.level = level + logentry.msg = msg + logentry.func = func + session.add(logentry) + except Exception as e: + print(f"Failed to add logentry: {e}") class Scanner(Base): |