Last9 MCP Server

chính thức

Mang bối cảnh sản xuất thời gian thực—log, chỉ số và dấu vết—vào môi trường cục bộ của bạn một cách liền mạch để tự động sửa mã nhanh hơn.

Tài liệu

Last9 MCP Server

last9 mcp demo

Trợ lý AI của bạn không biết điều gì đang bị hỏng trong production. Công cụ này sẽ khắc phục điều đó.

Last9 MCP Server kết nối Claude, Cursor, Windsurf và bất kỳ trợ lý AI nào hỗ trợ MCP trực tiếp với dữ liệu quan sát production của bạn — logs, metrics, traces, exceptions, database queries, alerts và deployments. Trợ lý sẽ ngừng phỏng đoán và bắt đầu đọc các tín hiệu thực tế.


Bắt đầu trong 30 giây (Hosted)

Không cần cài đặt binary. Không cần quản lý token. Một URL, xác thực OAuth trong trình duyệt, xong.

Tìm org slug của bạn trong URL Last9: app.last9.io/<org_slug>/...

Claude Code

claude mcp add --transport http last9 https://app.last9.io/api/v4/organizations/<org_slug>/mcp

/mcp, chọn last9, xác thực. Vậy là xong.

Cursor

Settings > MCP > Add New MCP Server:

{
  "mcpServers": {
    "last9": {
      "type": "http",
      "url": "https://app.last9.io/api/v4/organizations/<org_slug>/mcp"
    }
  }
}

Nhấp Connect, hoàn tất OAuth.

VS Code

Yêu cầu phiên bản 1.99+. Mở Command Palette → MCP: Add Server, dán URL, xác thực.

Hoặc trực tiếp trong settings.json:

{
  "mcp": {
    "servers": {
      "last9": {
        "type": "http",
        "url": "https://app.last9.io/api/v4/organizations/<org_slug>/mcp"
      }
    }
  }
}

Windsurf

Settings > Cascade > Open MCP Marketplace > biểu tượng bánh răng (mcp_config.json):

{
  "mcpServers": {
    "last9": {
      "serverUrl": "https://app.last9.io/api/v4/organizations/<org_slug>/mcp"
    }
  }
}

Claude Web/Desktop

Settings > Connectors > Add custom connector. Đặt tên là last9, dán URL, xác thực.

Yêu cầu quyền admin đối với tổ chức Claude của bạn.


Tự lưu trữ (STDIO)

Sử dụng khi client MCP của bạn không hỗ trợ HTTP transport, hoặc khi bạn cần server chạy cục bộ.

Cài đặt

Homebrew:

brew install last9/tap/last9-mcp

NPM:

npm install -g @last9/mcp-server@latest
# or directly:
npx -y @last9/mcp-server@latest

Bản phát hành binary (Windows / thủ công):

Tải về từ GitHub Releases:

Nền tảngLưu trữ
Windows (x64)last9-mcp-server_Windows_x86_64.zip
Windows (ARM64)last9-mcp-server_Windows_arm64.zip
Linux (x64)last9-mcp-server_Linux_x86_64.tar.gz
Linux (ARM64)last9-mcp-server_Linux_arm64.tar.gz
macOS (x64)last9-mcp-server_Darwin_x86_64.tar.gz
macOS (ARM64)last9-mcp-server_Darwin_arm64.tar.gz

Lấy Refresh Token

Chỉ admin mới có thể tạo token.

  1. Vào API Access
  2. Nhấp Generate Token với quyền Write
  3. Sao chép nó

Cấu hình Client

Homebrew:

{
  "mcpServers": {
    "last9": {
      "command": "/opt/homebrew/bin/last9-mcp",
      "env": {
        "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
      }
    }
  }
}

NPM:

{
  "mcpServers": {
    "last9": {
      "command": "npx",
      "args": ["-y", "@last9/mcp-server@latest"],
      "env": {
        "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
      }
    }
  }
}

Nơi dán cấu hình này:

