在 ClickHouse Cloud 中查询此系统表中的数据分别保存在 ClickHouse Cloud 各节点的本地。因此,如需查看所有数据的完整情况,需要使用
clusterAllReplicas 函数。更多详情请参见此处。描述
列
示例
指标说明
utils/generate-async-metrics-docs 根据 C++ 源代码生成。唯一的权威来源是 src/Common/AsynchronousMetrics.cpp、src/Interpreters/ServerAsynchronousMetrics.cpp 和 src/Coordination/KeeperAsynchronousMetrics.cpp 中每项指标注册语句旁边的字符串字面量。包含可变后缀 (按磁盘、按 CPU、按接口等) 的指标名称会以 *name* 占位符显示;运行中的服务器在上报时会将其替换为实际的后缀。
AsynchronousHeavyMetricsCalculationTimeSpent
AsynchronousHeavyMetricsUpdateInterval
AsynchronousMetricsCalculationTimeSpent
AsynchronousMetricsUpdateInterval
AsyncLoggingmetric_firstQueueSize
BlockActiveTime_name
/sys/block。另请参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockActiveTimePerOp_name
BlockActiveTime 指标类似,但其值会除以 IO 操作次数,以计算每次操作的耗时。
BlockDiscardBytes_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardMerges_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardOps_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardTime_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockInFlightOps_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockQueueTime_name
/sys/block。另请参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockQueueTimePerOp_name
BlockQueueTime 指标类似,但其值会除以 IO 操作次数,以计算每次操作的耗时。
BlockReadBytes_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadMerges_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadOps_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadTime_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteBytes_name
/sys/block。另请参阅 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteMerges_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteOps_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteTime_name
/sys/block。参见 https://www.kernel.org/doc/Documentation/block/stat.txt
CGroupMaxCPU
CGroupMemoryTotal
CGroupMemoryUsed
CGroupMemoryUsedWithoutPageCache
CGroupSystemTime
CGroupSystemTimeNormalized
CGroupSystemTime 类似,但会除以可用的 CPU 核心数,因此无论核心数量多少,结果都落在 [0..1] 区间内。这样一来,即使 集群 中各 server 的核心数不一致,你也可以对多个 server 上的该指标值求平均,并仍然得到平均资源利用率指标。如果已指定,则可以使用 Cgroup CPU 配额除以其周期的结果来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
CGroupUserTime
CGroupUserTimeNormalized
CGroupUserTime 类似,但会除以可用 CPU 核心数,因此无论核心数多少,结果都会落在 [0..1] 区间内。这样一来,即使集群中各服务器的核心数并不一致,你仍然可以对多台服务器上的这一指标求平均,并得到平均资源利用率指标。如果指定了,也可以用 Cgroup CPU 配额除以其 period 的结果来代替实际 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
CPUFrequencyMHz_core_id
字典最大更新延迟
字典TotalFailedUpdates
DiskAvailable_name
DiskGetObjectThrottlerAvailable_name
DiskGetObjectThrottlerRPS_name
DiskPutObjectThrottlerAvailable_name
DiskPutObjectThrottlerRPS_name
DiskTotal_name
DiskUnreserved_name
DiskUsed_name
EDACi_Correctable
/sys/devices/system/edac/mc/
EDACi_Uncorrectable
/sys/devices/system/edac/mc/
FilesystemCacheBytes
cache 中的总字节数。该缓存存储在磁盘上。
FilesystemCacheCapacity
cache 虚拟文件系统的总容量。该缓存存储在磁盘上。
FilesystemCacheFiles
cache 虚拟文件系统中已缓存的 File 段总数。该缓存存储在磁盘上。
FilesystemLogsPathAvailableBytes
FilesystemLogsPathAvailableINodes
FilesystemLogsPathTotalBytes
FilesystemLogsPathTotalINodes
FilesystemLogsPathUsedBytes
FilesystemLogsPathUsedINodes
FilesystemMainPathAvailableBytes
FilesystemMainPathAvailableINodes
FilesystemMainPathTotalBytes
FilesystemMainPathTotalINodes
FilesystemMainPathUsedBytes
FilesystemMainPathUsedINodes
GRPCRejectedConnections
GRPCThreads
HashTableStatsCacheEntries
HashTableStatsCacheHits
HashTableStatsCacheMisses
HTTPConnectionPoolgroup_nameTCPRcvBufTotalBytes
sk_rmem_alloc) 。
HTTPConnectionPoolgroup_nameTCPSndBufTotalBytes
HTTPRejectedConnections
HTTPSecureRejectedConnections
HTTPSecureThreads
HTTPThreads
InterserverRejectedConnections
InterserverSecureRejectedConnections
InterserverSecureThreads
InterserverThreads
jemalloc.active
jemalloc.allocated
jemalloc.arenas.all.dirty_purged
jemalloc.arenas.all.muzzy_purged
jemalloc.arenas.all.pactive
jemalloc.arenas.all.pdirty
jemalloc.arenas.all.pmuzzy
jemalloc.arenas.dirty_decay_ms
jemalloc.background_thread.num_runs
jemalloc.background_thread.num_threads
jemalloc.background_thread.run_intervals
jemalloc.cache_arena.pactive
jemalloc.cache_arena.pdirty
jemalloc.epoch
jemalloc 指标。
jemalloc.mapped
jemalloc.mergetree_arena.active_bytes
NamesAndTypesList、SerializationInfoByName、serializations map、column_name_to_position、MergeTreeDataPartChecksums tree、每个 IMergeTreeDataPart 内部 Poco::LRUCache<String, ColumnSize> 的委托对象、每个 part 的 ColumnSize/IndexSize map、MinMaxIndex、VersionMetadataOnDisk,以及 MergeTreeDataPart{Compact,Wide} 对象本身) ,以及每个表的元数据 (通过 setProperties 设置的 StorageInMemoryMetadata / ColumnsDescription / VirtualColumnsDescription 克隆、serialization_hints 聚合,以及 columns_descriptions_cache) 。活动 parts 和等待清理的过期分区片段都会计入其中。它与 cache arena 和 JIT arena 相互独立。每个 part 的列 system.parts.primary_key_bytes_in_memory[_allocated] 和 system.parts.index_granularity_bytes_in_memory[_allocated] 是此指标的子集 (当它们的值非零时——它们也可能位于 PrimaryIndexCacheBytes 中,而后者属于 cache arena,因此这里不会计入) 。
jemalloc.mergetree_arena.dirty_bytes
jemalloc.mergetree_arena.pactive
jemalloc.mergetree_arena.pdirty
jemalloc.metadata
jemalloc.metadata_thp
jemalloc.prof.active
jemalloc.prof.lg_sample
jemalloc.prof.thread_active_init
jemalloc.resident
jemalloc.retained
抖动
KeeperApproximateDataSize
KeeperAvgLatency
KeeperCommitLogsCacheEntries
KeeperCommitLogsCacheSize
KeeperEphemeralsCount
KeeperFollowers
KeeperIsExceedingMemorySoftLimitHit
KeeperIsFollower
KeeperIsLeader
KeeperIsObserver
KeeperIsStandalone
KeeperKeyArenaSize
KeeperLastCommittedLogIdx
KeeperLastLogIdx
KeeperLastLogTerm
KeeperLastSnapshotIdx
KeeperLatestLogsCacheEntries
KeeperLatestLogsCacheSize
KeeperLatestSnapshotSize
KeeperMaxFileDescriptorCount
KeeperMaxLatency
KeeperMinLatency
KeeperOpenFileDescriptorCount
KeeperPacketsReceived
KeeperPacketsSent
KeeperPathsWatched
KeeperSessionWithWatches
KeeperSyncedFollowers
KeeperTargetCommitLogIdx
KeeperTCPRejectedConnections
KeeperTCPSecureRejectedConnections
KeeperTCPSecureThreads
KeeperTCPThreads
KeeperWatchCount
KeeperZnodeCount
KeeperZxid
LoadAverage1
LoadAverage15
LoadAverage5
LongestRunningMerge
每个分区的最大 parts 数
MemoryCode
MemoryDataAndStack
mmap 系统调用分配的内存,则未作明确说明。此指标仅为完整性而提供。建议监控时使用 MemoryResident 指标。
MemoryResident
MemoryResidentMax
MemoryResidentWithoutPageCache
MemoryVirtual
MySQLRejectedConnections
MySQLThreads
NetworkReceiveBytes_interface_name
NetworkReceiveDrop_interface_name
NetworkReceiveErrors_interface_name
NetworkReceivePackets_interface_name
NetworkSendBytes_interface_name
NetworkSendDrop_interface_name
NetworkSendErrors_interface_name
NetworkSendPackets_interface_name
NetworkTCPReceiveQueue
NetworkTCPSocketRemoteAddresses
NetworkTCPSockets
NetworkTCPSockets_说明
NetworkTCPTransmitQueue
NetworkTCPUnrecoveredRetransmits
NumberOfDatabases
用户分离的 parts 总数
ALTER TABLE DETACH 查询从 MergeTree 表中分离的 parts 总数 (不包括意外、损坏或被忽略的 parts) 。服务器不会处理分离的 parts,因此可以将其删除。
NumberOfDetachedParts
ALTER TABLE DETACH 查询分离某个 part;如果某个 part 已损坏、异常或不再需要,服务器自身也可能将其分离。服务器不会处理 分离的 parts因此可以将其移除。
待处理变更总数
超过执行时长的待处理变更数量
max_pending_mutations_execution_time_to_warn 设置值的变更总数。
表数量
Lazy、MySQL、PostgreSQL、SQlite。
NumberOfTablesSystem
OSContextSwitches
OSCPUOverload
OSGuestNiceTimecpu_suffix
man procfs) 。这是一个系统级指标,包含主机上的所有进程,而不只是 clickhouse-server。该指标与 ClickHouse 无关,但为了保证完整性仍予以保留。单个 CPU 核心的值位于区间 [0..1] 内。所有 CPU 核心的值则为各核心数值之和,范围是 [0..num cores]。
OSGuestNiceTimeNormalized
OSGuestNiceTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,其值都会落在 [0..1] 区间内。这样一来,即使集群中各服务器的核心数不一致,你也可以对该指标在多台服务器上的值求平均,仍然得到平均资源利用率指标。如果已指定,也可以用 Cgroup CPU 配额除以其周期后的结果来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSGuestTimecpu_suffix
man procfs) 。这是一个系统级指标,包含主机上的所有进程,而不仅仅是 clickhouse-server。该指标与 ClickHouse 无关,但为保证完整性仍予以保留。单个 CPU 核心的值位于区间 [0..1]。所有 CPU 核心的值则是各核心值的总和,范围为 [0..num cores]。
OSGuestTimeNormalized
OSGuestTime 类似,但会除以 CPU 核心数,因此无论核心数多少,结果都会落在 [0..1] 区间内。这样一来,即使集群中各 server 的核心数不一致,你也可以对多个 server 上的这一指标求平均,仍然得到平均资源利用率指标。如果指定了 Cgroup CPU quota,则可使用其配额除以周期后的结果来代替实际 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSIdleTimecpu_suffix
OSIdleTimeNormalized
OSIdleTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,结果都落在 [0..1] 区间内。这样一来,即使集群中多台服务器的核心数分布不均,也可以对该指标值求平均,仍然得到平均资源利用率指标。如果已指定,也可以使用 Cgroup CPU 配额除以其周期所得的值来代替实际 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSInterrupts
OSIOWaitTimecpu_suffix
OSIOWaitTimeNormalized
OSIOWaitTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,结果都会落在 [0..1] 区间内。这样一来,即使集群中各服务器的核心数并不一致,你也可以对多台服务器上的该指标取平均值,同时仍然得到平均资源利用率指标。如果已指定,也可以用 Cgroup 的 CPU 配额 除以其 period 的结果来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSIrqTimecpu_suffix
OSIrqTimeNormalized
OSIrqTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,结果都会落在 [0..1] 区间内。这样一来,即使集群中多台服务器的核心数不一致,你也可以对该指标在这些服务器上的值取平均,仍然得到平均资源利用率指标。如果指定了 Cgroup CPU 配额,则可以用其除以周期后的结果来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
操作系统可用内存
OSMemoryFreePlusCached 指标非常接近。这是一个系统级指标,包含主机上的所有进程,而不仅仅是 clickhouse-server。
OSMemoryBuffers
OSMemoryCached
OSMemoryFreePlusCached
OSMemoryAvailable 非常接近。这是一个系统级指标,包含主机上的所有进程,而不只是 clickhouse-server。
OSMemoryFreeWithoutCached
OSMemoryAvailable 指标。为方便起见,我们还提供了 OSMemoryFreePlusCached 指标,它应与 OSMemoryAvailable 比较接近。另请参见 https://www.linuxatemyram.com/。这是一个系统级指标,包含主机上的所有进程,而不只是 clickhouse-server。
OSMemorySwapCached
OSMemoryTotal
OSNiceTimecpu_suffix
OSNiceTimeNormalized
OSNiceTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,结果都落在 [0..1] 区间内。这样一来,即使集群中各服务器的核心数并不一致,你也可以对多台服务器上的这一指标取平均值,并仍然得到平均资源利用率指标。如果有指定,也可以用 Cgroup CPU 配额 除以其 period 的结果来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSOpenFiles
OSProcessesBlocked
man procfs) 。这是一个系统级指标,涵盖主机上的所有进程,而不只是 clickhouse-server。
OSProcessesCreated
OSProcessesRunning
OSSoftIrqTimecpu_suffix
OSSoftIrqTimeNormalized
OSSoftIrqTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,其度量值都会落在 [0..1] 区间内。这样一来,即使集群中各服务器的核心数并不一致,也可以对多台服务器上的这一指标求平均,同时仍能得到平均资源利用率指标。如果已指定,也可以用 Cgroup CPU 配额除以其周期来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSStealTimecpu_suffix
OSStealTimeNormalized
OSStealTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,结果都会落在 [0..1] 区间内。这样一来,即使一个 集群 中各个 server 的核心数并不一致,你也可以对多台 server 上这一指标的值求平均,仍然得到平均资源利用率指标。如果已指定,则可以用 Cgroup 的 CPU quota 除以其 period 的结果来替代实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSSystemTimecpu_suffix
OSSystemTimeNormalized
OSSystemTime 类似,但会除以 CPU 核心数,因此无论核心数量多少,其度量值都会落在 [0..1] 区间内。这样一来,即使集群中各台服务器的核心数量并不一致,你仍然可以对多台服务器上的这一指标值求平均,并得到平均资源利用率指标。如果有指定,也可以使用 Cgroup CPU 配额除以其周期来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
OSThreadsRunnable
OSThreadsTotal
OSUptime
OSUserTimecpu_suffix
OSUserTimeNormalized
OSUserTime 类似,但会除以 CPU 核心数,因此无论核心数多少,其值都落在 [0..1] 区间内。这样一来,即使集群中多台服务器的核心数不一致,你也可以对该指标的值求平均,仍然得到平均资源利用率指标。如果有指定,也可以用 Cgroup CPU 配额除以其周期的结果来代替实际的 CPU 核心数;在这种情况下,该指标的值在某些时刻可能会超过 1。
PageCacheMaxBytes
PostgreSQLRejectedConnections
PostgreSQLThreads
ProcessSignalQueueLimit
ProcessSignalQueueSize
PrometheusRejectedConnections
PrometheusThreads
PSI_type_stall_type
QueriesMemoryUsage
QueriesPeakMemoryUsage
ProcessList 中跟踪的所有用户的单用户查询内存峰值总和,单位为字节。每个用户的峰值都是该用户 memory tracker 的最高水位;当该用户没有正在运行的查询时,该值会重置。因此,这里表示的是当前正在跟踪的各用户峰值的聚合值,而不是服务器自启动以来所有查询的单一全局峰值。
ReplicasMaxAbsoluteDelay
ReplicasMaxInsertsInQueue
ReplicasMaxMergesInQueue
ReplicasMaxQueueSize
ReplicasMaxRelativeDelay
ReplicasSumInsertsInQueue
ReplicasSumMergesInQueue
ReplicasSumQueueSize
TCPRejectedConnections
TCPSecureRejectedConnections
TCPSecureThreads
TCPThreads
温度i
/sys/class/thermal
Temperature_hwmon_name
/sys/class/hwmon
Temperature_hwmon_name_sensor_name
/sys/class/hwmon
MergeTree 家族中所有表的总字节数
TotalBytesOfMergeTreeTablesSystem
TotalIndexGranularityBytesInMemory
内存中已分配的索引粒度总字节数
MergeTree 家族表的数据分区片段总数
系统数据库中 MergeTree 家族表的数据分区片段总数
TotalPrimaryKeyBytesInMemory
TotalPrimaryKeyBytesInMemoryAllocated
TotalProjectionIndexGranularityBytesInMemory
TotalProjectionIndexGranularityBytesInMemoryAllocated
TotalProjectionPrimaryKeyBytesInMemory
TotalProjectionPrimaryKeyBytesInMemoryAllocated
TotalRowsOfMergeTreeTables
TotalRowsOfMergeTreeTablesSystem
TotalUncompressedBytesOfMergeTreeTables
system.tables 中的 total_bytes_uncompressed 列来源相同,但不包括以未压缩形式存储的文件,例如标记和主键索引。
TotalUncompressedBytesOfMergeTreeTablesSystem
system.tables 中 total_bytes_uncompressed 列的数据来源相同,且不包括以未压缩形式存储的文件,例如标记和主键索引。
TrackedMemory
运行时间
VMMaxMapCount
VMNumMaps
/proc/self/maps) 。如果该值接近最大值 (VMMaxMapCount) ,应提高 /etc/sysctl.conf 中 vm.max_map_count 的上限。
ZooKeeperClientLastZXIDSeen
- 监控 — ClickHouse 监控的基础概念。
- system.metrics — 包含即时计算得到的指标。
- system.events — 包含若干已发生的事件。
- system.metric_log — 包含来自表
system.metrics和system.events的指标值历史记录。