Skip to content

本节仅适用于 Kubernetes 部署。

自托管 LangSmith 实例会以日志、指标和追踪的形式生成遥测数据。本节将向您展示如何访问这些数据并将其导出到可观测性收集器或后端。

本节假设您已经设置了监控基础设施,或者您将设置此基础设施,并希望了解如何配置 LangSmith 以从中收集数据。

基础设施指的是:

日志:OTel 示例

作为 LangSmith 自托管部署一部分的所有服务都会将日志写入其节点的文件系统和标准输出。为了访问这些日志,您需要设置您的收集器从文件系统或标准输出读取。大多数流行的收集器都支持从文件系统读取日志。

指标:OTel 示例

LangSmith 服务

以下 LangSmith 服务在端点以 Prometheus 指标格式公开指标。前端目前不公开指标。

  • 后端: http://<langsmith_release_name>-backend.<namespace>.svc.cluster.local:1984/metrics
  • 平台后端: http://<langsmith_release_name>-platform-backend.<namespace>.svc.cluster.local:1986/metrics
  • Playground: http://<langsmith_release_name>-playground.<namespace>.svc.cluster.local:1988/metrics
  • (仅限 LangSmith 控制平面)主机后端: http://<langsmith_release_name>-host-backend.<namespace>.svc.cluster.local:1985/metrics

您可以使用 PrometheusOpenTelemetry 收集器来抓取这些端点,并将指标导出到您选择的后端。

前端 Nginx

前端服务在以下端点公开其 Nginx 指标:langsmith-frontend.langsmith.svc.cluster.local:80/nginx_status。您可以自行抓取它们,或者使用 LangSmith 可观测性 Helm Chart 启动一个 Prometheus Nginx 导出器。

以下部分仅适用于集群内数据库。如果您使用外部数据库,则需要配置公开和获取指标。

Postgres + Redis

如果您使用集群内的 Postgres/Redis 实例,可以使用 Prometheus 导出器从您的实例公开指标。您可以部署自己的导出器,或者,如果您愿意,可以使用 LangSmith 可观测性 Helm Chart 为您部署一个导出器。

Clickhouse

集群内的 Clickhouse 已配置为无需导出器即可公开指标。您可以使用您的收集器在 http://<langsmith_release_name>-clickhouse.<namespace>.svc.cluster.local:9363/metrics 抓取指标。

追踪:OTel 示例

LangSmith 后端、平台后端、Playground 和 LangSmith 队列部署已进行插装,以发出 Otel 追踪。默认情况下追踪是关闭的,可以通过在您的 langsmith_config.yaml(或等效)文件中添加以下配置来为所有 LangSmith 服务启用:

yaml
config:
  tracing:
    enabled: true
    endpoint: "<your_collector_endpoint>"
    useTls: true # / false
    env: "ls_self_hosted" # 此值将设置为您的跨度(span)中的 "env" 属性
    exporter: "http" # 必须是 http 或 grpc 之一

LangChain 中文文档