OpenClaw’ın iki ana günlük yüzeyi vardır:Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
- Gateway tarafından yazılan dosya günlükleri (JSON satırları).
- Terminallerde ve Gateway Debug UI içinde gösterilen konsol çıktısı.
Günlüklerin bulunduğu yer
Varsayılan olarak Gateway, dönen bir günlük dosyasını şu konumun altına yazar:/tmp/openclaw/openclaw-YYYY-MM-DD.log
Tarih, gateway ana makinesinin yerel saat dilimini kullanır.
Her dosya logging.maxFileBytes değerine ulaştığında döndürülür (varsayılan: 100 MB).
OpenClaw, etkin dosyanın yanında en fazla beş numaralı arşiv tutar; örneğin
openclaw-YYYY-MM-DD.1.log, ve tanılamaları bastırmak yerine yeni bir etkin günlüğe
yazmaya devam eder.
Bunu ~/.openclaw/openclaw.json içinde geçersiz kılabilirsiniz:
Günlükleri okuma
CLI: canlı takip (önerilir)
Gateway günlük dosyasını RPC üzerinden takip etmek için CLI kullanın:--local-time: zaman damgalarını yerel saat diliminizde işler--url <url>/--token <token>/--timeout <ms>: standart Gateway RPC bayrakları--expect-final: aracı destekli RPC son yanıt bekleme bayrağı (paylaşılan istemci katmanı üzerinden burada kabul edilir)
- TTY oturumları: düzenli, renklendirilmiş, yapılandırılmış günlük satırları.
- TTY olmayan oturumlar: düz metin.
--json: satırla ayrılmış JSON (satır başına bir günlük olayı).--plain: TTY oturumlarında düz metni zorlar.--no-color: ANSI renklerini devre dışı bırakır.
--url verdiğinizde CLI, yapılandırma veya ortam kimlik bilgilerini
otomatik uygulamaz; hedef Gateway kimlik doğrulama gerektiriyorsa --token
değerini kendiniz ekleyin.
JSON modunda CLI, type etiketli nesneler üretir:
meta: akış meta verileri (dosya, imleç, boyut)log: ayrıştırılmış günlük girişinotice: kısaltma / döndürme ipuçlarıraw: ayrıştırılmamış günlük satırı
logs.tail yanıtlamadan önce zaman aşımına uğrarsa, openclaw logs
otomatik olarak yapılandırılmış Gateway dosya günlüğüne geri döner. Açık --url
hedefleri bu geri dönüşü kullanmaz.
Gateway erişilemezse CLI şu komutu çalıştırmanız için kısa bir ipucu yazdırır:
Control UI (web)
Control UI’nin Logs sekmesi, aynı dosyayılogs.tail kullanarak takip eder.
Nasıl açılacağını görmek için Control UI sayfasına bakın.
Yalnızca kanal günlükleri
Kanal etkinliğini (WhatsApp/Telegram/vb.) filtrelemek için şunu kullanın:Günlük biçimleri
Dosya günlükleri (JSONL)
Günlük dosyasındaki her satır bir JSON nesnesidir. CLI ve Control UI, yapılandırılmış çıktıyı (zaman, düzey, alt sistem, ileti) işlemek için bu girişleri ayrıştırır. Dosya günlüğü JSONL kayıtları, mevcut olduğunda makineyle filtrelenebilir üst düzey alanlar da içerir:hostname: gateway ana makine adı.message: tam metin araması için düzleştirilmiş günlük ileti metni.agent_id: günlük çağrısı aracı bağlamı taşıdığında etkin aracı kimliği.session_id: günlük çağrısı oturum bağlamı taşıdığında etkin oturum kimliği/anahtarı.channel: günlük çağrısı kanal bağlamı taşıdığında etkin kanal.
Konsol çıktısı
Konsol günlükleri TTY duyarlıdır ve okunabilirlik için biçimlendirilir:- Alt sistem önekleri (örn.
gateway/channels/whatsapp) - Düzey renklendirme (info/warn/error)
- İsteğe bağlı kompakt veya JSON modu
logging.consoleStyle tarafından denetlenir.
Gateway WebSocket günlükleri
openclaw gateway ayrıca RPC trafiği için WebSocket protokol günlüklemesine sahiptir:
- normal mod: yalnızca ilginç sonuçlar (hatalar, ayrıştırma hataları, yavaş çağrılar)
--verbose: tüm istek/yanıt trafiği--ws-log auto|compact|full: ayrıntılı işleme stilini seçer--compact:--ws-log compactiçin takma ad
Günlüklemeyi yapılandırma
Tüm günlükleme yapılandırması~/.openclaw/openclaw.json içindeki logging altında bulunur.
Günlük düzeyleri
logging.level: dosya günlükleri (JSONL) düzeyi.logging.consoleLevel: konsol ayrıntı düzeyi.
OPENCLAW_LOG_LEVEL ortam değişkeniyle geçersiz kılabilirsiniz (örn. OPENCLAW_LOG_LEVEL=debug). Ortam değişkeni yapılandırma dosyasına göre önceliklidir, böylece openclaw.json dosyasını düzenlemeden tek bir çalıştırma için ayrıntı düzeyini artırabilirsiniz. Ayrıca genel CLI seçeneği olan --log-level <level> değerini de geçebilirsiniz (örneğin openclaw --log-level debug gateway run); bu, ilgili komut için ortam değişkenini geçersiz kılar.
--verbose yalnızca konsol çıktısını ve WS günlük ayrıntı düzeyini etkiler; dosya
günlüğü düzeylerini değiştirmez.
Hedefli model aktarımı tanılamaları
Sağlayıcı çağrılarında hata ayıklarken tüm günlükleridebug düzeyine yükseltmek
yerine hedefli ortam bayrakları kullanın:
OPENCLAW_DEBUG_MODEL_TRANSPORT=1: istek başlangıcını, fetch yanıtını, SDK başlıklarını, ilk akış olayını, akış tamamlanmasını ve aktarım hatalarınıinfodüzeyinde üretir.OPENCLAW_DEBUG_MODEL_PAYLOAD=summary: model istek günlüklerine sınırlı bir istek yükü özeti ekler.OPENCLAW_DEBUG_MODEL_PAYLOAD=tools: yük özetine modele dönük tüm araç adlarını ekler.OPENCLAW_DEBUG_MODEL_PAYLOAD=full-redacted: düzeltilmiş, sınırlandırılmış bir JSON yük anlık görüntüsü ekler. Yalnızca hata ayıklarken kullanın; gizli değerler düzeltilir, ancak istemler ve ileti metni hâlâ mevcut olabilir.OPENCLAW_DEBUG_SSE=events: ilk olay ve akış tamamlanma zamanlamasını üretir.OPENCLAW_DEBUG_SSE=peek: ayrıca ilk beş düzeltilmiş SSE olay yükünü üretir; her olay için sınırlandırılır.OPENCLAW_DEBUG_CODE_MODE=1: kod modu araç yüzeyine sahip olduğu için yerel sağlayıcı araçlarının gizlendiği durumlar dahil, kod modu model yüzeyi tanılamalarını üretir.
openclaw logs --follow ve Control UI Logs sekmesi bunları gösterir. Bayraklar
olmadan aynı tanılamalar debug düzeyinde kullanılabilir kalır.
İz korelasyonu
Dosya günlükleri JSONL’dir. Bir günlük çağrısı geçerli bir tanılama iz bağlamı taşıdığında OpenClaw, dış günlük işlemcilerinin satırı OTEL span’leri ve sağlayıcıtraceparent yayılımı ile ilişkilendirebilmesi için iz alanlarını üst düzey JSON
anahtarları (traceId, spanId, parentSpanId, traceFlags) olarak yazar.
Gateway HTTP istekleri ve Gateway WebSocket çerçeveleri, dahili bir istek iz kapsamı
oluşturur. Bu eşzamansız kapsam içinde üretilen günlükler ve tanılama olayları,
açık bir iz bağlamı geçmediklerinde istek izini devralır. Aracı çalıştırma ve
model çağrısı izleri etkin istek izinin alt öğeleri haline gelir; böylece yerel
günlükler, tanılama anlık görüntüleri, OTEL span’leri ve güvenilen sağlayıcı
traceparent başlıkları ham istek veya model içeriği günlüğe yazılmadan traceId
ile birleştirilebilir.
Konuşma yaşam döngüsü günlük kayıtları da OpenTelemetry günlük dışa aktarımı
etkinleştirildiğinde dosya günlükleriyle aynı sınırlı öznitelikleri kullanarak
OTLP günlüklerine akar.
Model çağrısı boyutu ve zamanlaması
Model çağrısı tanılamaları, ham istem veya yanıt içeriğini yakalamadan sınırlı istek/yanıt ölçümlerini kaydeder:requestPayloadBytes: son model istek yükünün UTF-8 bayt boyuturesponseStreamBytes: akışla gelen model yanıt olaylarının UTF-8 bayt boyututimeToFirstByteMs: ilk akış yanıt olayından önce geçen süredurationMs: toplam model çağrısı süresi
Konsol stilleri
logging.consoleStyle:
pretty: insan dostu, renkli, zaman damgalı.compact: daha sıkı çıktı (uzun oturumlar için en iyisi).json: satır başına JSON (günlük işlemcileri için).
Düzeltme
OpenClaw, hassas token’ları konsol çıktısına, dosya günlüklerine, OTLP günlük kayıtlarına, kalıcı oturum transkript metnine veya Control UI araç olay yüklerine (araç başlangıç bağımsız değişkenleri, kısmi/sonuç yükleri, türetilmiş exec çıktısı ve yama özetleri) ulaşmadan önce düzeltebilir:logging.redactSensitive:off|tools(varsayılan:tools)logging.redactPatterns: varsayılan kümeyi geçersiz kılmak için regex dizeleri listesi. Özel desenler, Control UI araç yükleri için yerleşik varsayılanların üzerine uygulanır; bu nedenle bir desen eklemek, varsayılanlar tarafından zaten yakalanan değerlerin düzeltilmesini asla zayıflatmaz.
logging.redactSensitive: "off" yalnızca bu genel günlük/transkript politikasını
devre dışı bırakır. OpenClaw, UI istemcilerine, destek paketlerine, tanılama
gözlemcilerine, onay istemlerine veya aracı araçlarına gösterilebilecek güvenlik
sınırı yüklerini hâlâ düzeltir. Örnekler arasında Control UI araç çağrısı olayları,
sessions_history çıktısı, tanılama destek dışa aktarımları, sağlayıcı hata
gözlemleri, exec onay komutu gösterimi ve Gateway WebSocket protokol günlükleri
bulunur. Özel logging.redactPatterns bu yüzeylere proje özelinde desenler
eklemeye devam edebilir.
Tanılamalar ve OpenTelemetry
Tanılamalar, model çalıştırmaları ve ileti akışı telemetrisi (webhook’lar, kuyruklama, oturum durumu) için yapılandırılmış, makine tarafından okunabilir olaylardır. Günlüklerin yerini almazlar — metrikleri, izleri ve dışa aktarıcıları beslerler. Olaylar dışa aktarılsın veya aktarılmasın süreç içinde üretilir. İki bitişik yüzey:- OpenTelemetry dışa aktarımı — metrikleri, izleri ve günlükleri OTLP/HTTP üzerinden herhangi bir OpenTelemetry uyumlu toplayıcıya veya arka uca (Grafana, Datadog, Honeycomb, New Relic, Tempo, vb.) gönderir. Tam yapılandırma, sinyal kataloğu, metrik/span adları, ortam değişkenleri ve gizlilik modeli özel bir sayfada bulunur: OpenTelemetry dışa aktarımı.
- Tanılama bayrakları —
logging.levelyükseltilmeden ek günlüklerilogging.filekonumuna yönlendiren hedefli hata ayıklama günlüğü bayrakları. Bayraklar büyük/küçük harfe duyarsızdır ve joker karakterleri (telegram.*,*) destekler.diagnostics.flagsaltında veyaOPENCLAW_DIAGNOSTICS=...ortam geçersiz kılmasıyla yapılandırın. Tam kılavuz: Tanılama bayrakları.
Sorun giderme ipuçları
- Gateway erişilemiyor mu? Önce
openclaw doctorçalıştırın. - Günlükler boş mu? Gateway’in çalıştığını ve
logging.fileiçindeki dosya yoluna yazdığını kontrol edin. - Daha fazla ayrıntı mı gerekiyor?
logging.leveldeğerinidebugveyatraceyapın ve yeniden deneyin.
İlgili
- OpenTelemetry dışa aktarımı — OTLP/HTTP dışa aktarımı, metrik/span kataloğu, gizlilik modeli
- Tanılama bayrakları — hedefli hata ayıklama günlüğü bayrakları
- Gateway günlükleme iç yapısı — WS günlük stilleri, alt sistem önekleri ve konsol yakalama
- Yapılandırma başvurusu — tam
diagnostics.*alan başvurusu