Eventos de la aplicación de almacenamiento de registros con Java

En esta parte del tutorial de Bookshelf para Java, se muestra cómo una aplicación puede incorporar un almacenamiento de registros detallado para ayudar a detectar, depurar y supervisar problemas potenciales.

Esta página forma parte de un tutorial de varias páginas. Para empezar en orden y consultar las instrucciones de configuración, ve a la aplicación Bookshelf de Java.

Ejecutar la aplicación en la máquina local

Para ejecutar la aplicación de forma local, sigue estos pasos:

  1. En el directorio getting-started-java/bookshelf-standard/5-logging, introduce el siguiente comando para iniciar un servidor web local:

    mvn -Plocal clean appengine:devserver -Dbookshelf.bucket=[YOUR-BUCKET]
    Reemplaza [YOUR-BUCKET] por el nombre del segmento.
  2. En el navegador web, ve a http://localhost:8080

Desplegar la aplicación en el entorno estándar de App Engine

Para realizar el despliegue en el entorno estándar de App Engine, sigue estos pasos:

  1. Asegúrate de haber utilizado la aplicación Bookshelf de forma completamente local, especialmente mediante la creación de al menos un libro y luego haz clic en Mis libros. Al hacerlo, se crea un índice de Cloud Datastore requerido que se sube con Bookshelf. Ten en cuenta que compilar la aplicación mediante clean elimina ese índice local, así que asegúrate de hacer esto en la compilación de la aplicación que vas a desplegar.
  2. Para desplegar la aplicación, introduce el comando a continuación en el directorio getting-started-java/bookshelf-standard/5-logging:
    mvn appengine:update -Dappengine.appId=[YOUR-PROJECT-ID] -Dappengine.version=[YOUR-VERSION] -Dbookshelf.bucket=[YOUR-BUCKET].appspot.com
    Reemplaza [YOUR-PROJECT-ID] por el ID del proyecto y [YOUR-VERSION] por la versión, por ejemplo, 1, o 2, o algún otro valor de cadena que quieras usar.
  3. Introduce la siguiente dirección en el navegador web:
    https://[YOUR-PROJECT-ID].appspot.com
    Reemplaza [YOUR-PROJECT-ID] por el ID del proyecto.

Después de actualizar la aplicación, si quieres volver a desplegar la versión actualizada, puedes introducir el mismo comando que utilizaste para desplegar la aplicación por primera vez, especificando el mismo ID y versión del proyecto; al hacerlo, se sobrescribe la aplicación desplegada actualmente. Si especificas una cadena con una versión diferente en la línea de comando de actualización, el nuevo despliegue crea una nueva versión de la aplicación y la promociona para que sea la versión publicada actual.

Si eliminas las versiones no publicadas de la aplicación, puedes reducir los costes.

Para eliminar una versión de la aplicación, sigue las instrucciones a continuación:

  1. In the GCP Console, go to the Versions page for App Engine.

    Go to the Versions page

  2. Select the checkbox for the non-default app version you want to delete.
  3. Click Delete to delete the app version.

Si quieres obtener información completa sobre cómo limpiar los recursos facturables, consulta la sección sobre limpiar los recursos en el último paso de este tutorial.

Ver registros

Mientras la aplicación Bookshelf se ejecuta, escribe los datos de almacenamiento de registros que se recopilan y se ponen a disposición en la consola de GCP. Puedes usar las herramientas de supervisión de registros en la consola de GCP para analizar los registros directamente. Si quieres un análisis más detallado, puedes usar la consola de GCP para emitir o importar los registros de la aplicación en BigQuery, o exportarlos a un segmento de Cloud Storage.

Almacenamiento de registros en la consola

Estructura de la aplicación

El siguiente diagrama muestra cómo la aplicación maneja el almacenamiento de registros cuando se despliega en el entorno estándar de App Engine.

Estructura de muestra de almacenamiento de registros: entorno estándar de App Engine

Información sobre el código

Hay muchos paquetes de almacenamiento de registros de Java compatibles con el entorno estándar de App Engine. En esta muestra, se usa java.util.logging, ya que es la más conocida. Cada clase necesita un Logger instanciado, de la siguiente manera:

private final Logger logger = Logger.getLogger(ReadBookServlet.class.getName());

El método log toma un valor de nivel y una cadena. (Consulta el Level Java para obtener más información). Los valores posibles para el nivel son:

También es posible realizar el registro mediante uno de los siguientes métodos de atajo: config, info, warning, o severe.

logger.log(Level.INFO, "Read book with id {0}", id);

Los niveles de almacenamiento de registros, que a menudo se establecen a partir de archivos de propiedades, también se pueden establecer y cambiar en logging.properties:

# A default java.util.logging configuration.
# (All App Engine logging is through java.util.logging by default).

# Set the default logging level for all loggers to INFO
.level = INFO
handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=FINEST
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format = [%1$tc] %4$s: %2$s - %5$s %6$s%n

Información sobre la configuración del almacenamiento de registros

Cuando la aplicación de muestra se ejecuta en el entorno estándar de App Engine, Cloud Logging recopila automáticamente los registros de la aplicación y los coloca a disposición para que se puedan consultar, buscar y exportar en el visualizador de registros de la consola de GCP.

En esta muestra, todos los registros se escriben en stderr/stdout.

Limpiar los recursos

Para evitar que los recursos utilizados en este tutorial se cobren en tu cuenta de Google Cloud Platform, sigue estas instrucciones:

Eliminar el proyecto

La forma más fácil de eliminar la facturación es eliminar el proyecto que has creado para el tutorial.

Para eliminar el proyecto, sigue las instrucciones a continuación:

  1. In the GCP Console, go to the Projects page.

    Go to the Projects page

  2. In the project list, select the project you want to delete and click Delete .
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Eliminar versiones no predeterminadas de la aplicación

Si no quieres eliminar el proyecto, puedes reducir los costes mediante la eliminación de versiones no predeterminadas de la aplicación.

Para eliminar una versión de la aplicación, sigue las instrucciones a continuación:

  1. In the GCP Console, go to the Versions page for App Engine.

    Go to the Versions page

  2. Select the checkbox for the non-default app version you want to delete.
  3. Click Delete to delete the app version.

Eliminar el segmento de Cloud Storage

Para eliminar un segmento de Cloud Storage, sigue las instrucciones a continuación:

  1. In the GCP Console, go to the Cloud Storage Browser page.

    Go to the Cloud Storage Browser page

  2. Click the checkbox for the bucket you want to delete.
  3. Click Delete to delete the bucket.

Siguientes pasos

Obtén información sobre el uso de Java en el entorno estándar de App Engine.

Prueba otras funciones de Google Cloud Platform por tu cuenta. Echa un vistazo a nuestros tutoriales.

¿Te ha resultado útil esta página? Enviar comentarios: