Verwenden Sie standalone gsutil? Oder haben Sie es als Teil der Installation des Cloud SDK (gcloud) erhalten?
Wenn der Job lange Zeit nicht mehr reagiert, kann es mehrmals wiederholt werden. Um zu testen, ob dies der Fall ist, können Sie die num_retries Option sehr klein sein, aber über 0 (zB 1) entweder in Ihrer .boto
Datei oder die die Befehlsargumente über diese Option:
gsutil -o 'Boto:num_retries=1' <rest of command here...>
Eine zweite Sache Zu beachten (zumindest für die Version von gsutil, die nicht mit gcloud geliefert wird) ist, dass gsutil standardmäßig in Ihrem Home-Verzeichnis nach Ihrer Boto-Konfigurationsdatei (die die zu verwendenden Anmeldeinformationen angibt) sucht. Wenn Sie gsutil als einen anderen Benutzer ausführen (möglicherweise wird Ihr SQL Agent-Job als eigener dedizierter Benutzer ausgeführt?), Sucht er nach einer .boto
Datei in , die das Home-Verzeichnis des Benutzers enthält. Das gleiche sollte für die gcloud-Version gelten - gcloud verwendet die Anmeldedaten basierend auf dem Benutzer, der es ausführt. Sie können dies vermeiden, indem Sie Ihre .boto-Datei an eine Stelle kopieren, von der der Job gelesen werden darf, und die Umgebungsvariable BOTO_CONFIG auf diesen Pfad setzen, bevor Sie gsutil ausführen. Von der cmd Shell, würde dies in etwa so aussehen:
set BOTO_CONFIG=C:\some\path\.boto && gsutil <rest of command here...>
Hinweis: Wenn Sie nicht sicher sind, welche Boto Config-Datei, die Sie normalerweise verwenden, können Sie, indem Sie gsutil version -l
und Blick auf der Linie herausfinden, dass Displays Ihre Konfigurationspfad (e).
Danke dafür. Es stellte sich heraus, dass die BOTO_CONFIG das Problem war. – jimmy