ClientVị trí
Claude Web/DesktopSettings > Developer > Edit Config (claude_desktop_config.json)
CursorSettings > Cursor Settings > MCP > Add New Global MCP Server
WindsurfSettings > Cascade > MCP Marketplace > biểu tượng bánh răng (mcp_config.json)
VS CodeGói trong { "mcp": { "servers": { ... } } } trong settings.jsonchi tiết
Cấu hình STDIO cho VS Code
{
  "mcp": {
    "servers": {
      "last9": {
        "type": "stdio",
        "command": "/opt/homebrew/bin/last9-mcp",
        "env": {
          "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
        }
      }
    }
  }
}

Với NPM: sử dụng "command": "npx" và thêm "args": ["-y", "@last9/mcp-server@latest"].

Windows

Sau khi tải về từ GitHub Releases, giải nén và trỏ đến đường dẫn đầy đủ:

{
  "mcpServers": {
    "last9": {
      "command": "C:\\Users\\<user>\\AppData\\Local\\Programs\\last9-mcp-server.exe",
      "env": {
        "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
      }
    }
  }
}

Sử dụng NPM dễ dàng hơn trên Windows — không cần quản lý đường dẫn.

Biến môi trường

BiếnMặc địnhMô tả
LAST9_REFRESH_TOKEN(bắt buộc)Refresh token từ API Access
LAST9_DATASOURCEmặc định của orgTên datasource/cluster — hữu ích khi bạn có nhiều cụm Levitate
LAST9_API_HOSTapp.last9.ioGhi đè máy chủ API
LAST9_MAX_GET_LOGS_ENTRIES5000Số mục tối đa cho các yêu cầu get_logs được chia nhỏ
LAST9_DEBUG_CHUNKINGfalseĐặt true để ghi nhật ký chi tiết lập kế hoạch phân đoạn cho get_logs, get_service_logs, get_traces
LAST9_DISABLE_TELEMETRYtrueĐặt false để bật truy vết OTel nội bộ
OTEL_SDK_DISABLEDBiến môi trường OTel tiêu chuẩn. Ghi đè LAST9_DISABLE_TELEMETRY
OTEL_EXPORTER_OTLP_ENDPOINTĐiểm cuối collector OTLP (chỉ khi telemetry được bật)
OTEL_EXPORTER_OTLP_HEADERSHeader xác thực OTLP (chỉ khi telemetry được bật)

Những gì nó có thể làm

Tình trạng dịch vụ

  • get_service_summary — Throughput, tỷ lệ lỗi, thời gian phản hồi p95 trên tất cả các dịch vụ
  • get_service_environments — Các môi trường khả dụng cho dịch vụ của bạn. Chạy công cụ này trước — các công cụ APM khác cần env từ đây
  • get_service_performance_details — Phân tích đầy đủ: throughput, tỷ lệ lỗi, p50/p90/p95/trung bình/tối đa, apdex, tính khả dụng
  • get_service_operations_summary — Các hoạt động được nhóm theo điểm cuối HTTP, lệnh gọi DB, tin nhắn, HTTP client
  • get_service_dependency_graph — Bản đồ phụ thuộc với throughput, độ trễ và tỷ lệ lỗi cho upstream/downstream/infra
  • get_exceptions — Ngoại lệ phía máy chủ với bộ lọc dịch vụ và span

Quan sát cơ sở dữ liệu

Bốn công cụ truy cập trực tiếp vào hiệu suất cơ sở dữ liệu của bạn, được lấy từ các span trace OpenTelemetry. Không cần thêm công cụ nếu bạn đã sử dụng OTel.

  • get_databases — Khám phá tất cả cơ sở dữ liệu trên toàn bộ hạ tầng của bạn: loại DB, máy chủ, throughput (truy vấn/phút), độ trễ p95, tỷ lệ lỗi, số lượng dịch vụ phụ thuộc
  • get_database_slow_queries — Các lần thực thi truy vấn chậm nhất thực tế, được sắp xếp theo thời lượng, kèm trace ID để đi sâu vào trace đầy đủ
  • get_database_queries — Các mẫu truy vấn và tổng hợp: tần suất chạy truy vấn, thời lượng trung bình/p95, tỷ lệ lỗi
  • get_database_server_metrics — Số liệu phía máy chủ từ chính máy chủ DB (CPU, kết nối, tỷ lệ hit bộ đệm — tùy thuộc vào hệ thống DB của bạn)

