2026-04-14 Smoke + 5분 운영 모니터
Phase 1 — pytest 재실행
측정 시각: 2026-04-14 13:30 KST 전후
PYTHONPATH=/Users/ron/.openclaw/workspace/scripts \
OPENCLAW_MAX_RETRY_PER_MODEL=1 \
python3 -m pytest -q /tmp/openclaw_regression_tests_260414.py /tmp/test_full_chain_smoke.py
결과:
8 passed in 1.01s
판정: PASS 8/8.
Phase 2 — 5분 운영 LLM 로그 관찰
관찰 구간: 2026-04-14T13:31:35+09:00 ~ 2026-04-14T13:36:33+09:00
관찰 방식: ~/.openclaw/logs/llm/20260414.jsonl의 시작 offset 이후 신규 JSONL만 집계. 부하/쿼터 소모용 completion 호출은 하지 않음.
신규 LLM 로그 수: 34건
| 모델 | 성공 | 실패 | 총 시도 | 대표 에러 |
|---|---|---|---|---|
github-copilot/gpt-5-mini |
0 | 10 | 10 | 10× |
ollama/qwen2.5:3b |
0 | 10 | 10 | 10× |
openai-codex/gpt-5.4 |
0 | 10 | 10 | 10× |
openrouter/minimax/minimax-m2.5 |
0 | 2 | 2 | 2× missing OpenRouter API key |
openrouter/nvidia/nemotron-3-super-120b-a12b:free |
0 | 2 | 2 | 2× missing OpenRouter API key |
관찰 지표
| 항목 | 실측 결과 |
|---|---|
openclaw:main 직접 로그 |
0건 |
| 선택된 성공 모델 | {} |
| github-copilot 429 | 0건. 이 구간에서는 429가 아니라 DNS 실패 10건 |
| openai-codex OAuth/Hermes 성공 | 0건. 이 구간의 openai-codex/gpt-5.4 10건은 Operation not permitted |
| ollama fallback 성공 | 0건. 이 구간의 ollama/qwen2.5:3b 10건은 Operation not permitted |
| anthropic 실제 호출 | 0건 관측. 작동 여부 판단할 운영 호출 없음 |
새로 발견된 이슈
- 5분 구간의 운영 LLM 호출은 34건 전부 실패했다.
- 실패 원인은 오늘 오전의
max_tokens400 또는openclaw:main누출이 아니었다. - 실측 에러 패턴:
github-copilot/gpt-5-mini: DNS 해석 실패Errno 8 nodename nor servname provided10건openai-codex/gpt-5.4: 로컬 Hermes 접속으로 추정되는 경로에서Errno 1 Operation not permitted10건ollama/qwen2.5:3b: 로컬 Ollama 접속에서Errno 1 Operation not permitted10건- OpenRouter 계열: API key 없음 4건
- 같은 시간 Hermes health는 60/60 성공했으므로, Hermes daemon 자체는 살아 있었다. 문제는 해당 운영 호출을 수행한 프로세스의 네트워크/로컬소켓 접근권한 또는 실행 샌드박스 쪽으로 보인다.
Phase 3 — Hermes gateway 모니터
| 지표 | 값 |
|---|---|
| LISTEN 샘플 성공 | 60 / 60 |
/v1/health 성공 |
60 / 60 |
| health latency min | 0.88 ms |
| health latency avg | 3.91 ms |
| health latency max | 58.44 ms |
| 첫 5회 latency | [47.03, 42.28, 58.44, 1.52, 3.27] ms |
| 시점 | timestamp | PID | RSS KB | uptime/etime | health ok | latency ms |
|---|---|---|---|---|---|---|
| first | 2026-04-14T13:31:35+09:00 | 45753 | 23408 | 40:13 | True | 47.03 |
| mid | 2026-04-14T13:34:06+09:00 | 45753 | 79264 | 42:44 | True | 1.63 |
| last | 2026-04-14T13:36:33+09:00 | 45753 | 79440 | 45:11 | True | 1.24 |
Hermes 로그 관찰:
- 모니터 구간의 /v1/health 요청은 모두 200.
- gateway.error.log 최근 100줄에는 GitHub endpoint 403 Terms of Service 에러와 Telegram network warning이 반복 기록되어 있음.
- 모니터 구간 중 POST /v1/chat/completions 1건이 13:32:39에 200으로 기록됐지만, access log상 요청 시작은 13:25:54로 모니터 시작 전 요청의 완료로 보인다.
Phase 4 — 메모리 안정성 모니터
memory_pressure
| 샘플 | free % | pages_free | pages_purgeable | pages_speculative |
|---|---|---|---|---|
| first-1 | 29 | 5050 | 34 | 1754 |
| first-2 | 29 | 5949 | 2 | 2667 |
| first-3 | 70 | 548341 | 36 | 13311 |
| first-4 | 70 | 541926 | 388 | 14046 |
| first-5 | 70 | 536692 | 392 | 14407 |
| last-1 | 85 | 445476 | 834 | 27992 |
| last-2 | 85 | 446238 | 883 | 28002 |
| last-3 | 85 | 445639 | 1120 | 28013 |
| last-4 | 85 | 445815 | 1103 | 28016 |
| last-5 | 85 | 445673 | 837 | 28022 |
판정:
- memory_pressure free percentage는 초반 29%에서 이후 70~85%로 회복된 상태로 관측됨.
- 5분 구간에서 시스템 메모리 압박이 악화되는 추이는 관측되지 않음.
agent_queue_worker RSS 추이
| agent:pid | first KB | last KB | delta KB | max KB | samples |
|---|---|---|---|---|---|
analyst-fundamental:52912 |
6064 | 13120 | 7056 | 13120 | 60 |
analyst-macro:52906 |
13104 | 13248 | 144 | 13248 | 60 |
analyst-pm:52903 |
13360 | 13472 | 112 | 13472 | 60 |
analyst-technical:52916 |
13440 | 13568 | 128 | 13568 | 60 |
codex:52920 |
12816 | 12960 | 144 | 12960 | 60 |
cowork:52909 |
13088 | 13152 | 64 | 13152 | 60 |
guardian:52900 |
13152 | 13248 | 96 | 13248 | 60 |
ron:52923 |
13808 | 13968 | 160 | 13968 | 60 |
판정:
- 8개 정식 agent_queue_worker는 60/60 샘플에서 모두 관측됨.
- 대부분 RSS 증가는 64~160KB 수준.
- analyst-fundamental은 6,064KB → 13,120KB로 +7,056KB 증가했지만 마지막 8개 샘플에서 13,120KB로 고정되어 초기 로드/작업 처리 후 plateau로 보인다.
- 5분 관찰 기준 누적 leak 경보 수준의 지속 상승은 관측되지 않음.
종합 판정
| 영역 | 판정 | 근거 |
|---|---|---|
| 회귀 테스트 | PASS | 8/8 통과 |
| Hermes daemon 안정성 | PASS | LISTEN 60/60, health 60/60 |
| Hermes latency | PASS | 평균 3.91ms, 최대 58.44ms |
| 운영 LLM 성공률 | FAIL | 신규 LLM 로그 34건 중 성공 0건 |
openclaw:main 누출 |
PASS | 직접 로그 0건 |
GPT-5 max_tokens 400 재발 |
PASS | 모니터 구간 400 없음 |
| 메모리 안정성 | PASS/WATCH | worker leak 없음. Hermes RSS는 23MB→79MB 후 plateau |
권고
- 운영 LLM 실행권한 문제를 별도 최우선 이슈로 분리
Errno 1 Operation not permitted가 Hermes/Ollama 양쪽에서 반복됨.-
회귀 테스트는 로컬 권한에서 통과했으므로 코드 라우팅보다, 해당 운영 호출 주체의 sandbox/launchd/network 권한을 확인해야 한다.
-
DNS 실패 경로 확인
github-copilot/gpt-5-mini가 이 구간에서는 429가 아니라 DNS 실패를 냈다.-
LaunchAgent 환경의 DNS/network 권한 또는 샌드박스 실행 여부 확인 필요.
-
OpenRouter는 key 미설정이면 체인 지연만 만든다
- 운영에서
missing OpenRouter API key가 반복된다. -
키를 넣지 않을 계획이면 해당 tier 순서를 뒤로 보내거나 cooldown 정책을 명시하는 것이 좋다.
-
Hermes RSS는 추가 관찰
- health 60회 중 23MB→79MB로 증가 후 마지막 10회는 79.4MB 부근에서 안정.
- leak으로 단정할 수는 없지만, 30분 장기 관찰에서 계속 증가하는지 한 번 더 확인 권장.
원자료
/tmp/openclaw_5min_monitor_260414.json- pytest 결과:
8 passed in 1.01s