效能統計參考
此頁面說明 Solr 公開的一些統計資訊。
有兩種方法可以檢索指標。首先,您可以使用 指標 API,或者您可以啟用 JMX 並從 MBean 請求處理器 或透過 JConsole 等外部工具取得指標。以下說明著重於使用指標 API 檢索指標,但如果使用 MBean 請求處理器或外部工具,則指標名稱是相同的。
這些統計資訊是每個核心的。當您在 SolrCloud 模式下執行時,這些統計資訊會與個別副本的效能相關聯。
請求處理器統計資訊
更新請求處理器
更新請求處理器是將資料傳送到 Solr 的端點。我們可以查看有多少更新請求正在觸發、執行速度有多快,以及有關請求的其他有價值資訊。
登錄和路徑: solr.<核心>:UPDATE./update
您可以使用 API 請求(例如 https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=UPDATE
)請求更新請求處理器的統計資訊。
搜尋請求處理器
可用於測量和追蹤搜尋查詢的數量、回應時間等。如果您未使用 "select" 處理器,則需要適當變更路徑。同樣地,如果您使用 "sql" 處理器或 "export" 處理器、即時處理器 "get",或任何其他處理器,也可以找到類似的統計資訊。
登錄和路徑:solr.<核心>:QUERY./select
您可以使用 API 請求(例如 https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=QUERY./select
)請求 /select
請求處理器的統計資訊。
請求處理器的常用統計資訊
所有更新和搜尋請求處理器都會提供以下統計資訊。
請求時間
若要取得請求時間,尤其是,您可以傳送 API 請求,例如
-
https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=UPDATE./update.requestTimes
-
https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=QUERY./select.requestTimes
屬性 | 描述 |
---|---|
15minRate |
過去 15 分鐘內每秒收到的請求數。 |
5minRate |
過去 5 分鐘內每秒收到的請求數。 |
p75_ms |
屬於第 75 個百分位數的請求的請求處理時間。例如,如果收到 100 個請求,則此統計資訊會報告第 75 個最快請求時間。 |
p95_ms |
屬於第 95 個百分位數的請求的請求處理時間(毫秒)。例如,如果收到 100 個請求,則此統計資訊會報告第 95 個最快請求時間。 |
p999_ms |
第 99.9 百分位數的請求處理時間,以毫秒為單位。例如,如果收到 1000 個請求,則此統計資訊中將報告第 999 快請求的時間。 |
p99_ms |
第 99 百分位數的請求處理時間,以毫秒為單位。例如,如果收到 100 個請求,則此統計資訊中將報告第 99 快請求的時間。 |
count |
自 Solr 核心首次建立以來發出的請求總數。 |
median_ms |
所有請求處理時間的中位數。 |
meanRate |
自 Solr 核心首次建立以來,每秒收到的平均請求數。 |
錯誤和其他時間
也提供其他類型的資料,例如錯誤和逾時。這些資料可在不同的指標名稱下取得。例如
-
https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=UPDATE./update.errors
-
https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=QUERY./select.errors
下表顯示了指標名稱和要請求的屬性
指標名稱 | 描述 |
---|---|
|
處理程式遇到的錯誤數量。除了錯誤計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
客戶端在發出請求時發生的語法或解析錯誤數量。除了錯誤計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
此處理程式收到的請求數量。 |
|
伺服器在執行請求時擲出的錯誤數量。除了錯誤計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
收到的部分結果回應數量。除了逾時事件計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
自 Solr 處理程序啟動以來,所有請求處理時間的總和,以奈秒為單位。 |
|
處理程式註冊時的 Epoch 時間。 |
區分內部請求
在 SolrCloud 中處理大型集合的單個請求需要向其他副本發出額外的請求,這些副本通常位於其他節點上。內部請求在表面上看起來非常相似(相同的處理程式),但它們正在執行整個任務的一部分。區分這些請求非常重要!當請求有助於其他請求時,Solr 會使用不同的處理程式名稱來追蹤這些處理程式的指標
-
查詢:
/select
查詢的內部請求將追蹤為/select[shard]
。從技術上講,這發生在SearchHandler
及其子類別上。 -
(將來可以檢測更多內容)
Solr 的 Prometheus 匯出器組態會將處理程式上的這個後綴提取到名為「internal」的標籤。在設定 Grafana 或其他指標工具時,請務必根據分析的內容篩選這些指標。
更新處理程式
本節包含有關新增總數以及已針對 Solr 核心觸發的提交次數的資訊。
登錄和路徑: solr.<core>:UPDATE.updateHandler
您可以使用 API 請求(例如 https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=UPDATE.updateHandler
)取得下表中顯示的所有更新處理程式統計資訊。
以下說明您可以取得的特定統計資訊
屬性 | 描述 |
---|---|
|
自上次提交以來的「新增」請求總數。 |
|
兩個自動提交執行之間的最大時間。 |
|
已執行的自動提交總數。 |
|
已執行的提交總數。 除了提交計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
生命週期內執行的「有效」新增數量。當執行「add」命令時,計數器會遞增;當執行「rollback」時,計數器會遞減。 除了新增計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
生命週期內依 ID 執行的文件刪除數量。當執行「delete」命令時,計數器會遞增;當執行「rollback」時,計數器會遞減。 除了刪除計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
生命週期內依查詢執行的文件刪除數量。當執行「delete」命令時,計數器會遞增;當執行「rollback」時,計數器會遞減。 除了刪除計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
在生命週期內,對文件執行新增/刪除動作時收到的錯誤訊息數量。 除了錯誤計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
目前未提交的依 ID 刪除。 |
|
目前未提交的依查詢刪除。 |
|
待提交的文件數量。 |
|
在核心的生命週期內,對文件執行新增/刪除/提交/回滾動作時收到的錯誤訊息數量。 |
|
發出清除刪除項的提交命令數量。 除了清除刪除項計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
發生的索引合併次數。 除了合併計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
發出的明確最佳化命令次數。 除了最佳化計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
已執行的回滾次數。 除了回滾計數之外,還提供平均值、1 分鐘、5 分鐘和 15 分鐘的速率。 |
|
兩個軟式自動提交之間的最大文件「新增」數量。 |
|
已執行的軟式提交次數。 |
快取統計資訊
文件快取
此快取保存 Lucene Document 物件(每個文件的已儲存欄位)。由於 Lucene 內部文件 ID 是暫時性的,因此無法自動預熱此快取。
登錄和路徑: solr.<core>:CACHE.searcher.documentCache
您可以使用 API 請求(例如 https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=CACHE.searcher.documentCache
)取得下表中顯示的統計資訊。
查詢結果快取
此快取保存先前搜尋的結果:依據查詢、排序和要求的檔案範圍,排序的文件 ID 清單
登錄和路徑: solr.<core>:CACHE.searcher.queryResultCache
您可以使用 API 請求(例如 https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=CACHE.searcher.queryResultCache
)取得下表中顯示的統計資訊。
篩選快取
此快取用於符合查詢的所有文件的未排序集合的篩選器。
登錄和路徑: solr.<core>:CACHE.searcher.filterCache
您可以使用 API 請求(例如 https://127.0.0.1:8983/solr/admin/metrics?group=core&prefix=CACHE.searcher.filterCache
)取得下表中顯示的統計資訊。
快取的統計資訊
以下統計資訊適用於上述每個快取
屬性 | 描述 |
---|---|
cumulative_evictions |
自此節點執行以來,所有快取的快取逐出次數。 |
cumulative_hitratio |
自此節點執行以來,所有快取中快取命中次數與查詢次數的比率。 |
cumulative_hits |
自此節點執行以來,所有快取的快取命中次數。 |
cumulative_inserts |
自此節點執行以來,所有快取的快取插入次數。 |
cumulative_lookups |
自此節點執行以來,所有快取的快取查詢次數。 |
evictions |
目前索引搜尋器的快取逐出次數。 |
hitratio |
目前索引搜尋器的快取命中次數與查詢次數的比率。 |
hits |
目前索引搜尋器的命中次數。 |
inserts |
插入到快取的次數。 |
lookups |
對快取的查詢次數。 |
size |
在特定例項中,快取的項目數量。 |
warmupTime |
已註冊索引搜尋器的預熱時間,以毫秒為單位。此時間會納入快取的「自動預熱」計算中。 |
當啟用依堆積使用量逐出時,下列額外統計資訊適用於查詢結果快取
屬性 | 描述 |
---|---|
maxRamMB |
快取應使用的最大堆積,超出此值時,將會逐出索引鍵。 |
ramBytesUsed |
在特定例項中,快取的實際堆積使用量。 |
evictionsRamUsage |
由於堆積使用量超過 maxRamMB,目前索引搜尋器的快取逐出次數。 |
有關 Solr 快取的詳細資訊,請參閱「快取和查詢預熱」一節。