Hỗ trợ PostgreSQL, MySQL, MongoDB, Redis, Aerospike và bất kỳ thứ gì khác có trace OTel với thuộc tính db_system.

Prometheus / PromQL

  • prometheus_range_query — Truy vấn phạm vi PromQL trên bất kỳ số liệu nào
  • prometheus_instant_query — Truy vấn tức thời; sử dụng các hàm tổng hợp như avg_over_time, sum_over_time
  • prometheus_label_values — Giá trị nhãn cho một chuỗi nhất định
  • prometheus_labels — Tất cả nhãn khả dụng cho một chuỗi

Trỏ các công cụ này đến datasource/cluster khác với mặc định bằng cách đặt LAST9_DATASOURCE.

Logs

  • get_logs — Truy vấn log pipeline JSON đầy đủ (tổng hợp, bộ lọc, trích xuất trường)
  • get_service_logs — Dòng log thô cho một dịch vụ, có thể lọc theo mức độ nghiêm trọng và nội dung thân
  • get_log_attributes — Danh mục toàn cục các thuộc tính trong lược đồ log cho một cửa sổ thời gian
  • get_log_attributes_for_pipeline — Các trường log thực sự hiện diện cho một pipeline đang tiến hành (khám phá theo phạm vi), mỗi trường có filter_field chính xác của nó
  • get_drop_rules — Quy tắc loại bỏ log từ Last9 Control Plane
  • add_drop_rule — Tạo quy tắc loại bỏ mới để cắt giảm khối lượng log tại nguồn

Traces

  • get_traces — Truy vấn trace pipeline JSON cho các tìm kiếm và tổng hợp rộng
  • get_service_traces — Trace theo trace ID chính xác hoặc tên dịch vụ. Sử dụng khi bạn có trace ID — nhanh hơn
  • get_trace_attributes — Danh mục toàn cục các thuộc tính trong lược đồ trace
  • get_trace_attributes_for_pipeline — Các thuộc tính thực sự hiện diện cho một pipeline đang tiến hành (khám phá theo phạm vi), mỗi thuộc tính có filter_field chính xác của nó
  • get_trace_attribute_values — Các giá trị riêng biệt cho một thuộc tính trace, tùy chọn giới hạn phạm vi theo pipeline

Sự kiện thay đổi & Cảnh báo

  • get_change_events — Deployments, thay đổi cấu hình, rollbacks. Tương quan sự cố với những gì đã thay đổi
  • get_alert_config — Cấu hình quy tắc cảnh báo — có thể tìm kiếm theo tên, mức độ nghiêm trọng, loại, thẻ
  • get_alerts — Cảnh báo hiện đang kích hoạt trong một cửa sổ thời gian
  • get_alert_rule_state — Trạng thái kích hoạt lịch sử (1/0) cho mỗi quy tắc cảnh báo trong một khoảng thời gian, được nhóm theo rule_id. Có thể lọc theo nhóm cảnh báo, tên quy tắc, bộ lọc nhãn và trạng thái.
  • get_notification_channels — Các kênh thông báo đã cấu hình (Slack, PagerDuty, email, v.v.)

Bảng điều khiển tùy chỉnh

  • list_dashboards — Tất cả bảng điều khiển tùy chỉnh trong tổ chức của bạn: ID, tên và siêu dữ liệu
  • get_dashboard — Định nghĩa đầy đủ bảng điều khiển theo ID, bao gồm bảng và truy vấn
  • create_dashboard — Tạo bảng điều khiển tùy chỉnh mới với bảng, truy vấn và siêu dữ liệu
  • update_dashboard — Cập nhật bảng điều khiển hiện có theo ID (bảng điều khiển hệ thống chỉ đọc sẽ trả về lỗi)
  • delete_dashboard — Xóa bảng điều khiển tùy chỉnh theo ID

