指標 實驗性

    /metrics 路徑會公開與 Prometheus 相容的資料。您也需要在系統中安裝 Grafana 才能使用此功能。

    啟用 `/metrics`

    這是一項實驗性功能。使用實驗性功能端點來啟用它

    curl \
      -X PATCH 'https://127.0.0.1:7700/experimental-features/' \
      -H 'Content-Type: application/json' \
      --data-binary '{
        "enableMetrics": true
      }'
    

    此功能不適用於 Meilisearch Cloud 用戶。

    公開的資訊

    /metrics 會公開下列資訊

    名稱描述類型
    meilisearch_http_requests_total傳回 API 資源被存取的次數。計數器
    meilisearch_http_response_time_seconds返回一個時間直方圖,顯示 API 資源呼叫進入時間桶(以秒表示)的次數。直方圖
    meilisearch_db_size_bytes返回磁碟上資料庫的「實際」大小(以位元組為單位)。它包含所有 lmdb 記憶體對應檔案,以及data.ms目錄中包含的所有檔案(主要是尚未處理的更新檔案)。計量器
    meilisearch_used_db_size_bytes返回 meilisearch 實際使用的資料庫大小(以位元組為單位)。它包含與meilisearch_db_size_bytes相同的所有檔案,不同之處在於,當涉及到 LMDB 資料庫時,我們只計算 meilisearch 使用的頁面。這表示如果您看到兩個指標之間存在很大的差距,則新增文件可能會重複使用釋放的頁面,而不是增加meilisearch_db_size_bytes計量器
    meilisearch_index_docs_count返回索引的文件數。計量器
    meilisearch_index_count返回 Meilisearch 實例的索引總數。計量器
    meilisearch_nb_tasks返回 Meilisearch 實例的任務總數,並依任務類型及其值進行參數化(請參閱下表)。計數器
    meilisearch_last_update返回上次更新的時間戳記。計量器
    meilisearch_is_indexing如果 Meilisearch 正在建立索引,則返回 1,否則返回 0計量器
    危險

    具有 /metrics 存取權限的 API 金鑰能夠查看實例中所有路由的所有 HTTP 呼叫。這可能會導致洩漏敏感資訊,例如索引名稱、文件的主要金鑰和 API 金鑰。

    取得指標

    GET/metrics

    取得您目前實例狀態的資料。在大多數情況下,您應該僅透過與 Prometheus 相容的工具(例如 Grafana)查詢此端點。

    請參閱 Meilisearch 的範例設定檔,以取得基本 Prometheus 刮取器Grafana 儀表板的範例。

    範例

    curl \
      -X GET 'https://127.0.0.1:7700/metrics'

    回應:200 OK

    # HELP meilisearch_db_size_bytes Meilisearch DB Size In Bytes
    # TYPE meilisearch_db_size_bytes gauge
    meilisearch_db_size_bytes 188416
    # HELP meilisearch_http_response_time_seconds Meilisearch HTTP response times
    # TYPE meilisearch_http_response_time_seconds histogram
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.005"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.01"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.025"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.05"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.075"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.1"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.25"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.5"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="0.75"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="1"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="2.5"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="5"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="7.5"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="10"} 0
    meilisearch_http_response_time_seconds_bucket{method="GET",path="/metrics",le="+Inf"} 0
    meilisearch_http_response_time_seconds_sum{method="GET",path="/metrics"} 0
    meilisearch_http_response_time_seconds_count{method="GET",path="/metrics"} 0
    # HELP meilisearch_index_count Meilisearch Index Count
    # TYPE meilisearch_index_count gauge
    meilisearch_index_count 1
    # HELP meilisearch_index_docs_count Meilisearch Index Docs Count
    # TYPE meilisearch_index_docs_count gauge
    meilisearch_index_docs_count{index="books"} 6
    # HELP meilisearch_is_indexing Meilisearch Is Indexing
    # TYPE meilisearch_is_indexing gauge
    meilisearch_is_indexing 0
    # HELP meilisearch_last_update Meilisearch Last Update
    # TYPE meilisearch_last_update gauge
    meilisearch_last_update 1723126669
    # HELP meilisearch_nb_tasks Meilisearch Number of tasks
    # TYPE meilisearch_nb_tasks gauge
    meilisearch_nb_tasks{kind="indexes",value="books"} 1
    meilisearch_nb_tasks{kind="statuses",value="canceled"} 0
    meilisearch_nb_tasks{kind="statuses",value="enqueued"} 0
    meilisearch_nb_tasks{kind="statuses",value="failed"} 0
    meilisearch_nb_tasks{kind="statuses",value="processing"} 0
    meilisearch_nb_tasks{kind="statuses",value="succeeded"} 1
    meilisearch_nb_tasks{kind="types",value="documentAdditionOrUpdate"} 1
    meilisearch_nb_tasks{kind="types",value="documentDeletion"} 0
    meilisearch_nb_tasks{kind="types",value="documentEdition"} 0
    meilisearch_nb_tasks{kind="types",value="dumpCreation"} 0
    meilisearch_nb_tasks{kind="types",value="indexCreation"} 0
    meilisearch_nb_tasks{kind="types",value="indexDeletion"} 0
    meilisearch_nb_tasks{kind="types",value="indexSwap"} 0
    meilisearch_nb_tasks{kind="types",value="indexUpdate"} 0
    meilisearch_nb_tasks{kind="types",value="settingsUpdate"} 0
    meilisearch_nb_tasks{kind="types",value="snapshotCreation"} 0
    meilisearch_nb_tasks{kind="types",value="taskCancelation"} 0
    meilisearch_nb_tasks{kind="types",value="taskDeletion"} 0
    # HELP meilisearch_used_db_size_bytes Meilisearch Used DB Size In Bytes
    # TYPE meilisearch_used_db_size_bytes gauge
    meilisearch_used_db_size_bytes 90112