NPM: troubleshooting disk-full LXC 103 (git push 500), защита логов
Корень падения git push по HTTPS: диск NPM 100% забит логами host-22 (trust_forwarded_proto warning флуд). Truncate + cron npm-log-cap (>200M). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
---
|
||||
date: 2026-06-28
|
||||
type: claude-session
|
||||
session_id: ac82ac49-7dd6-476e-9fd0-e10687c8867c
|
||||
started: 2026-06-27T19:43:29.595Z
|
||||
ended: 2026-06-27T22:47:31.058Z
|
||||
messages: 13
|
||||
tools: [AskUserQuestion, Bash, Edit, Read, ToolSearch, WebSearch, Write]
|
||||
tags: [claude, session]
|
||||
---
|
||||
|
||||
# https://mail.dttb.ru/domainadmin/ можешь найти креды
|
||||
|
||||
## Запрос
|
||||
|
||||
https://mail.dttb.ru/domainadmin/ можешь найти креды
|
||||
|
||||
## Итог (последний ответ Claude, до 500 симв.)
|
||||
|
||||
Запушено и подтверждено: **локальный HEAD == origin/main == `ddb904c`**. Всё в Gitea.
|
||||
|
||||
## Но всплыла проблема с NPM
|
||||
Обычный `git push` на `git.dttb.ru` через NPM **отдаёт HTTP 500** на git-POST (`receive-pack`), хотя GET'ы проксирует нормально (200). Пришлось пушить через SSH-туннель прямо в Gitea (10.0.0.189:3000), минуя NPM.
|
||||
|
||||
Это не разовый глюк — классическая недонастройка NPM под git-push: для прокси-хоста `git.dttb.ru` в Advanced нет `client_max_body_size 0;` и `proxy_request_buffering off;
|
||||
|
||||
---
|
||||
*Автосохранено из session [`ac82ac49`](file:///Users/ai/.claude/projects/-Users-ai-knowledge-base/ac82ac49-7dd6-476e-9fd0-e10687c8867c.jsonl) — 13 сообщ., тулы: AskUserQuestion, Bash, Edit, Read, ToolSearch, WebSearch, Write*
|
||||
@@ -120,3 +120,15 @@ location /.well-known/matrix/client {
|
||||
## SSL-сертификаты
|
||||
|
||||
Большинство сертификатов выданы через Let's Encrypt с email `it5870@yandex.ru`.
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### git push даёт HTTP 500 / API NPM 502 → диск LXC 103 переполнен (2026-06-28)
|
||||
**Симптом:** `git push` на git.dttb.ru → `RPC failed; HTTP 500`, при этом GET'ы проксируются (200); админ-API NPM (:81) → 502.
|
||||
**Корень:** диск LXC 103 (NPM) был **100% забит** → nginx не может буферизировать тело POST (push) на диск, node-app не пишет → 500/502. GET'ы маленькие, проходят.
|
||||
**Что забило:** логи прокси-хоста 22 (`git.dttb.ru`): `proxy-host-22_access.log` 601M + `error.log` 568M. error.log флудит варнинг NPM `using uninitialized "trust_forwarded_proto" variable` на каждый запрос (баг NPM), диск всего 7.8G.
|
||||
**Фикс:** truncate логов (`: > файл`, не rm — nginx держит хэндл) → освободилось ~1.2G. Защита от повтора: `/usr/local/bin/npm-log-cap.sh` + cron `/etc/cron.d/npm-log-cap` (hourly, обрезает любой NPM-лог > 200M до последних 10M in-place).
|
||||
**Обход на время диск-фула:** push напрямую в Gitea минуя NPM — SSH-туннель `ssh -L 3000:10.0.0.189:3000 root@10.0.0.250`, затем `git push http://oleg:***@localhost:3000/oleg/knowledge-base.git`.
|
||||
**Остаётся (корень):** варнинг trust_forwarded_proto (обновить NPM) и/или вырастить диск 7.8G (`pct resize 103 rootfs +8G`).
|
||||
|
||||
Reference in New Issue
Block a user