mirror of
https://github.com/TeamPGM/PagerMaid_Plugins.git
synced 2024-11-27 20:38:09 +00:00
autobackup 凌晨自动备份数据文件
This commit is contained in:
parent
8f2279ff86
commit
1290a1b8f7
33
autobackup.py
Normal file
33
autobackup.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
""" Pagermaid auto-backup plugin. """
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
from datetime import datetime
|
||||||
|
from distutils.util import strtobool
|
||||||
|
from pagermaid import config, redis_status, redis, scheduler, bot
|
||||||
|
from pagermaid.utils import upload_attachment
|
||||||
|
from pagermaid.modules.backup import make_tar_gz
|
||||||
|
|
||||||
|
|
||||||
|
@scheduler.scheduled_job("cron", day="*", hour="0", minute="0", second="20", id="backup_job")
|
||||||
|
async def run_every_1_day():
|
||||||
|
# remove mp3 , they are so big !
|
||||||
|
for i in os.listdir("data"):
|
||||||
|
if i.find(".mp3") != -1 or i.find(".jpg") != -1 or i.find(".flac") != -1 or i.find(".ogg") != -1:
|
||||||
|
os.remove(f"data{os.sep}{i}")
|
||||||
|
# backup redis
|
||||||
|
redis_data = {}
|
||||||
|
if redis_status():
|
||||||
|
for k in redis.keys():
|
||||||
|
data_type = redis.type(k)
|
||||||
|
if data_type == b'string':
|
||||||
|
v = redis.get(k)
|
||||||
|
redis_data[k.decode()] = v.decode()
|
||||||
|
with open(f"data{os.sep}redis.json", "w", encoding='utf-8') as f:
|
||||||
|
json.dump(redis_data, f, indent=4)
|
||||||
|
# run backup function
|
||||||
|
if strtobool(config['log']):
|
||||||
|
make_tar_gz(f"pagermaid_{datetime.now().date()}.tar.gz", ["data", "plugins", "config.yml"])
|
||||||
|
await upload_attachment(f"pagermaid_{datetime.now().date()}.tar.gz", int(config['log_chatid']), None)
|
||||||
|
os.remove(f"pagermaid_{datetime.now().date()}.tar.gz")
|
||||||
|
else:
|
||||||
|
make_tar_gz(f"pagermaid_backup.tar.gz", ["data", "plugins", "config.yml"])
|
10
list.json
10
list.json
@ -869,6 +869,16 @@
|
|||||||
"supported": true,
|
"supported": true,
|
||||||
"des-short": "傻妞机器人对接。",
|
"des-short": "傻妞机器人对接。",
|
||||||
"des": "把自己变成行走的傻妞。"
|
"des": "把自己变成行走的傻妞。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "autobackup",
|
||||||
|
"version": "1.00",
|
||||||
|
"section": "daily",
|
||||||
|
"maintainer": "xtaodada",
|
||||||
|
"size": "1.4 kb",
|
||||||
|
"supported": true,
|
||||||
|
"des-short": "凌晨自动备份。",
|
||||||
|
"des": "凌晨自动备份数据文件。"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user