Phân giải tên mờ

  • did_you_mean — Khi trợ lý không chắc chắn về tên thực thể, công cụ này trả về các kết quả khớp gần nhất từ danh mục của bạn (dịch vụ, môi trường, máy chủ, cơ sở dữ liệu, triển khai/không gian tên K8s, công việc). Tối đa 3 gợi ý với điểm tương đồng. Máy chủ tự động gọi công cụ này trước hầu hết các công cụ khi tra cứu tên trả về trống.

Cách thức hoạt động

Liên kết sâu trên mọi phản hồi. Mỗi công cụ trả về một trường deep_link — một URL trực tiếp vào bảng điều khiển Last9 cho chính truy vấn và phạm vi thời gian đó. Trợ lý có thể đưa cho bạn liên kết; bạn nhấp vào nó; bạn đến đó.

Bộ nhớ đệm thuộc tính trực tiếp. Khi khởi động, máy chủ tìm nạp tên thuộc tính log và trace thực tế từ dữ liệu của bạn và nhúng chúng vào mô tả công cụ. Điều này có nghĩa là trợ lý AI biết những trường nào tồn tại trong lược đồ của bạn, không chỉ là danh sách chung. Bộ nhớ đệm làm mới mỗi 2 giờ.

Kết quả lớn được chia nhỏ. get_logsget_traces xử lý các tập kết quả lớn thông qua việc chia nhỏ thay vì cắt bớt. Giới hạn mặc định là 5000 mục cho log; có thể cấu hình qua LAST9_MAX_GET_LOGS_ENTRIES.


Phát triển

Chế độ HTTP, kiểm tra curl, xây dựng từ mã nguồn

Chạy ở chế độ HTTP

export LAST9_REFRESH_TOKEN="your_refresh_token"
export LAST9_HTTP=true
export LAST9_PORT=8080
./last9-mcp-server

Máy chủ khởi động tại http://localhost:8080/mcp.

Kiểm tra với curl

MCP Streamable HTTP yêu cầu bắt tay khởi tạo trước. Đừng đặt Mcp-Session-Id trong yêu cầu đầu tiên.

# Step 1: Initialize
SESSION_ID=$(curl -si -X POST http://localhost:8080/mcp \
    -H "Content-Type: application/json" \
    -d '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "initialize",
      "params": {
        "protocolVersion": "2024-11-05",
        "capabilities": {},
        "clientInfo": {"name": "curl-test", "version": "1.0"}
      }
    }' | grep -i "^Mcp-Session-Id:" | awk '{print $2}' | tr -d '\r')
echo "Session: $SESSION_ID"

# Step 2: Send initialized notification
curl -s -X POST http://localhost:8080/mcp \
    -H "Content-Type: application/json" \
    -H "Mcp-Session-Id: $SESSION_ID" \
    -d '{"jsonrpc": "2.0", "method": "notifications/initialized", "params": {}}'

# Step 3: List tools
curl -s -X POST http://localhost:8080/mcp \
    -H "Content-Type: application/json" \
    -H "Mcp-Session-Id: $SESSION_ID" \
    -d '{"jsonrpc": "2.0", "id": 2, "method": "tools/list", "params": {}}'

# Step 4: Call a tool
curl -s -X POST http://localhost:8080/mcp \
    -H "Content-Type: application/json" \
    -H "Mcp-Session-Id: $SESSION_ID" \
    -d '{
      "jsonrpc": "2.0",
      "id": 3,
      "method": "tools/call",
      "params": {
        "name": "get_service_logs",
        "arguments": {
          "service": "your-service-name",
          "lookback_minutes": 30,
          "limit": 10
        }
      }
    }'

Xây dựng từ mã nguồn

git clone https://github.com/last9/last9-mcp-server.git
cd last9-mcp-server
go build -o last9-mcp-server
LAST9_HTTP=true ./last9-mcp-server

LAST9_HTTP=true dành cho phát triển cục bộ. Để sử dụng thực tế, điểm cuối HTTP được lưu trữ dễ dàng hơn.


Tham khảo công cụ

Tất cả tham số, tiêu chuẩn đầu vào thời gian và chi tiết

