MSSQL 性能指标集
editMSSQL 性能指标集edit
performance
指标集从 MSSQL 中通常称为 性能计数器 获取信息。
我们获取以下数据
- page_splits_per_sec: 每秒因索引页溢出而发生的页面拆分次数。
- lock_waits_per_sec: 每秒需要调用者等待的锁请求数。
- user_connections: 用户连接总数。
- transactions: 事务总数。
- active_temp_tables: 使用中的临时表/表变量数。
- connections_reset_per_sec: 从连接池启动的登录总数。
- logins_per_sec: 每秒启动的登录总数。这并不包括池化连接。
- logouts_per_sec: 每秒启动的注销操作总数。
- recompilations_per_sec: 每秒语句重新编译次数。统计语句重新编译触发的次数。通常,您希望重新编译次数较低。
- compilations_per_sec: 每秒 SQL 编译次数。指示进入编译代码路径的次数。包括由 SQL Server 中的语句级重新编译引起的编译。在 SQL Server 用户活动稳定后,此值会达到稳态。
- batch_requests_per_sec: 每秒接收的 Transact-SQL 命令批次数。此统计信息受所有约束(如 I/O、用户数、缓存大小、请求的复杂性等)的影响。高批次请求意味着吞吐量高。
- cache_hit.pct: 该比率是在过去几千次页面访问中缓存命中总数除以缓存查找总数。经过很长一段时间后,该比率变化很小。由于从缓存中读取比从磁盘中读取便宜得多,因此您希望此比率很高。
- page_life_expectancy.sec: 指示页面在缓冲池中未被引用(以秒为单位)将保留的秒数。
- buffer.checkpoint_pages_per_sec: 指示每秒由检查点或需要刷新所有脏页面的其他操作刷新到磁盘的页面数。
- buffer.database_pages: 指示缓冲池中包含数据库内容的页面数。
- buffer.target_pages: 缓冲池中的理想页面数。
这是一个默认指标集。如果主机模块未配置,则默认情况下启用此指标集。
有关指标集中每个字段的说明,请参阅 导出字段 部分。
以下是由此指标集生成的示例文档
{ "@timestamp": "2017-10-12T08:05:34.853Z", "event": { "dataset": "mssql.performance", "duration": 115000, "module": "mssql" }, "metricset": { "name": "performance", "period": 10000 }, "mssql": { "performance": { "active_temp_tables": 0, "batch_requests_per_sec": 7453, "buffer": { "cache_hit": { "pct": 0.55 }, "checkpoint_pages_per_sec": 124, "database_pages": 2191, "page_life_expectancy": { "sec": 2721 }, "target_pages": 1589248 }, "compilations_per_sec": 2503, "connections_reset_per_sec": 61, "lock_waits_per_sec": 4, "logins_per_sec": 2448, "logouts_per_sec": 2446, "page_splits_per_sec": 15, "recompilations_per_sec": 0, "transactions": 0, "user_connections": 2 } }, "service": { "address": "172.23.0.2:1433", "type": "mssql" } }