Fluxheim/ドキュメント/Observability監視

Observability監視

PrometheusとOpenTelemetryを使い、個々のvisitorを追跡せずにaggregate traffic、errors、downloads、page usageを確認します。

Prometheus metrics endpoint endpoint

[metrics]
enabled = true
listen = "127.0.0.1:9100"

OTLP export設定設定

FLUXHEIM_OTLP=enabled
OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4318
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
OTEL_METRIC_EXPORT_INTERVAL=5000

observability compose stackはwebsite serviceにこれを設定します。設定値 FLUXHEIM_OTLP=disabled を使うと、同じbinaryをmetrics/traces exportなしで実行できます。

labelsはlow-cardinalityに保ちます: route group、language、status class、download artifact、GitHub targetが有用です。Raw IP addressesやuser identifiersは使いません。

dashboardに出すもの

signal重要な理由
route別requestsどのpublic pagesとdocsが使われているかを示します。
locale別requestsどのlanguagesにより多くのcareが必要かを示します。
status classesindividual usersを追跡せずにerrorsを示します。
Download clicksどのrelease artifactsが有用かを示します。
GitHub clicks集計集計どのexternal project linksが重要かを示します。

privacy boundary

  • raw request logsではなくaggregate countersとhistogramsを使います。
  • Do not label metrics with IP addresses, user agents, or full URLs.
  • PrometheusとOTLP listenersはloopbackまたはinternal networkに置きます。
  • tracking behaviorをprivacyとcookies pagesで見えるようにします。
日本語