mirror of https://github.com/morpheus65535/bazarr
42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
|
# coding=utf-8
|
||
|
|
||
|
import io
|
||
|
import os
|
||
|
|
||
|
from flask import jsonify
|
||
|
from flask_restful import Resource
|
||
|
|
||
|
from ..utils import authenticate
|
||
|
from logger import empty_log
|
||
|
from get_args import args
|
||
|
|
||
|
|
||
|
class SystemLogs(Resource):
|
||
|
@authenticate
|
||
|
def get(self):
|
||
|
logs = []
|
||
|
with io.open(os.path.join(args.config_dir, 'log', 'bazarr.log'), encoding='UTF-8') as file:
|
||
|
raw_lines = file.read()
|
||
|
lines = raw_lines.split('|\n')
|
||
|
for line in lines:
|
||
|
if line == '':
|
||
|
continue
|
||
|
raw_message = line.split('|')
|
||
|
raw_message_len = len(raw_message)
|
||
|
if raw_message_len > 3:
|
||
|
log = dict()
|
||
|
log["timestamp"] = raw_message[0]
|
||
|
log["type"] = raw_message[1].rstrip()
|
||
|
log["message"] = raw_message[3]
|
||
|
if raw_message_len > 4 and raw_message[4] != '\n':
|
||
|
log['exception'] = raw_message[4].strip('\'').replace(' ', '\u2003\u2003')
|
||
|
logs.append(log)
|
||
|
|
||
|
logs.reverse()
|
||
|
return jsonify(data=logs)
|
||
|
|
||
|
@authenticate
|
||
|
def delete(self):
|
||
|
empty_log()
|
||
|
return '', 204
|