Đầu vào thời gian

  • Thời gian tuyệt đối (start_time_iso/end_time_iso, hoặc time_iso) được ưu tiên hơn lookback_minutes.
  • Đối với cửa sổ tương đối: sử dụng lookback_minutes.
  • Đối với cửa sổ tuyệt đối: sử dụng RFC3339/ISO8601 — 2026-02-09T15:04:05Z.
  • YYYY-MM-DD HH:MM:SS cũ chỉ được chấp nhận để tương thích.

get_exceptions

  • limit (số nguyên, tùy chọn): Ngoại lệ tối đa. Mặc định: 20.
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn): Phạm vi thời gian tuyệt đối.
  • service_name (chuỗi, tùy chọn): Lọc theo dịch vụ.
  • span_name (chuỗi, tùy chọn): Lọc theo tên span.
  • deployment_environment (chuỗi, tùy chọn): Lọc theo môi trường.

get_service_summary

  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • env (chuỗi, tùy chọn): Mặc định là prod.

get_service_environments

  • start_time_iso / end_time_iso (chuỗi, tùy chọn)

Tất cả các công cụ APM khác yêu cầu giá trị env. Sử dụng "" nếu công cụ này trả về trống.

get_service_performance_details

  • service_name (chuỗi, bắt buộc)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • env (chuỗi, tùy chọn): Mặc định là prod.

get_service_operations_summary

  • service_name (chuỗi, bắt buộc)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • env (chuỗi, tùy chọn): Mặc định là prod.

get_service_dependency_graph

  • service_name (chuỗi, tùy chọn)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • env (chuỗi, tùy chọn): Mặc định là prod.

get_databases

  • env (chuỗi, tùy chọn): Lọc theo môi trường. Mặc định: tất cả.
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)

get_database_slow_queries

  • db_system (chuỗi, tùy chọn): ví dụ: postgresql, mysql, mongodb, redis.
  • host (chuỗi, tùy chọn): Máy chủ cơ sở dữ liệu (net_peer_name).
  • service_name (chuỗi, tùy chọn): Tên dịch vụ gọi.
  • env (chuỗi, tùy chọn)
  • min_duration_ms (số thực, tùy chọn): Thời lượng truy vấn tối thiểu tính bằng ms.
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • limit (số nguyên, tùy chọn): Mặc định: 20.

get_database_queries

  • db_system (chuỗi, tùy chọn)
  • host (chuỗi, tùy chọn)
  • service_name (chuỗi, tùy chọn)
  • env (chuỗi, tùy chọn)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • limit (số nguyên, tùy chọn): Mặc định: 20.

get_database_server_metrics

  • db_system (chuỗi, bắt buộc): ví dụ: postgresql, mysql, mongodb, redis, aerospike.
  • host (chuỗi, tùy chọn)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)

prometheus_range_query

  • query (chuỗi, bắt buộc): Truy vấn PromQL.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn): Mặc định là 60 phút trước.
  • lookback_minutes (số thực, tùy chọn): Mặc định: 60.

prometheus_instant_query

  • query (chuỗi, bắt buộc)
  • time_iso (chuỗi, tùy chọn): Mặc định là hiện tại.
  • lookback_minutes (số thực, tùy chọn)

prometheus_label_values

  • match_query (chuỗi, tùy chọn): Bộ lọc PromQL.
  • label (chuỗi, bắt buộc): Tên nhãn.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)

prometheus_labels

  • match_query (chuỗi, tùy chọn): Bộ lọc PromQL.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)

get_logs

  • logjson_query (mảng, bắt buộc): Truy vấn pipeline JSON.
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 5.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • limit (số nguyên, tùy chọn): Mặc định máy chủ: 5000.
  • index (chuỗi, tùy chọn): physical_index:<name> hoặc rehydration_index:<block_name>.

Đối với kho dịch vụ dựa trên log, truy vấn physical_index_service_count trước:

sum by (name, service_name, env) (physical_index_service_count{destination="logs"})

Sử dụng service_name làm ServiceName, env làm môi trường khi có, và name làm tên chỉ mục vật lý. Nếu name="default", bỏ qua index; đối với chỉ mục vật lý không mặc định do người dùng chọn, truyền index: "physical_index:<name>". Nếu backend từ chối lọc chỉ mục vật lý tường minh, thử lại mà không có index và báo cáo rằng lọc chỉ mục vật lý tường minh không khả dụng cho backend đó.

