> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Registros

> Lee, copia y conserva los registros de un despliegue de Kubernetes.

Cada servicio dentro del pod de Ayakaleaf Pro escribe su propio archivo de registro en `/var/log/overleaf/`; `kubectl logs` solo muestra la salida de arranque del contenedor (scripts de inicialización, migraciones). El `bin/logs` del Toolkit lee los mismos archivos; consulta [Registros](https://ayakaleaf-pro.mintlify.site/es/on-premises/configuration/overleaf-toolkit/logging.md).

| Dónde | Qué |
| - | - |
| `kubectl -n overleaf logs <pod>` | arranque: comprobación de secretos, migraciones (`Finished migrations`), inicio de los servicios |
| `/var/log/overleaf/<service>.log` en el pod | `web.log`, `web-api.log`, `clsi.log`, `real-time.log`, `document-updater.log`, `docstore.log`, `filestore.log`, `history-v1.log`, `project-history.log`, `chat.log`, `notifications.log`, `linked-url-proxy.log`, y `third-party-datastore.log` con Dropbox activado |
| `/var/log/nginx/` en el pod | `access.log`, `error.log` del nginx situado delante de los servicios |
| `kubectl -n overleaf logs mongo-0`, `redis-0`, `git-bridge-0` | MongoDB, Redis y git-bridge, que se ejecutan en sus propios pods |

### Leer los registros

| Toolkit | Kubernetes |
| - | - |
| `bin/logs web` | `kubectl -n overleaf exec deploy/overleaf -- tail -n 20 /var/log/overleaf/web.log` |
| `bin/logs -f web clsi` | `kubectl -n overleaf exec deploy/overleaf -- tail -f /var/log/overleaf/web.log /var/log/overleaf/clsi.log` |
| `bin/logs -n all web > web.log` | `kubectl -n overleaf cp overleaf/<pod>:/var/log/overleaf/web.log web.log` |
| `bin/logs mongo` | `kubectl -n overleaf logs mongo-0` |

Con [varias réplicas](https://ayakaleaf-pro.mintlify.site/es/on-premises/configuration/kubernetes/horizontal-scaling.md), cada pod tiene sus propios archivos: usa el nombre del pod (`overleaf-0`, `overleaf-1`, ...) en lugar de `deploy/overleaf`. La cabecera `X-Served-By` que añade HAProxy indica qué réplica respondió a una petición.

`LOG_LEVEL` en el ConfigMap (por defecto `info`; también `debug`, `warn`, `error`) establece a la vez el nivel de todos los servicios del pod.

### Conservar los registros

Los archivos residen en el contenedor y se pierden cuando se reemplaza el pod. Para conservarlos, monta un volumen en `/var/log/overleaf`, por ejemplo un `hostPath` en el nodo o un PersistentVolumeClaim, en el Deployment o el StatefulSet:

```yaml theme={null}
          volumeMounts:
            # ...
            - name: logs
              mountPath: /var/log/overleaf
      volumes:
        # ...
        - name: logs
          hostPath:
            path: /srv/overleaf-logs
            type: DirectoryOrCreate
```

El contenedor rota los archivos a diario y conserva cinco, por lo que el volumen no crece sin límite. También puedes recogerlos desde esa ruta con el agente de registros de tu clúster.

### Probado en Kubernetes

En Kubernetes 1.37 con tres réplicas y un volumen `hostPath` en `/var/log/overleaf` como el anterior, el `/srv/overleaf-logs` de cada nodo contenía los doce registros de servicio de su réplica, y los comandos de la tabla funcionaron como se muestra: `tail` mediante `kubectl exec`, `kubectl cp` de un archivo de registro, `kubectl logs` del pod de Overleaf (arranque y migraciones) y de `mongo-0`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.