Solr 可观测性最佳实践

devtools/2025/3/19 15:54:14/

Solr 介绍

Solr 是一个开源的搜索平台,由 Apache 软件基金会维护。它建立在 Apache Lucene 项目之上,提供了一个完整的搜索应用服务器,具有高度可靠、可扩展和容错的特性。

监控 Solr 指标如服务器负载、内存使用、索引情况、查询性能、缓存命中率等,可以帮助了解 Solr 的运行状况,发现潜在问题,并进行相应的优化。

观测云

观测云是一款专为 IT 工程师打造的全链路可观测产品,它集成了基础设施监控、应用程序性能监控和日志管理,为整个技术栈提供实时可观察性。这款产品能够帮助工程师全面了解端到端的用户体验追踪,了解应用内函数的每一次调用,以及全面监控云时代的基础设施。此外,观测云还具备快速发现系统安全风险的能力,为数字化时代提供安全保障。

部署 DataKit

DataKit 是一个开源的、跨平台的数据收集和监控工具,由观测云开发并维护。它旨在帮助用户收集、处理和分析各种数据源,如日志、指标和事件,以便进行有效的监控和故障排查。DataKit 支持多种数据输入和输出格式,可以轻松集成到现有的监控系统中。

登录观测云控制台,在「集成」 - 「DataKit」选择对应安装方式,当前采用 Linux 主机部署 DataKit。

采集器配置

进入 DataKit 安装目录下的 conf.d/db 目录,复制 solr.conf.sample 并命名为 solr.conf。示例如下:

[[inputs.solr]]##(optional) collect interval, default is 10 secondsinterval = '10s'## specify a list of one or more Solr serversservers = ["http://localhost:8983"]## Optional HTTP Basic Auth Credentials# username = "username"# password = "pa$$word"## Set true to enable electionelection = true# [inputs.solr.log]# files = []# #grok pipeline script path# pipeline = "solr.p"[inputs.solr.tags]# some_tag = "some_value"# more_tag = "some_other_value"

配置好后,重启 DataKit 即可。

关键指标

以下是一些关键的 Solr 指标,这些指标对于监控 Solr 的性能和稳定性至关重要。

MetricDescriptionTypeUnit
hitratioRatio of cache hits to lookups for the current index searcher.floatpercent
hitsNumber of hits for the current index searcher.intcount
lookupsNumber of lookups against the cache.intcount
sizeNumber of entries in the cache at that particular instance.intcount
ram_bytes_usedActual heap usage of the cache at that particular instance.intB
max_ramMaximum heap that should be used by the cache beyond which keys will be evicted.intMB
countTotal number of requests made since the Solr process was started.intcount
meanMean of all the request processing time.floatms
medianMedian of all the request processing time.floatms
p95Request processing time in milliseconds for the request which belongs to the 95th Percentile.floatms
p99Request processing time in milliseconds for the request which belongs to the 99th Percentile.floatms
rate_1minRequests per second received over the past 1 minutes.floatreq/s
rate_5minRequests per second received over the past 5 minutes.floatreq/s
rate_15minRequests per second received over the past 15 minutes.floatreq/s
num_docsThe total number of indexed documents.intcount
deleted_docsThe number of deleted documents.intcount
warmupThe time spent warming up.intms

场景视图

登录观测云控制台,点击「场景」 -「新建仪表板」,输入 “Solr”, 选择 “Solr 监控视图”,点击 “确定” 即可添加视图。

监控器(告警)

Solr 实例缓存命中率小于 60% 就触发告警,提醒用户缓存配置需要优化。

Solr 实例 P95 请求响应时间大于 1 秒就触发告警,提醒用户系统性能可能存在问题。

Solr 实例所有请求处理平均时间大于 500 毫秒就触发告警,提醒用户系统性能可能存在问题。

总结

本文从指标、可视化仪表板、监控告警等三个角度展示了如何使用观测云这个一体化观测平台对 Solr 进行全面观测,大大减少了管理多个运维工具的负担,让 DevOps 团队将更多精力投放到更高价值的工作中。


http://www.ppmy.cn/devtools/168380.html

相关文章

Python学习- 数据结构类型

一. list list_data [10, 20, 30]列表:是一个不限制类型,可增加,修改,删除的数据类型 可操作的方法:append,extend, pop,del ,insert append: 可向list最后一个位置添加一个元…

使用PyMongo操作MongoDB(一)

使用PyMongo操作MongoDB MongoDB作为一款流行的NoSQL数据库,以其灵活的数据模型和强大的查询能力受到开发者青睐。通过PyMongo库,我们可以在Python中轻松实现与MongoDB的交互。本文将系统介绍PyMongo的安装、连接及数据库操作全流程。 一、环境准备 安…

Webpack vs Rollup vs Parcel:构建工具深度对比

文章目录 1. 核心特性对比1.1 功能定位1.2 技术架构对比 2. 配置与使用2.1 Webpack 配置示例2.2 Rollup 配置示例2.3 Parcel 使用示例 3. 性能对比3.1 构建速度3.2 输出质量 4. 生态系统4.1 插件生态4.2 学习曲线 5. 适用场景分析5.1 Webpack 适用场景5.2 Rollup 适用场景5.3 P…

Matlab绘图(二)——坐标轴的刻度字号大小和小数位数

❤️修改横纵坐标数值字号 % 设置坐标轴刻度数值的字号 set(gca, FontSize, 14); % 例如,设置为 14❤️ 标签分数以上下的形式显示 xticklabels({$-4\pi$, $-\frac{4\pi}{9}$, $0$, $\frac{4\pi}{9}$, $4\pi$}); set(gca, TickLabelInterpreter, latex); % 让 MA…

新版AndroidStudio / IDEA上传项目到Gitee

目录 1.Gitee创建仓库 2.填写仓库的信息 3.创建成功后复制仓库的地址 4.检查AndroidStudio是否配置Git 5.点击测试 6.之后Create Git Repository 7.添加到本地仓库 8.提交项目 9.添加上传仓库的地址 10.上传成功 11.去Gitee上刷新检查 1.Gitee创建仓库 2.填写仓库的…

企业级 GitLab 开发流程全解

🌐 企业级 GitLab 开发流程全解 面向 DevOps 场景,适用于单人、多人协作,支持边缘端与云端开发联动 一、整体流程概览 需求评审 → 分支开发 → 代码提交 → MR审核 → 自动测试 → 自动构建 → 自动部署 → 验收上线二、GitLab 分支规范 分支类型命名示例用途说明mainmai…

css3有哪些新属性

CSS3 相较于之前版本,增加了很多新属性和特性,使网页设计更具表现力和灵活性。以下是一些重要的 CSS3 新属性和特性,按照功能分类列举: 一、布局相关 Flexbox 布局 display: flex;常用属性:justify-content, align-it…

基于多头注意机制的多尺度特征融合的GCN的序列数据(功率预测、故障诊断)模型及代码详解

GCN基础 在深度学习领域中,图卷积网络(GCN)是一种强大的图数据处理工具。它将卷积操作扩展到图结构上,能够 有效捕捉图中节点之间的关系信息 。GCN的核心思想是通过聚合邻居节点的特征来更新目标节点的表示,这种 局部聚合机制 使得GCN能够学习到图的拓扑结构和节点属性。 …