> ## 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.

# Lokit

> Lue, kopioi ja säilytä Kubernetes-käyttöönoton lokit.

Jokainen Ayakaleaf Pro -podin sisäinen palvelu kirjoittaa oman lokitiedostonsa hakemistoon `/var/log/overleaf/`; `kubectl logs` näyttää vain kontin käynnistystulosteen (init-skriptit, migraatiot). Toolkitin `bin/logs` lukee samoja tiedostoja, katso [Lokit](https://ayakaleaf-pro.mintlify.site/fi/on-premises/configuration/overleaf-toolkit/logging.md).

| Missä | Mitä |
| - | - |
| `kubectl -n overleaf logs <pod>` | käynnistys: salaisuuksien tarkistus, migraatiot (`Finished migrations`), palveluiden käynnistykset |
| `/var/log/overleaf/<service>.log` podissa | `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` sekä `third-party-datastore.log`, kun Dropbox on käytössä |
| `/var/log/nginx/` podissa | palveluiden edessä olevan nginxin `access.log`, `error.log` |
| `kubectl -n overleaf logs mongo-0`, `redis-0`, `git-bridge-0` | MongoDB, Redis ja git-bridge, jotka toimivat omissa podeissaan |

### Lokien lukeminen

| 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` |

[Useilla replikoilla](https://ayakaleaf-pro.mintlify.site/fi/on-premises/configuration/kubernetes/horizontal-scaling.md) jokaisella podilla on omat tiedostonsa: käytä podin nimeä (`overleaf-0`, `overleaf-1`, ...) `deploy/overleaf`-viittauksen sijaan. HAProxyn lisäämä `X-Served-By`-otsake kertoo, mikä replika vastasi pyyntöön.

ConfigMapin `LOG_LEVEL` (oletus `info`, myös `debug`, `warn`, `error`) asettaa kerralla podin jokaisen palvelun lokitason.

### Lokien säilyttäminen

Tiedostot sijaitsevat kontissa ja katoavat, kun podi korvataan. Säilyttääksesi ne liitä Deploymentissa tai StatefulSetissä taltio polkuun `/var/log/overleaf`, esimerkiksi solmun `hostPath` tai PersistentVolumeClaim:

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

Kontti kierrättää tiedostot päivittäin ja säilyttää viisi, joten taltio ei kasva rajattomasti. Vaihtoehtoisesti voit kerätä ne kyseisestä polusta klusterisi lokiagentilla.

### Testattu Kubernetesissa

Kubernetes 1.37:ssä kolmella replikalla ja yllä kuvatulla `hostPath`-taltiolla polussa `/var/log/overleaf` jokaisen solmun `/srv/overleaf-logs` sisälsi replikansa kaksitoista palvelulokia, ja taulukon komennot toimivat kuvatulla tavalla: `tail` `kubectl exec` -komennon kautta, lokitiedoston `kubectl cp`, sekä `kubectl logs` Overleaf-podille (käynnistys ja migraatiot) ja `mongo-0`:lle.


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