get_service_logs

  • service (chuỗi, bắt buộc)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • limit (số nguyên, tùy chọn): Mặc định: 20.
  • env (chuỗi, tùy chọn)
  • severity_filters (mảng, tùy chọn): ví dụ: ["error", "warn"]. Logic OR.
  • body_filters (mảng, tùy chọn): ví dụ: ["timeout", "failed"]. Logic OR.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • index (chuỗi, tùy chọn)

Nhiều loại bộ lọc kết hợp với AND. Mỗi mảng sử dụng OR nội bộ. Sử dụng get_logs cho số lượng tổng hợp rộng trước; chỉ sử dụng get_service_logs sau khi thu hẹp vào một dịch vụ/môi trường/chỉ mục và một tập mẫu nhỏ.

get_log_attributes

  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 15.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • region (chuỗi, tùy chọn)
  • index (chuỗi, tùy chọn)

get_log_attributes_for_pipeline

  • pipeline (mảng, bắt buộc): Các giai đoạn lọc trước để giới hạn phạm vi khám phá, ví dụ: [{"type":"filter","query":{"$eq":["ServiceName","<service>"]}}].
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 15.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • region (chuỗi, tùy chọn)
  • index (chuỗi, tùy chọn)

get_drop_rules

Không có tham số.

add_drop_rule

  • name (chuỗi, bắt buộc)
  • filters (mảng, bắt buộc): Mỗi bộ lọc: key, value, operator (equals/not_equals), conjunction (and).

get_traces

Sử dụng cho tìm kiếm và tổng hợp rộng. Để tra cứu chính xác ID trace, sử dụng get_service_traces.

  • tracejson_query (mảng, bắt buộc)
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • limit (số nguyên, tùy chọn): Mặc định: 5000.

get_service_traces

Yêu cầu chính xác một trong trace_id hoặc service_name.

  • trace_id (chuỗi, tùy chọn): Khoảng thời gian tra cứu mặc định: 72 giờ.
  • service_name (chuỗi, tùy chọn): Khoảng thời gian tra cứu mặc định: 60 phút.
  • lookback_minutes (số nguyên, tùy chọn)
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • limit (số nguyên, tùy chọn): Mặc định: 10.
  • env (chuỗi, tùy chọn)

get_trace_attributes

  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 15.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • region (chuỗi, tùy chọn)

get_trace_attributes_for_pipeline

  • pipeline (mảng, bắt buộc): Các giai đoạn lọc trước để giới hạn phạm vi khám phá, ví dụ: [{"type":"filter","query":{"$eq":["ServiceName","<service>"]}}].
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 15.
  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • region (chuỗi, tùy chọn)

get_trace_attribute_values

  • tag_name (chuỗi, bắt buộc): Tên thuộc tính từ get_trace_attributes (ví dụ: resource_department hoặc attributes['http.method']).
  • pipeline (mảng, tùy chọn): Các giai đoạn lọc trước để giới hạn phạm vi giá trị; bỏ qua để lấy giá trị toàn cục.
  • region (chuỗi, tùy chọn)

get_change_events

  • start_time_iso / end_time_iso (chuỗi, tùy chọn)
  • lookback_minutes (số nguyên, tùy chọn): Mặc định: 60.
  • service (chuỗi, tùy chọn)
  • environment (chuỗi, tùy chọn)
  • event_name (chuỗi, tùy chọn): Gọi không có tham số này trước để lấy available_event_names.

get_alert_config

  • search_term (chuỗi, tùy chọn): Tìm kiếm văn bản tự do trên tên, nhóm, nguồn dữ liệu, thẻ.
  • rule_name (chuỗi, tùy chọn)
  • severity (chuỗi, tùy chọn)
  • rule_type (chuỗi, tùy chọn): static hoặc anomaly.
  • alert_group_name / alert_group_type / data_source_name (chuỗi, tùy chọn)
  • tags (mảng, tùy chọn): Tất cả phải khớp (logic AND).

