Bỏ qua để đến nội dung

Monitoring

Bài viết được dịch tự động từ bài viết gốc, chưa được kiểm tra lại bởi con người. Chỉ những bài viết có dấu tick xanh cạnh tiêu đề là đã được kiểm tra.

Theo dõi usage và hoạt động Cowork trong tổ chức bằng cách export event qua OpenTelemetry (OTel). Cowork export event qua OTel logs/events protocol, cho bạn thấy được prompt của user, response của model, API request, tool usage, và lỗi.

Cấu hình monitoring từ Cowork admin settings:

  1. Vào Admin settings > Cowork

  2. Cấu hình các trường sau:

    TrườngMô tảVí dụ
    OTLP endpointURL của OpenTelemetry collectorhttp://collector.example.com:4318
    OTLP protocolTransport protocolhttp/json hoặc http/protobuf
    OTLP headersHeader xác thực cho collector của bạnAuthorization=Bearer your-token
  3. Lưu cấu hình

  4. Bắt đầu session Cowork mới - cấu hình được nạp lúc bắt đầu session, session đang chạy sẽ không nhận cấu hình mới

Cowork export các event sau tới OTel collector. Theo mặc định, event chỉ chứa metadata. Nội dung prompt của user, text response của model, và chi tiết tool chỉ được đưa vào khi bạn bật bằng setting otlpContentCapture.

Khi user gửi một prompt, Cowork có thể gọi nhiều API và chạy nhiều tool. Attribute prompt.id liên kết tất cả event về đúng prompt đã tạo ra chúng.

AttributeMô tả
prompt.idUUID v4 định danh, liên kết mọi event sinh ra trong lúc xử lý một prompt

Lọc event theo một giá trị prompt.id cụ thể để trace toàn bộ hoạt động do một prompt gây ra.

Trên các bản deploy third-party, bạn có thể bật thêm OpenTelemetry trace export bằng setting otlpTracesEnabled (beta). Khi bật, các event phát ra lúc xử lý prompt sẽ có thêm trace_idspan_id, liên kết với trace span của session để phục vụ correlation đầu-cuối trong hệ thống observability của bạn.

Mọi event đều có các attribute sau:

AttributeMô tả
session.idID session
organization.idUUID của tổ chức
user.account_uuidUUID tài khoản user
user.account_idAccount ID dạng tag, khớp với Anthropic admin API (ví dụ user_01BWBeN28...)
user.idID thiết bị/bản cài đặt, ẩn danh
user.emailEmail user
workspace.host_pathsCác thư mục workspace trên host đã chọn trong desktop app (array chuỗi)
terminal.typeLoại terminal (non-interactive cho Cowork)

Ghi log khi user gửi một prompt.

Tên event: user_prompt

Ngoài các attribute chuẩn, có thêm:

AttributeMô tả
event.timestampTimestamp ISO 8601
event.sequenceCounter tăng dần để sắp thứ tự event trong session
prompt_lengthĐộ dài prompt
promptNội dung prompt

Ghi log khi model hoàn thành một response có text output. Cần Claude desktop app bản 1.17377 hoặc mới hơn.

Tên event: assistant_response

Ngoài các attribute chuẩn:

AttributeMô tả
event.timestampTimestamp ISO 8601
event.sequenceCounter tăng dần
modelModel tạo ra response
request_idID request API
response_lengthĐộ dài response
responseText response của model (không gồm nội dung “thinking”). Bị cắt ở 60 KB. Khi tắt capture response, giá trị là chuỗi <REDACTED>

Response của model chỉ được ghi khi otlpContentCaptureassistantResponses, hoặc bất cứ khi nào prompt của user được capture.

Ghi log khi một tool chạy xong.

Tên event: tool_result

