Google Code disponible en: English - Español - 日本語 - 한국어 - Português - Pусский - 中文(简体) - 中文(繁體)
El kit de desarrollo de software (SDK) de Java de App Engine incluye un comando para interactuar con App Engine. Puedes utilizar este comando para subir nuevas versiones del código, de la configuración y de los archivos estáticos de tu aplicación a App Engine. También puedes utilizar el comando para administrar índices de almacenes de datos y para descargar datos de registro.
Si utilizas Eclipse y el complemento de Google, puedes subir tu aplicación directamente desde Eclipse. Para subir la aplicación, haz clic en el botón de implementación de App Engine de la barra de herramientas:
Para obtener más información, consulta la sección sobre el complemento de Google para Eclipse.
También puedes subir tu aplicación desde una línea de comandos. Para utilizar otras funciones del comando como, por ejemplo, la descarga de registros, debes ejecutar el comando desde la línea de comandos. El comando que debes ejecutar está en el directorio appengine-java-sdk/bin/ del SDK.
Si utilizas Windows, el comando es el siguiente:
appengine-java-sdk\bin\appcfg.cmd [options] <action> <war-location>
Si utilizas Mac OS X o Linux, el comando es el siguiente:
./appengine-java-sdk/bin/appcfg.sh [options] <action> <war-location>
El comando adopta el nombre de una acción que realiza y la ubicación del directorio WAR de la aplicación como argumento.
Para subir la aplicación, utiliza la acción update, como se muestra a continuación:
./appengine-java-sdk/bin/appcfg.sh update myapp/war
Estos comandos son secuencias de comandos de envoltorio específicas del sistema operativo que ejecutan la clase Java com.google.appengine.tools.admin.AppCfg en appengine-java-sdk/lib/appengine-tools-api.jar.
Cuando subes una aplicación con la acción update, la actualización incluye la configuración del índice de la aplicación (los archivos datastore-indexes.xml y generated/datastore-indexes-auto.xml). Si la configuración del índice define un índice que aún no existe en App Engine, App Engine crea el nuevo índice. En función del número de datos existente en el almacén de datos, que debe mencionarse en el nuevo índice, el proceso de compilación del índice puede tardar un poco. Si la aplicación realiza una consulta que requiere un índice que aún no se ha creado, la consulta genera una excepción.
Para evitar esto, debes asegurarte de que la nueva versión de la aplicación que requiere un nuevo índice no sea la versión disponible de la aplicación hasta que los índices terminen de crearse. Una forma de hacerlo es asignar a la aplicación un nuevo número de versión en appengine-web.xml, siempre que añadas o cambies un índice de la configuración. La aplicación se sube como una nueva versión, pero no se convierte en la versión predeterminada de forma automática. Cuando los índices hayan terminado de crearse, puedes cambiar la versión predeterminada a una nueva versión a través de la sección "Versiones" de la consola de administración.
Otra forma de asegurarse de que se creen los nuevos índices antes de que se publique la nueva aplicación es subir la configuración de índices por separado antes de subir la aplicación. Para subir sólo la configuración del índice de una aplicación, utiliza la acción update_indexes:
./appengine-java-sdk/bin/appcfg.sh update_indexes myapp/war
Puedes comprobar el estado de los índices de la aplicación desde la sección "Índices" de la consola de administración.
App Engine admite tareas programadas (conocidas como tareas cron). Puedes especificar estas tareas en un archivo denominado cron.xml y subirlas con el comando update_cron:
./appengine-java-sdk/bin/appcfg.sh update_cron myapp/war
appcfg update también subirá las especificaciones de las tareas cron si existe el archivo. Para obtener más información sobre las tareas cron, consulta la documentación tareas cron.
App Engine mantiene un registro de mensajes que emite tu aplicación. App Engine también registra cada solicitud en el registro. Puedes explorar los registros de tu aplicación en la sección "Registros" de la consola de administración.
Si deseas realizar un análisis más detallado de los registros de tu aplicación, puedes descargar los datos de registro en un archivo de tu equipo. Para descargar registros en un archivo denominado mylogs.txt, utiliza la acción request_logs, como se muestra a continuación:
./appengine-java-sdk/bin/appcfg.sh request_logs myapp/war mylogs.txt
De forma predeterminada, el comando descarga mensajes de registros a partir del día actual del calendario (desde la medianoche, hora del Pacífico) con un nivel de registro INFO (INFORMACIÓN) o superior (se omiten mensajes del nivel DEBUG (DEPURAR)). El comando sobrescribe el archivo de registro local. Puedes ajustar el número de días, el nivel mínimo de registro y si quieres sobrescribir o añadir al archivo de registro local mediante las opciones de la línea de comandos. A continuación puedes consultar más información sobre estas opciones.
El comando AppCfg incluye un conjunto de opciones, una acción y argumentos para la acción.
Están disponibles las siguientes acciones:
appcfg.sh [options] update <war-location>Sube archivos para una aplicación en función del directorio raíz de la aplicación. La ID y la versión de la aplicación se toman del archivo appengine-web.xml.
appcfg.sh [options] rollback <war-location>Deshace una actualización completada parcialmente en una aplicación determinada. Esta acción resulta útil si se interrumpe una actualización y el comando indica que la aplicación no se puede actualizar a causa de un bloqueo.
appcfg.sh [options] update_indexes <war-location>Actualiza índices de almacenes de datos en App Engine para incluir índices nuevos que se han añadido. Si una versión nueva de tu aplicación requiere una definición de índice adicional que se añadió a la configuración de índices, puedes actualizar tu configuración de índices en App Engine antes de subir la nueva versión de tu aplicación. Si ejecutas esta acción unas horas antes de subir la nueva versión de tu aplicación, los índices tendrán tiempo de crearse y ejecutarse cuando se implemente la aplicación.
appcfg.sh [options] request_logs <war-location> <output-file>Recupera datos de registro de la aplicación que se ejecuta en App Engine. output-file es el nombre del archivo que se va a crear o sustituir. Si el valor de output-file es un guión (-), los datos de registro se imprimirán en la consola. Las siguientes opciones se aplican a request_logs:
--num_days=...El número de días que se recuperarán datos de registro hasta la fecha actual a medianoche (UTC). Si el valor es 0, se recuperarán todos los registros disponibles. Si se especifica --append, el valor predeterminado será 0; de lo contrario, será 1.
--severity=...El nivel mínimo de registro para los mensajes de registro que se van a recuperar. El valor es un número que se corresponde con el nivel de registro: 4 para CRITICAL (CRÍTICO), 3 para ERROR, 2 para WARNING (ADVERTENCIA), 1 para INFO (INFORMACIÓN) y 0 para DEBUG (DEPURAR). Se recuperarán todos los mensajes pertenecientes a un nivel de registro determinado y a los niveles superiores. El valor predeterminado es 1 (INFO).
appcfg.sh [options] help <war-location>Imprime un mensaje de ayuda sobre la acción en cuestión y finaliza.
El comando AppCfg acepta las siguientes opciones para todas las acciones:
--email=...La dirección de correo electrónico de la cuenta de Google de un administrador de la aplicación, para aquellas acciones que requieren credenciales de acceso. Si omites esta opción y no hay ninguna cookie almacenada de un uso anterior del comando, el comando te pedirá que introduzcas este valor.
--server=...El nombre de host del servidor de App Engine. El valor predeterminado es "appengine.google.com".
--host=...El nombre de host del equipo local que se utilizará con las llamadas a procedimientos remotos.
--sdk_root=...Una ruta al SDK de Java de App Engine si es diferente de la ubicación de la herramienta.
--passinNo almacenes las credenciales de acceso del administrador como una cookie; debes hacer que se pida la contraseña cada vez.