diagnostics-prometheus Plugin’i aracılığıyla tanılama metriklerini sunabilir. Güvenilir dahili tanılamaları dinler ve şu adreste bir Prometheus metin uç noktası oluşturur:
text/plain; version=0.0.4; charset=utf-8 şeklindedir; bu, standart Prometheus dışa aktarma biçimidir.
İzler, günlükler, OTLP push ve OpenTelemetry GenAI anlamsal öznitelikleri için bkz. OpenTelemetry dışa aktarma.
Hızlı başlangıç
Gateway'i yeniden başlatın
HTTP yolu Plugin başlangıcında kaydedilir, bu nedenle etkinleştirdikten sonra yeniden yükleyin.
Korumalı yolu kazıyın
Operatör istemcilerinizin kullandığı aynı gateway kimlik doğrulamasını gönderin:
diagnostics.enabled: true gereklidir. Bu olmadan Plugin yine HTTP yolunu kaydeder ancak hiçbir tanılama olayı dışa aktarıcıya akmaz, bu yüzden yanıt boştur.Dışa aktarılan metrikler
| Metrik | Tür | Etiketler |
|---|---|---|
openclaw_run_completed_total | sayaç | channel, model, outcome, provider, trigger |
openclaw_run_duration_seconds | histogram | channel, model, outcome, provider, trigger |
openclaw_model_call_total | sayaç | api, error_category, model, outcome, provider, transport |
openclaw_model_call_duration_seconds | histogram | api, error_category, model, outcome, provider, transport |
openclaw_model_tokens_total | sayaç | agent, channel, model, provider, token_type |
openclaw_gen_ai_client_token_usage | histogram | model, provider, token_type |
openclaw_model_cost_usd_total | sayaç | agent, channel, model, provider |
openclaw_tool_execution_total | sayaç | error_category, outcome, params_kind, tool |
openclaw_tool_execution_duration_seconds | histogram | error_category, outcome, params_kind, tool |
openclaw_harness_run_total | sayaç | channel, error_category, harness, model, outcome, phase, plugin, provider |
openclaw_harness_run_duration_seconds | histogram | channel, error_category, harness, model, outcome, phase, plugin, provider |
openclaw_message_processed_total | sayaç | channel, outcome, reason |
openclaw_message_processed_duration_seconds | histogram | channel, outcome, reason |
openclaw_message_delivery_total | sayaç | channel, delivery_kind, error_category, outcome |
openclaw_message_delivery_duration_seconds | histogram | channel, delivery_kind, error_category, outcome |
openclaw_queue_lane_size | gauge | lane |
openclaw_queue_lane_wait_seconds | histogram | lane |
openclaw_session_state_total | sayaç | reason, state |
openclaw_session_queue_depth | gauge | state |
openclaw_memory_bytes | gauge | kind |
openclaw_memory_rss_bytes | histogram | yok |
openclaw_memory_pressure_total | sayaç | level, reason |
openclaw_telemetry_exporter_total | sayaç | exporter, reason, signal, status |
openclaw_prometheus_series_dropped_total | sayaç | yok |
Etiket politikası
Sınırlı, düşük kardinaliteli etiketler
Sınırlı, düşük kardinaliteli etiketler
Prometheus etiketleri sınırlı ve düşük kardinalitelidir. Dışa aktarıcı;
runId, sessionKey, sessionId, callId, toolCallId, mesaj kimlikleri, sohbet kimlikleri veya sağlayıcı istek kimlikleri gibi ham tanılama tanımlayıcılarını yaymaz.Etiket değerleri redakte edilir ve OpenClaw’ın düşük kardinaliteli karakter politikasına uymalıdır. Politikayı geçemeyen değerler, metriğe bağlı olarak unknown, other veya none ile değiştirilir.Seri sınırı ve taşma muhasebesi
Seri sınırı ve taşma muhasebesi
Dışa aktarıcı, bellekte tutulan zaman serilerini sayaçlar, gauge’lar ve histogramlar dahil toplam 2048 seri ile sınırlar. Bu sınırın ötesindeki yeni seriler bırakılır ve her seferinde
openclaw_prometheus_series_dropped_total bir artırılır.Yukarı akışta bir özniteliğin yüksek kardinaliteli değer sızdırdığına dair kesin bir sinyal olarak bu sayacı izleyin. Dışa aktarıcı sınırı asla otomatik olarak yükseltmez; artıyorsa sınırı devre dışı bırakmak yerine kaynağı düzeltin.Prometheus çıktısında asla görünmeyenler
Prometheus çıktısında asla görünmeyenler
- istem metni, yanıt metni, araç girdileri, araç çıktıları, sistem istemleri
- ham sağlayıcı istek kimlikleri (yalnızca geçerliyse sınırlı karmalar span’lerde bulunur — metriklerde asla)
- oturum anahtarları ve oturum kimlikleri
- host adları, dosya yolları, gizli değerler
PromQL tarifleri
Prometheus ve OpenTelemetry dışa aktarma arasında seçim
OpenClaw her iki yüzeyi de bağımsız olarak destekler. Bunlardan birini, ikisini birden veya hiçbirini çalıştırabilirsiniz.- diagnostics-prometheus
- diagnostics-otel
- Pull modeli: Prometheus,
/api/diagnostics/prometheusyolunu kazır. - Harici toplayıcı gerekmez.
- Normal Gateway kimlik doğrulaması üzerinden doğrulanır.
- Yüzey yalnızca metriklerden oluşur (iz veya günlük yoktur).
- Zaten Prometheus + Grafana üzerinde standartlaşmış yığınlar için en uygunudur.
Sorun giderme
Boş yanıt gövdesi
Boş yanıt gövdesi
- Yapılandırmada
diagnostics.enabled: truedeğerini kontrol edin. openclaw plugins list --enabledile Plugin’in etkin ve yüklü olduğunu doğrulayın.- Biraz trafik oluşturun; sayaçlar ve histogramlar ancak en az bir olaydan sonra satır yayar.
401 / yetkisiz
401 / yetkisiz
Uç nokta Gateway operatör kapsamını gerektirir (
auth: "gateway" ve gatewayRuntimeScopeSurface: "trusted-operator"). Prometheus’un diğer herhangi bir Gateway operatör yolu için kullandığı aynı token’ı veya parolayı kullanın. Herkese açık kimlik doğrulamasız kip yoktur.`openclaw_prometheus_series_dropped_total` artıyor
`openclaw_prometheus_series_dropped_total` artıyor
Yeni bir öznitelik 2048 seri sınırını aşıyor. Son metriklerde beklenmedik derecede yüksek kardinaliteli bir etiketi inceleyin ve bunu kaynakta düzeltin. Dışa aktarıcı, etiketleri sessizce yeniden yazmak yerine bilinçli olarak yeni serileri bırakır.
Prometheus yeniden başlatmadan sonra bayat seriler gösteriyor
Prometheus yeniden başlatmadan sonra bayat seriler gösteriyor
Plugin durumu yalnızca bellekte tutar. Gateway yeniden başlatıldıktan sonra sayaçlar sıfıra döner ve gauge’lar bir sonraki bildirilen değerlerinden yeniden başlar. Sıfırlamaları temiz şekilde ele almak için PromQL
rate() ve increase() kullanın.İlgili
- Diagnostics dışa aktarma — destek paketleri için yerel diagnostics zip
- Sağlık ve hazır olma —
/healthzve/readyzsondaları - Günlükleme — dosya tabanlı günlükleme
- OpenTelemetry dışa aktarma — izler, metrikler ve günlükler için OTLP push