¿Dónde almacena y muestra Discourse los registros?

Al solucionar problemas o errores con Discourse, es importante revisar sus registros (logs). A continuación, se muestra una lista de dónde se encuentran y qué contienen.

El dominio de su sitio

Registros de administración mostrados en la UI

El panel de administración de Discourse contiene varias formas de registro:

La UI web de Logster

Cada instancia de Discourse viene con un visor de registros (GUI). Se encuentra en: https://=DOMAIN=/logs

Nota: si está en un plan alojado, es posible que esta página esté oculta. En su lugar, ¡comuníquese con el soporte cuando esté experimentando este tipo de problema!

Si está investigando un misterioso error 500 en los foros, ¡siempre debe intentar primero este lugar!

Seleccione una línea de error para obtener detalles sobre ella. Es posible que se le pida que proporcione el contenido de las pestañas env y backtrace aquí en Meta.

Los registros de Rails / Pitchfork

Ruby on Rails contiene un registro muy detallado que se escribe en el disco. Además, el servidor web pitchfork (una bifurcación de unicorn) también registra en el disco.

Para acceder:

cd /var/discourse
./launcher enter app
cd /shared/log/rails

Esta carpeta contiene “production.log” y “unicorn.stderr.log” además de archivos de registro “rotados”. Puede usar herramientas estándar de Unix como less production.log para inspeccionarlos.

Esta carpeta también está disponible sin entrar en el contenedor como /var/discourse/shared/standalone/log/rails.

Los registros de NGINX

En ocasiones, los registros de NGINX pueden contener algunos consejos adicionales, se encuentran en:

cd /var/discourse
./launcher enter app
cd /var/log/nginx

Los archivos access.log y error.log estarán allí, así como un conjunto de archivos comprimidos rotados. Ejecutar less access.log.2.gz descomprimirá y mostrará automáticamente el archivo de registro.

Este directorio también está disponible en el host en /var/discourse/shared/standalone/log/var-log/nginx.

Registros de Redis

Aunque es muy poco común tener que ver los registros de Redis, si necesita verlos, van a /var/log/redis dentro del contenedor y a /var/discourse/shared/standalone/log/var-log/redis en el host. Las entradas de registro más recientes estarán en el archivo current de ese directorio.

Registros de PostgreSQL

Si necesita consultar los registros del servidor de la base de datos, se encuentran en /var/log/postgres dentro del contenedor y en /var/discourse/shared/standalone/log/var-log/postgres en el host; las entradas más recientes están en el archivo current de ese directorio.

46 Me gusta

Is there any option/console in admin ui to run these command and get logs in web? I do not see any option.

2 Me gusta

También he encontrado útil este registro:

./launcher logs app

Esto muestra cualquier error durante el proceso de compilación si no sabes a qué aplicación mirar.

7 Me gusta

No tengo una carpeta de postgres en /var/log/postgres ni en /var/discourse/shared/standalone/log/var-log/postgres. ¿Hay alguna configuración que deba realizar para generar registros de la base de datos?

1 me gusta

Si estás usando una instalación de 2 contenedores o una base de datos PostgreSQL externa, los registros no estarán allí.

Para una instalación de 2 contenedores, los registros deberían estar en:
/var/discourse/shared/data/log/var-log/postgres

Para PostgreSQL externa, tus registros deberían estar con el proveedor de base de datos gestionada.

4 Me gusta

Cuando un plugin causa un error durante una reconstrucción, ¿dónde residen los registros que muestran el error específico dentro del plugin?

1 me gusta

Viven en la ventana de terminal donde ejecutaste la reconstrucción. Si no tienes suficiente scrollback en tu terminal, tendrás que prestar atención durante la reconstrucción (o buscar cómo aumentar el rollback, o redirigir la salida a algún lugar donde puedas encontrarla más tarde).

1 me gusta

El marcador de posición no parece funcionar en la lista.

1 me gusta

Estoy tratando de averiguar cuáles de estos registros contienen datos personales y cuánto tiempo se conservan. Parece que:

  • Los registros de correo electrónico se conservan 90 días por defecto
  • Los registros de Rails contienen direcciones IP y se rotan después de 7 días (de \* logrotate.d )
  • Lo mismo se aplica a NGINX
  • Los registros de Personal/Revisión pueden contener datos personales y se conservan para siempre

¿Me estoy perdiendo algo aquí?

¿Los registros de errores (discourse.example.com/logs) también pueden contener datos personales? Si es así, ¿se rotan?
¿Los registros de contenedores pueden contener información personal? (es decir, \\./launcher logs app\` etc.) Supongo que estos deben configurarse manualmente a través de docker para rotar.