get_alerts

  • time_iso (chuỗi, tùy chọn): Thời gian đánh giá theo RFC3339.
  • window (số nguyên, tùy chọn): Khoảng thời gian tra cứu tính bằng giây. Mặc định: 900. Phạm vi: 60–86400.
  • lookback_minutes (số nguyên, tùy chọn): Phạm vi: 1–1440.

get_alert_rule_state

  • start_time (số nguyên, bắt buộc): Điểm bắt đầu phạm vi theo Unix epoch (bao gồm).
  • end_time (số nguyên, bắt buộc): Điểm kết thúc phạm vi theo Unix epoch (bao gồm).
  • step (số nguyên, bắt buộc): Độ phân giải tính bằng giây giữa các mẫu. Số lượng mẫu ((end_time - start_time) / step + 1) được giới hạn ở 100.
  • alert_group_id (chuỗi, tùy chọn): Lọc theo ID nhóm cảnh báo.
  • rule_name (chuỗi, tùy chọn): Bộ lọc regex trên tên quy tắc.
  • alert_group_name (chuỗi, tùy chọn): Bộ lọc regex trên tên nhóm cảnh báo.
  • label_filters (chuỗi, tùy chọn): Các bộ lọc nhãn key=value phân tách bằng dấu phẩy.
  • state (chuỗi, tùy chọn): Lọc theo trạng thái (ví dụ: firing).

Trả về một bản đồ JSON của rule_id -> [{timestamp, is_firing}]. Một dấu thời gian mà tại đó một quy tắc vắng mặt trong phản hồi upstream được báo cáo là is_firing=0 — điều này có nghĩa là "không được quan sát thấy đang kích hoạt", không phải là trạng thái bình thường đã xác nhận.

get_notification_channels

Không có tham số. Trả về tất cả các kênh thông báo đã cấu hình (Slack, PagerDuty, email, webhooks, v.v.).

did_you_mean

  • query (chuỗi, bắt buộc): Tên cần tìm kiếm — một phần, sai chính tả hoặc viết tắt.
  • type (chuỗi, tùy chọn): Giới hạn theo loại thực thể: service, environment, host, database, k8s_deployment, k8s_namespace, job.

Trả về tối đa 3 kết quả khớp gần nhất với điểm tương đồng. Sử dụng điều này trước bất kỳ lệnh gọi công cụ nào khi tên thực thể không chắc chắn. Nếu lệnh gọi trước đó trả về kết quả trống, hãy thử điều này trước khi thử lại.

list_dashboards

Không có tham số. Trả về tất cả các bảng điều khiển tùy chỉnh trong tổ chức dưới dạng mảng JSON với id, name và siêu dữ liệu.

get_dashboard

  • id (chuỗi, bắt buộc): UUID bảng điều khiển.
  • region (chuỗi, tùy chọn): Khu vực để điền truy vấn bảng điều khiển. Mặc định là khu vực nguồn dữ liệu đã cấu hình.

create_dashboard

  • dashboard (đối tượng, bắt buộc): Định nghĩa bảng điều khiển với namepanels[]. Mỗi bảng điều khiển yêu cầu name, version, layout (x, y, w, h), visualization.typequeries[].
  • metadata (đối tượng, tùy chọn): Siêu dữ liệu bảng điều khiển — các trường _category_type (ví dụ: {"_category":"custom","_type":"metrics"}).

update_dashboard

  • id (chuỗi, bắt buộc): UUID bảng điều khiển cần cập nhật.
  • dashboard (đối tượng, bắt buộc): Nội dung bảng điều khiển thay thế đầy đủ (cùng hình dạng như tạo mới).
  • metadata (đối tượng, tùy chọn): Siêu dữ liệu thay thế. Bảng điều khiển hệ thống chỉ đọc sẽ trả về lỗi 403.

delete_dashboard

  • id (chuỗi, bắt buộc): UUID bảng điều khiển cần xóa. Không thể xóa bảng điều khiển hệ thống chỉ đọc.

Kiểm thử

Xem TESTING.md để biết thiết lập và hướng dẫn kiểm thử tích hợp.


MseeP.ai Security Assessment Badge