JMousqueton / VeeamLogAnonymizer

Anonymize Veeam Log files
https://community.veeam.com/script-library-67/introducing-a-veeam-backup-replication-log-anonymization-script-5696
GNU General Public License v3.0
6 stars 0 forks source link

Cannot access local variable 'full_output_directory' where it is not associated with a value #1

Closed eVidANTE closed 10 months ago

eVidANTE commented 10 months ago

Bonjour,

Merci pour votre projet.

Je ne connais pas du tout python, quand j'essaie de lancer le script avec la commande :

python3 VeeamLogAnonymizer.py -i ./log/VeeamBackupManager.log -o ./anonymized

J'obtiens l'erreur :

File "/home/prod/log_veeam/VeeamLogAnonymizer-main/VeeamLogAnonymizer.py", line 546, in main if not os.path.exists(full_output_directory) and args.force: ^^^^^^^^^^^^^^^^^^^^^ UnboundLocalError: cannot access local variable 'full_output_directory' where it is not associated with a value

Mon Environnement :

Almalinux 8.8

platform-python.x86_64 3.6.8-51.el8_8.1.alma @baseos platform-python-pip.noarch 9.0.3-22.el8 @anaconda platform-python-setuptools.noarch 39.2.0-7.el8 @baseos python3-dateutil.noarch 1:2.6.1-6.el8 @anaconda python3-dbus.x86_64 1.2.4-15.el8 @anaconda python3-decorator.noarch 4.2.1-2.el8 @anaconda python3-dnf.noarch 4.7.0-16.el8_8.alma @baseos python3-dnf-plugins-core.noarch 4.0.21-19.el8_8 @baseos python3-firewall.noarch 0.9.3-13.el8 @anaconda python3-gobject-base.x86_64 3.28.3-2.el8 @anaconda python3-gpg.x86_64 1.13.1-11.el8 @anaconda python3-hawkey.x86_64 0.63.0-14.el8_8.alma @baseos python3-jmespath.noarch 0.9.0-11.el8 @appstream python3-libcomps.x86_64 0.1.18-1.el8 @anaconda python3-libdnf.x86_64 0.63.0-14.el8_8.alma @baseos python3-libs.x86_64 3.6.8-51.el8_8.1.alma @baseos python3-libselinux.x86_64 2.9-8.el8 @baseos python3-linux-procfs.noarch 0.7.1-1.el8 @baseos python3-nftables.x86_64 1:0.9.3-26.el8 @anaconda python3-perf.x86_64 4.18.0-477.13.1.el8_8 @baseos python3-pip-wheel.noarch 9.0.3-22.el8 @anaconda python3-pyudev.noarch 0.21.0-7.el8 @anaconda python3-rpm.x86_64 4.14.3-26.el8 @baseos python3-setuptools-wheel.noarch 39.2.0-7.el8 @baseos python3-six.noarch 1.11.0-8.el8 @anaconda python3-slip.noarch 0.6.4-13.el8 @anaconda python3-slip-dbus.noarch 0.6.4-13.el8 @anaconda python3-syspurpose.x86_64 1.28.36-2.el8.alma @baseos python3-systemd.x86_64 234-8.el8 @baseos python3-unbound.x86_64 1.16.2-5.el8 @appstream python3.11.x86_64 3.11.2-2.el8_8.1 @appstream python3.11-cffi.x86_64 1.15.1-1.el8 @appstream python3.11-cryptography.x86_64 37.0.2-5.el8 @appstream python3.11-libs.x86_64 3.11.2-2.el8_8.1 @appstream python3.11-pip-wheel.noarch 22.3.1-2.el8 @appstream python3.11-ply.noarch 3.11-1.el8 @appstream python3.11-pycparser.noarch 2.20-1.el8 @appstream python3.11-pyyaml.x86_64 6.0-1.el8 @appstream python3.11-setuptools-wheel.noarch 65.5.1-2.el8 @appstream python3.11-six.noarch 1.16.0-1.el8 @appstream

Petite précision : J'utilise Veeam v11 (mais j'ai pas l'impression que le script échoue à cause de ça)

JMousqueton commented 10 months ago

Bonjour,

Je pense avoir trouvé l'erreur. Je corrige dans l'après midi et je te tiens informé.

Julien.

JMousqueton commented 10 months ago

Corrigé avec https://github.com/JMousqueton/VeeamLogAnonymizer/commit/55e52f87d1c624ab878f694d2095e13713077954

eVidANTE commented 10 months ago

Merci, je pense que cette modification a corrigé la première erreur.

Cependant j'ai une nouvelle erreur.

Collecting information Processing anonymizing of 300 file(s) ... Fatal Error processing : chemin/Driver.VeeamFLR.log ---> chemin/anonymous/Driver.VeeamFLR.log

Quand j'enlève ce fichier de logs, il écrit la même chose avec d'autres fichiers de logs qui suivent. (Mais en mettant 299 file(s))

Alors pour cette erreur ça peut être avoir son importance le fait que je sois en v11 sur Veeam.

Une idée ?

JMousqueton commented 10 months ago

Oui

C'est une erreur de copie vers chemin/anonymous

Ce chemin existe ? Si non ajoute -f pour forcer la création des répertoires.

Je vais mieux gérer les erreurs.

eVidANTE commented 10 months ago

En effet je m'étais emmêler les pinceaux sur la dernière commande. le -f a corrigé l'erreur.

10 minutes pour exécuter le script, merci beaucoup !