Beispiel #1
0
def test_print(i):
    if i.wd == 1:
        print_ascii("Importation " + i)
        whatisit(i.wd)
    else:
        log_print(
            "rien n'a faire, événement d'un dossier fils wd : %d" % (i.wd), i)
Beispiel #2
0
def log_print(*text):
    """
	Fonction de login automatique
	"""
    f_log = codecs.open(fichier_log, "a", encoding="utf-8")
    d = datetime.datetime.now().strftime("%a, %Y-%m-%d %X ")
    for t in text:
        if console == True:
            print_ascii(t)
        l = d + unicode(t) + "\n"
        f_log.writelines(l)
    f_log.close()
Beispiel #3
0
 def __str__(self):
     print_ascii(__doc__)
Beispiel #4
0
def main():
    signal.signal(signal.SIGINT, sig_iterrupt)
    connection_db_ouverte = False
    try:
        imp = {}
        i = {}
        imp.update({"sap": i})
        i.update({"nom": "Navette SAP"})
        i.update({"dossier": dossier_import_navette_sap})
        i.update({"fonction": gestion_importation_sap})
        i.update({
            "thread":
            ImportThread(nom=imp["sap"]["nom"],
                         dossier=imp["sap"]["dossier"],
                         fonction=imp["sap"]["fonction"])
        })
        imp["sap"]["thread"].start()

        i = {}
        imp.update({"vincent": i})
        i.update({"nom": "Solution Vincent"})
        i.update({"dossier": dossier_import_solution_vincent})
        i.update({"fonction": gestion_importation_vincent})
        i.update({
            "thread":
            ImportThread(nom=imp["vincent"]["nom"],
                         dossier=imp["vincent"]["dossier"],
                         fonction=imp["vincent"]["fonction"])
        })
        imp["vincent"]["thread"].start()

        i = {}
        imp.update({"generic": i})
        i.update({"nom": "Fichier generic"})
        i.update({"dossier": dossier_import_generic})
        i.update({"fonction": gestion_importation_generic})
        i.update({
            "thread":
            ImportThread(nom=imp["generic"]["nom"],
                         dossier=imp["generic"]["dossier"],
                         fonction=imp["generic"]["fonction"])
        })
        imp["generic"]["thread"].start()

        sig = {}
        sig.update({"stop": False})

        while sig["stop"] == False:
            for i in imp.keys():
                imp[i]["thread"].join_with_exception()
                list_fichier = os.listdir(imp[i]["dossier"])
                if len(list_fichier) > 2:
                    for f in list_fichier:
                        print_ascii(f)
                        if os.path.isfile(os.path.join(imp[i]["dossier"], f)):
                            log_print(":-( Fichier sans signal dans %s: %s" %
                                      (imp[i]["nom"], f))
                            e = MyEvent()
                            e.name = f
                            e.path = imp[i]["dossier"]
                            e.pathname = os.path.join(imp[i]["dossier"], f)
                            imp[i]["fonction"](e)
                            connection_db_ouverte = True
                            time.sleep(2)


#							break
            if connection_db_ouverte == True:
                log_print("Fermeture de la connection sur la base de donnée")
                connection.close()
                connection_db_ouverte = False
            time.sleep(300)
        connection.close()
        arret_importation(imp)

    except:
        tb = traceback.format_exc()
        log_print("!!!!! ERREUR !!!!!")
        log_print(tb)
        log_print("!!!!! ERREUR !!!!!\n\n")
        log_print("Erreur => arrêt deamon")

        mail_corps = "Le daemon d'importation des fichier à craché\nToutes les importations sont stoppé\n\n"
        mail_corps = "Consulter les log : tail -n30 /var/log/django_io.log \n"
        mail_corps = "Arrêter le daemon totalement : /var/www/django/prod/daemon/django_io.bash force-stop \n\n"
        mail_corps = "Redemmarrer le daemon : /var/www/django/prod/daemon/django_io.bash start \n"
        mail_corps = " : \n"

        mail_corps += tb
        m = mail.Mail(mail_corps)
        m.from_("*****@*****.**")
        m.reply_to("*****@*****.**")
        #m.to(["*****@*****.**","*****@*****.**"])
        m.to(["*****@*****.**", "*****@*****.**"])
        if version.status_developement["data"] == "prod":
            m.subject("Stock Labo Paris, Erreur importation de fichier")
        else:
            m.subject(
                "Ne pas tenir compte de cette email, je fait des tests sur le serveur, charly"
            )
        #m.send("smtp.laposte.net", "*****@*****.**", "charly.gontero", "1Addyson")
        m.send(smtp="par-srv-cas01.eu.takasago.com",
               expediteur="*****@*****.**",
               user=None,
               password=None,
               starttls=False)

        arret_importation(imp)

    log_print("Deamon stoppé")
    exit(0)