Quantcast
Channel: Actualité – Journal d'un archiviste
Viewing all articles
Browse latest Browse all 18

[WordPress] message de confirmation de sauvegarde

$
0
0

Dans la lignée de l’article précédent, une fois la sauvegarde faite, je souhaite être informé de la fin de la sauvegarde et de la liste des fichiers à jour. J’ai rajouté un bout de script en python qui liste les fichiers de la sauvegarde journalière et envoie le tout à Telegram.

#!/usr/bin/python3
# coding: utf-8

import requests
import os
import time


path = '/media/backup/'
bot = ''
chatID = ''

class init(object):
    """ permet d'envoyer les messages sur Telegram
    - bot : l'identifiant du bot
    - chatID : identifiant du chat
    - send() : envoi un message à Telegram
    """
    def __init__(self, bot, chatID):
        """ charge la configuration """
        self.bot = bot
        self.chatID = chatID

    def send(self, message):
        """ envoi le message au bot """
        url = 'https://api.telegram.org/bot' + self.bot + '/sendMessage?chat_id=' + self.chatID + '&parse_mode=Markdown&text=' + message
        toSend = requests.get(url)
        return toSend.json()


if __name__ == '__main__': 
    message = init(bot, chatID)

    search_dir = path
    os.chdir(search_dir)

    # on récupère les fichiers
    files = filter(os.path.isfile, os.listdir(search_dir))
    files = [os.path.join(search_dir, f) for f in files]
    files.sort(key=lambda x: os.path.getmtime(x))
    jour = 60*60*24

    # on enlève les plus de 1 jour. 
    files = [f for f in files if os.path.getmtime(f) > time.time()-jour]

    # on envoie le message
    message.send('liste des fichiers de backup d\'aujourd\'hui'+' \n'.join(files))

Il envoie les messages toutes les nuits à 2h, via le cron


Viewing all articles
Browse latest Browse all 18

Trending Articles