Python 2 wird von der Community nicht mehr unterstützt. Wir empfehlen die Migration von Python 2-Anwendungen zu Python 3.

Befehlszeilenargumente für appcfg.py

Für den Befehl appcfg.py können eine Reihe von Optionen, eine Aktion sowie Argumente für die Aktion angegeben werden. Dieser Befehl wird für eine Vielzahl von Aufgaben zur Anwendungsverwaltung wie das Bereitstellen von Anwendungen und das Aktualisieren der Datenspeicherindexe verwendet.

Das appcfg-Tool ist nur im ursprünglichen App Engine SDK enthalten, das Sie mit dem ursprünglichen App Engine SDK for Python 2 herunterladen und installieren können.

Das App Engine SDK wird häufig aktualisiert, deshalb ist diese Liste der Argumente möglicherweise nicht aktuell. Geben Sie appcfg.py help ein, um die vollständige Liste aller verfügbaren Aktionen zu erhalten. Geben Sie appcfg.py help <action> ein, wenn Sie die Details zu einer bestimmten Aktion sehen möchten.

update

appcfg.py [options] update <app-directory>|<files...>

Die Aktualisierungsaktion erstellt oder aktualisiert die Version der Anwendung, die in der Datei app.yaml auf der obersten Ebene des Verzeichnisses angegeben ist.

Wenn Sie ein Verzeichnis angeben, müssen darin die Datei app.yaml und alle anderen Dateien enthalten sein, die für die Anwendung oder das Modul erforderlich sind, das in der Datei app.yaml festgelegt ist.

Wenn das Verzeichnis globale Einstellungsdateien für die Anwendung enthält (index.yaml, queues.yaml, dispatch.yaml, dos.yaml, cron.yaml), stellen Sie diese Konfigurationsdatei mit dem jeweils dafür vorgesehenen Aktualisierungsbefehl bereit. Verwenden Sie beispielsweise update_dispatch zum Bereitstellen der Weiterleitungsdatei, update_cron zum Bereitstellen der Cron-Datei und so weiter.

