Logs
Registros
Where the application writes what it does, how to read it and which lines tell you that a start-up went well.
Dónde escribe la aplicación lo que hace, cómo leerlo y qué líneas te dicen que un arranque salió bien.
Read the log
Leer el registro
| Command | What it shows |
|---|---|
| docker compose -f docker-compose.<edition>.yml logs backend | Everything the application has written since the container was created. |
| docker compose -f docker-compose.<edition>.yml logs -f backend | The same, and it keeps showing new lines. |
| docker compose -f docker-compose.<edition>.yml logs frontend | The requests received by nginx in the administration container. |
| docker compose -f docker-compose.<edition>.yml logs postgres | The log of the database. |
| Comando | Qué muestra |
|---|---|
| docker compose -f docker-compose.<edición>.yml logs backend | Todo lo que escribió la aplicación desde que se creó el contenedor. |
| docker compose -f docker-compose.<edición>.yml logs -f backend | Lo mismo, y sigue mostrando las líneas nuevas. |
| docker compose -f docker-compose.<edición>.yml logs frontend | Los pedidos que recibió nginx en el contenedor de administración. |
| docker compose -f docker-compose.<edición>.yml logs postgres | El registro de la base de datos. |
The application also writes the same lines to the file /tmp/ks-erp.log inside its container. That file is lost when the container is recreated: to keep history, collect the output of the container with your own log system, or let Docker rotate it.
La aplicación además escribe las mismas líneas en el archivo /tmp/ks-erp.log dentro de su contenedor. Ese archivo se pierde cuando el contenedor se recrea: para conservar historia, recogé la salida del contenedor con tu propio sistema de registros, o dejá que Docker la rote.
The lines of a good start-up
Las líneas de un buen arranque
| Line | Meaning |
|---|---|
| Security configuration validated | The two session and verification keys are present and valid. |
| Workflow secret key validated | The key of the workflows is present and valid. |
| MinIO bucket already exists or Created MinIO bucket | The file store answers. |
| Loaded MaxMind GeoIP database from | Location is on. The alternative, falling back to stub GeoIP adapter, means it is off. |
| A box with the edition and Edition initialized | The application finished starting. |
| Línea | Qué significa |
|---|---|
| Security configuration validated | Las dos claves de sesión y de verificación están y son válidas. |
| Workflow secret key validated | La clave de los flujos de trabajo está y es válida. |
| MinIO bucket already exists o Created MinIO bucket | El almacén de archivos contesta. |
| Loaded MaxMind GeoIP database from | La ubicación está prendida. La alternativa, falling back to stub GeoIP adapter, significa que está apagada. |
| Un recuadro con la edición y Edition initialized | La aplicación terminó de arrancar. |
The log shows the first and last four characters of each of the two security keys, never the whole key.
El registro muestra los cuatro primeros y los cuatro últimos caracteres de cada una de las dos claves de seguridad, nunca la clave entera.
Lines worth searching for
Líneas que conviene buscar
| Text | Meaning |
|---|---|
| [mail:log] would send | The mail transport is log: the message was not sent. |
| Mail transport not configured | The transport is smtp and the mail server is not set: the message was skipped. |
| Verification e-mail not sent for tenant | A new organisation was registered and its verification message could not be prepared. |
| Tenant self-registered | Somebody created an organisation from the registration page. |
| Tenant activated via email verification | The owner opened the verification link. |
| Read access denied · Write access denied | With PMS_GATING_ENABLED on, a call to a module that is off was refused. The line names the organisation and the module. |
| Could not verify/create MinIO bucket | The file store did not answer at start-up. |
| Texto | Qué significa |
|---|---|
| [mail:log] would send | El transporte de correo es log: el mensaje no se envió. |
| Mail transport not configured | El transporte es smtp y el servidor de correo no está definido: el mensaje se salteó. |
| Verification e-mail not sent for tenant | Se registró una organización nueva y no se pudo preparar su mensaje de verificación. |
| Tenant self-registered | Alguien creó una organización desde la página de registro. |
| Tenant activated via email verification | El dueño abrió el enlace de verificación. |
| Read access denied · Write access denied | Con PMS_GATING_ENABLED prendido, se rechazó una llamada a un módulo apagado. La línea nombra la organización y el módulo. |
| Could not verify/create MinIO bucket | El almacén de archivos no contestó al arrancar. |
More detail
Más detalle
The application logs at the informative level. To see more while you investigate a problem, add LOGGING_LEVEL_COM_KS_ERP with the value DEBUG to the environment block of backend and recreate the container. Take it out afterwards: the log grows fast at that level.
La aplicación registra en nivel informativo. Para ver más mientras investigás un problema, agregá LOGGING_LEVEL_COM_KS_ERP con el valor DEBUG al bloque environment de backend y recreá el contenedor. Sacalo después: en ese nivel el registro crece rápido.
Common issues
Problemas habituales
- The log is empty after recreating the container
- The log belongs to the container and starts again with it. Collect it outside if you need history.
- The log of backend ends with a box of errors and the container stops
- A start-up check failed. The box says which variable to set; see Troubleshooting.
- An error message on screen shows a code I want to find in the log
- Search the log for that code, and for the time of the error and the address of the request.
- El registro está vacío después de recrear el contenedor
- El registro pertenece al contenedor y empieza de nuevo con él. Recogelo afuera si necesitás historia.
- El registro de backend termina con un recuadro de errores y el contenedor se detiene
- Falló un control de arranque. El recuadro dice qué variable definir; mirá Solución de problemas.
- Un mensaje de error en pantalla muestra un código que quiero encontrar en el registro
- Buscá en el registro ese código, y la hora del error y la dirección del pedido.