Je suis un débutant en exploitation et en maintenance. Après avoir récemment effectué un traitement simple des journaux d'entreprise, j'en ai ajouté un certain nombre à une liste, puis j'ai utilisé l'interface ES pour ajouter les données par lots à un autre ElasticSearch, puis je les ai affichées dans certains. façons. Il y a un problème ici. Si des données sont insérées, une exception se produit. Par exemple, l'hôte es à insérer plante, etc., mais il n'y a aucun problème avec la source de données. Cela devrait déplacer les données traitées vers le cache, puis arrêter le programme. (La source de données est kafka. Même si le programme est arrêté, il peut toujours être consommé après le redémarrage.)
Je voudrais donc demander, pour les programmes ou scripts python relativement légers, comment devrions-nous stocker ces exceptions lorsqu'elles se produisent ? sur les données stockées en premier ?
Lorsque es est anormal, une fois que le script py a capturé l'exception, vous pouvez utiliser
.cPickle
或者pickle
将处理好的数据序列化后保存到一个文件上(你可以理解成写入一个文件, 不同在于cPickle
和pickle
pour écrire des objets tels que des dictionnaires ou des listes directement dans des fichiers), puis attendre que votre es récupère et redémarrez le script py, puis le script donnera priorité pour détecter si ce fichier temporaire existe. S'il existe et n'est pas vide, les données qu'il contient seront supprimées et écrites dans es