Der Befehl folgt symbolischen Links und lädt alle Dateien rekursiv auf den Server hoch. Temporäre Dateien oder Quellcodesteuerdateien wie foo~, .svn/* werden übersprungen.

Verwenden Sie das Argument "files", um eine oder mehrere YAML-Dateien hochzuladen, die Module definieren. In der Befehlszeile können keine anderen Arten von YAML-Dateien aufgeführt werden. Nur die angegebenen Module werden aktualisiert.

Für update gilt die folgende Option:

--max_size
Maximale Größe einer hochzuladenden Datei (in Byte).
--no_precompilation
Deaktiviert die automatische Python-Vorkompilierung; die Vorkompilierung erhöht die Leistung einer Anwendung und reduziert den Zeitaufwand für den Import eines Python-Moduls oder einer Python-Datei. Dadurch kann die erste von einer Anwendungsinstanz bearbeitete Anfrage schneller verarbeitet werden. Wenn bei der Bereitstellung der Anwendung Vorkompilierungsfehler auftreten, versuchen Sie, diesen Parameter anzugeben.

help

appcfg.py help <action>
Zeigt eine Hilfemeldung zu der entsprechenden Aktion an und beendet das Programm.

cron_info

appcfg.py [options] cron_info <app-directory>
Zeigt Informationen zur Konfiguration der geplanten Aufgabe (cron) an, einschließlich der erwarteten Zeitpunkte der nächsten Ausführungen. Standardmäßig werden die Zeitpunkte der nächsten fünf Ausführungen angezeigt. Sie können die Anzahl der zukünftigen Ausführungen, für die der Zeitpunkt angezeigt werden soll, mit der Option --num_runs=... ändern.

download_app

appcfg.py download_app -A <project_id> -V <version> <output-dir>

Ruft die aktuelle Version des Anwendungscodes mit folgenden Optionen ab:

-A
Erforderlich. Die Projekt-ID.
-V
Optional. Gibt die Version des Codes an, der heruntergeladen werden soll. Wenn Sie diese Option nicht festlegen, wird die Standardversion heruntergeladen.
<output-dir>
Erforderlich. Das Verzeichnis, in dem Sie die Dateien speichern möchten.

request_logs

appcfg.py [options] request_logs <app-directory> <output-file>

Ruft Logdaten für die in App Engine ausgeführte Anwendung ab. Wenn das Flag --append gesetzt ist, gibt der Parameter output-file den Namen der Datei an, die erstellt, ersetzt oder angehängt werden soll. Wenn output-file ein Bindestrich (-) ist, werden die Logdaten an die Konsole ausgegeben. Die folgenden Optionen gelten für request_logs:

--num_days=...
Die Anzahl der Tage, für die Logdaten abgerufen werden sollen. Enddatum ist Mitternacht UTC des aktuellen Datums. Mit dem Wert 0 werden alle verfügbaren Logs abgerufen. Wenn --append angegeben wird, ist die Standardeinstellung 0, andernfalls 1.
--end_date=...

Das letzte Datum, an dem die Logdaten im Format YYYY-MM-DD zurückgegeben werden sollen. Die Standardeinstellung ist der aktuelle Tag. Die Option --num_days zählt vom Enddatum aus rückwärts.

--severity=...

Die niedrigste Logebene für die abzurufenden Lognachrichten. Der Wert ist eine Zahl, die der Logebene entspricht: 4 für KRITISCH, 3 für FEHLER, 2 für WARNUNG, 1 für INFO, 0 für DEBUG. Alle Nachrichten auf der angegebenen Logebene und darüber werden abgerufen. Der Standardwert ist 1 (INFO).

--append

Die abgerufenen Daten werden an die Ausgabedatei angehängt. Es wird mit der ersten Logzeile begonnen, die noch nicht in der Datei vorhanden ist. Wenn Sie die Aktion einmal täglich mit --append ausführen, sind in der Datei alle Logdaten enthalten.

Die Standardeinstellung besteht im Überschreiben der Ausgabedatei. Gilt nicht, wenn output-file ein Bindestrich (-) ist (Ausgabe an die Konsole).

--vhost=...

Begrenzt die Anzahl der heruntergeladenen Lognachrichten. Es werden nur diejenigen heruntergeladen, die durch Anfragen für einen bestimmten Domainnamen ausgegeben wurden. Beispiel: --vhost=google.com lädt nur die Lognachrichten für die Live-Version der Anwendung in der G Suite-Domain google.com herunter. Lognachrichten einer neuen Version, die unter https://2-dot-latest-dot-your_project_id.[REGION_ID].r.appspot.com getestet wird, werden nicht heruntergeladen. Entsprechend lädt --vhost=2.latest.your_project_id.[REGION_ID].r.appspot.com nur die Logs für die Testversion und nicht die Logs für die Live-Version herunter.

Der Wert ist ein regulärer Ausdruck, der dem Header Host der eingehenden Anfragen entspricht. Beachten Sie, dass bei dem Muster die Groß- und Kleinschreibung berücksichtigt wird, obwohl dies bei Domainnamen normalerweise nicht der Fall ist.

--include_vhost

Fügen Sie den Domainnamen für jede Anfrage (Anfrageheader Host) als zusätzliches Feld in die Anfrage-Logdaten ein.

rollback

appcfg.py [options] rollback <app-directory>
Kehrt eine teilweise abgeschlossene Aktualisierung für die angegebene Anwendung wieder um. Sie können diese Aktion verwenden, wenn eine Aktualisierung unterbrochen wurde und der Befehl meldet, dass die Anwendung aufgrund einer Sperre nicht aktualisiert werden kann.

set_default_version

appcfg.py [options] set_default_version <app-directory>
Legt die Standardversion des angegebenen Moduls fest.

migrate_traffic

appcfg.py [options] migrate_traffic <app-directory>
Implementiert die Traffic-Migration. Leitet den Traffic dynamisch von der aktuellen Standardversion (Dienstversion) der Anwendung auf die in der Datei "app.yaml" festgelegte Version um. Der Traffic wird in wenigen Minuten von der alten auf die neue Version verschoben, abhängig davon, wie viele Zugriffe Ihre Anwendung aufweist und wie viele Instanzen gerade ausgeführt werden. Sobald der gesamte Traffic migriert ist, wird die Standardversion der Anwendung auf die neue Version zurückgesetzt.

list_versions

appcfg.py [options] list_versions <app-directory>
Gibt die hochgeladenen Versionen für jedes Modul einer Anwendung in YAML aus. Der YAML-Code ist als assoziatives Array formatiert, wobei module_ids der Liste der für dieses Modul hochgeladenen Versionen zugeordnet wird. Die Standardversion ist der erste Eintrag in der Liste.

delete_version

appcfg.py [options] delete_version -A project_id -V version
Löscht die festgelegte Version für die angegebene Anwendung.

update_cron

appcfg.py [options] update_cron <app-directory>
Aktualisiert die Konfiguration der geplanten Aufgabe (cron) für die Anwendung entsprechend der Datei cron.yaml.

update_dos

appcfg.py [options] update_dos <app-directory>
Aktualisiert die Konfiguration des DoS-Schutzes für die Anwendung entsprechend der Datei dos.yaml.

update_indexes

appcfg.py [options] update_indexes <app-directory>
Aktualisiert Datenspeicherindexe in App Engine, damit neu hinzugefügte Indexe eingeschlossen werden. Wenn für eine neue Version Ihrer Anwendung eine zusätzliche Indexdefinition erforderlich ist, die zu index.yaml hinzugefügt wurde, können Sie Ihre Indexdefinitionen in App Engine aktualisieren, bevor Sie die neue Version Ihrer Anwendung hochladen. Wenn Sie diese Aktion einige Stunden vor dem Hochladen der neuen Anwendungsversion ausführen, wird bereits bei der Bereitstellung der Anwendung die notwendige Zeit für die Erstellung und Bereitstellung der Indexe berücksichtigt.

update_queues

appcfg.py [options] update_queues <app-directory>
Aktualisiert die Konfiguration der Aufgabenwarteschlange für die Anwendung entsprechend der Datei queue.yaml.

update_dispatch

appcfg.py [options] update_dispatch <app-directory>
Aktualisiert die Weiterleitung der Anwendung entsprechend der Datei dispatch.yaml.

start_module_version

appcfg.py [options] start_module_version <app-directory>

Startet die angegebene Modulversion.

Mit den Optionen --module und --version können Sie die Einstellungen in der Datei app.yaml überschreiben.

stop_module_version

appcfg.py [options] stop_module_version <app-directory>

Stoppt die angegebene Modulversion.

Mit den Optionen --module und --version können Sie die Einstellungen in der Datei app.yaml überschreiben.

vacuum_indexes

appcfg.py [options] vacuum_indexes <app-directory>
Löscht nicht verwendete Datenspeicherindexe aus App Engine. Wenn Sie Indexdefinitionen aus der Datei index.yaml entfernen, verbleiben diese in App Engine, da Indexe nicht automatisch aus App Engine gelöscht werden. Wenn Sie diesen Befehl aufrufen, werden alle nicht verwendeten Indexe aus App Engine gelöscht.

Globale Optionen

Der Befehl appcfg.py akzeptiert für alle Aktionen die folgenden Optionen:

--application=...
Die zu verwendende Projekt-ID. Wird standardmäßig aus der Zeile application: in der Datei app.yaml im Anwendungsverzeichnis abgeleitet. Wenn Sie die Option --application verwenden, wird die ID in app.yaml für diese Aktion überschrieben.
--force
Löschen nicht verwendeter Indexe erzwingen: Standardmäßig werden beim Hochladen einer App nicht verwendete Indizes nicht vom Server gelöscht, selbst dann nicht, wenn sie nicht in der index.yaml-Datei aufgeführt sind.
--host=...
Der Hostname des lokalen Rechners für die Verwendung bei Remoteprozeduraufrufen.
--max_size=...
Die maximale Größe der hochzuladenden Dateien, als Anzahl an Byte. Dateien, die diese Größe überschreiten, werden nicht hochgeladen. Die Standardeinstellung ist 10485760. Der Server erzwingt eine maximale Dateigröße von 10.485.760 Byte. Eine Erhöhung dieses Werts hat daher keine Auswirkungen.
--module=...
Der Name des zu verwendenden Moduls. Wird standardmäßig aus der Zeile module: in der Datei app.yaml im Anwendungsverzeichnis abgeleitet. Wenn Sie die Option --module verwenden, wird der Wert in app.yaml für diese Aktion überschrieben.
--no_cookies
Speichert das Zugriffstoken des Nutzers nicht. Führt stattdessen jedes Mal den OAuth2-Ablauf aus.
--noisy
Zahlreiche Meldungen über die vom Befehl ausgeführten Aktionen ausgeben. Dies ist besonders nützlich, wenn Sie zusammen mit dem App Engine-Team an der Fehlersuche für ein Problem beim Hochladen arbeiten.
--noauth_local_webserver
Verwenden Sie den Webbrowser nicht, um Webseiten zur Authentifizierung anzuzeigen. Diese Option eignet sich zur OAuth2-Authentifizierung, wenn Sie per Fernzugriff an einem Computer angemeldet sind. Dieses Flag gilt nur für OAuth2.
--oauth2_refresh_token=token
Ein OAuth2-Aktualisierungstoken anstelle des Standardtokens, das im Basisverzeichnis des Nutzers gespeichert ist, zur Authentifizierung verwenden.
--quiet
Bei erfolgreicher Ausführung keine Meldungen ausgeben.
--server=...
Der Hostname des App Engine-Servers. Die Standardeinstellung ist appengine.google.com.
--verbose
Meldungen über die vom Befehl ausgeführten Aktionen ausgeben.
--version=...
Die zu verwendende Versions-ID. Wird standardmäßig aus der Zeile version: in der Datei app.yaml im Anwendungsverzeichnis abgeleitet. Wenn Sie die Option --version verwenden, wird die Versions-ID in app.yaml für diese Aktion überschrieben.