AttributeMô tả
event.timestampTimestamp ISO 8601
event.sequenceCounter tăng dần
tool_nameTên tool
success"true" hoặc "false"
duration_msThời gian chạy (ms)
errorThông báo lỗi (nếu fail)
decision_type"accept" hoặc "reject"
decision_sourceNguồn quyết định - "config", "hook", "user_permanent", "user_temporary", "user_abort", hoặc "user_reject"
tool_result_size_bytesKích thước kết quả tool (byte)
mcp_server_scopeID scope của MCP server (cho tool MCP)
tool_parametersChuỗi JSON chứa tham số của tool, gồm mcp_server_namemcp_tool_name cho tool MCP
tool_inputTham số tool dạng JSON. Chuỗi dài hơn 512 ký tự bị cắt; toàn bộ giới hạn khoảng 4K ký tự. Áp dụng cho mọi tool, kể cả MCP

Ghi log cho mỗi API request tới Claude.

Tên event: api_request

AttributeMô tả
event.timestampTimestamp ISO 8601
event.sequenceCounter tăng dần
modelModel dùng (vd. claude-sonnet-5)
cost_usdChi phí ước tính (USD)
duration_msThời gian request
input_tokensSố token input
output_tokensSố token output
cache_read_tokensSố token đọc từ cache
cache_creation_tokensSố token dùng để tạo cache
speed"fast" hoặc "normal"

Ghi log khi một API request tới Claude bị lỗi.

Tên event: api_error

AttributeMô tả
event.timestampTimestamp ISO 8601
event.sequenceCounter tăng dần
modelModel dùng
errorThông báo lỗi
status_codeHTTP status code dạng chuỗi, hoặc "undefined" nếu không phải lỗi HTTP
duration_msThời gian request
attemptSố lần thử (cho request bị retry)
speed"fast" hoặc "normal"

Ghi log khi có quyết định cấp quyền cho một tool.

Tên event: tool_decision

AttributeMô tả
event.timestampTimestamp ISO 8601
event.sequenceCounter tăng dần
tool_nameTên tool
decision"accept" hoặc "reject"
sourceNguồn quyết định - "config", "hook", "user_permanent", "user_temporary", "user_abort", hoặc "user_reject"

Các event export ra hỗ trợ nhiều loại phân tích:

  • Pattern dùng tool - phân tích event tool_result để tìm tool dùng nhiều nhất, tỷ lệ thành công, thời gian chạy trung bình, pattern lỗi.
  • Theo dõi chi phí - theo dõi cost_usd từ event api_request để hiểu xu hướng usage theo user/team. Group theo user.account_uuid hoặc organization.id.
  • Theo dõi hiệu năng - theo dõi thời gian API request và thời gian chạy tool để tìm điểm nghẽn hiệu năng.

Backend log bạn chọn quyết định loại phân tích bạn có thể làm:

  • Hệ thống log aggregation (Elasticsearch, Loki…): full-text search và phân tích log.
  • Columnar store (ClickHouse…): phân tích event có cấu trúc, query phức tạp.
  • Nền tảng observability (Honeycomb, Datadog…): query nâng cao, visualization, alerting.

Mọi event export kèm các resource attribute:

AttributeMô tả
service.namecowork
service.versionPhiên bản Claude app
host.archKiến trúc host (vd. arm64)
os.typeLoại hệ điều hành (vd. darwin)
os.versionPhiên bản hệ điều hành
  • Event chỉ được export khi admin cấu hình OTLP endpoint.
  • Nội dung prompt của user chỉ được đưa vào khi bạn bật userPrompts trong otlpContentCapture.
  • Từ Claude desktop app bản 1.17377, text response của model được đưa vào khi bạn bật assistantResponses trong otlpContentCapture, và cả khi nội dung prompt của user được capture.
  • Attribute tool_input (đường dẫn file, URL, pattern tìm kiếm và tham số khác) chỉ được đưa vào khi bạn bật toolDetails trong otlpContentCapture.
  • user.email luôn có trong attribute của event - hãy cấu hình backend telemetry để lọc/redact nếu đây là vấn đề với bạn.