Descrição
Contém métricas calculadas periodicamente em segundo plano. Por exemplo, a quantidade de RAM em uso.
Uma métrica é escalar (um único número na coluna value) ou de chave-valor: discriminada por entidade, como por núcleo de CPU, dispositivo de bloco, interface de rede ou disco. As métricas de chave-valor são representadas por uma única linha com um Map na coluna key_values (por exemplo, CPUFrequencyMHz associa a frequência a cada número de núcleo de CPU), e a coluna value é NaN.
Colunas
metric(String) — Nome da métrica.value(Float64) — Valor da métrica. Para métricas de chave-valor (discriminadas por núcleo da CPU, dispositivo de bloco, disco, …), é NaN, e os valores estão na colunakey_values.key_values(Map(LowCardinality(String), Float64)) — Valores de uma métrica de chave-valor, por exemplo, indexados pelo número do núcleo da CPU ou pelo nome do dispositivo de bloco. Vazio para métricas escalares.description(String - Descrição da métrica)
Exemplo
SELECT metric, value, key_values
FROM system.asynchronous_metrics
WHERE metric IN ('MemoryResident', 'OSUserTime', 'DiskTotal', 'BlockReadBytes', 'NetworkReceiveBytes')
ORDER BY metric┌─metric──────────────┬─────────────value─┬─key_values──────────────────────────────────────┐
│ BlockReadBytes │ nan │ {'nvme0n1':67420160} │
│ DiskTotal │ nan │ {'backups':34359738368,'default':5199475388416} │
│ MemoryResident │ 970743808 │ {} │
│ NetworkReceiveBytes │ nan │ {'docker0':0,'ens66':334554363} │
│ OSUserTime │ 32.11807291562506 │ {} │
└─────────────────────┴───────────────────┴─────────────────────────────────────────────────┘É possível extrair uma única entidade de uma métrica de chave-valor usando o subscrito de map:
SELECT key_values['default'] AS default_disk_total
FROM system.asynchronous_metrics
WHERE metric = 'DiskTotal'Descrições das métricas
As descrições abaixo são geradas a partir do código-fonte em C++ por utils/generate-async-metrics-docs. A fonte única de verdade é o literal de string ao lado de cada registro de métrica em src/Common/AsynchronousMetrics.cpp, src/Interpreters/ServerAsynchronousMetrics.cpp e src/Coordination/KeeperAsynchronousMetrics.cpp. Os nomes de métricas que incluem uma parte variável (atualmente, apenas o grupo de pool de conexões HTTP) são exibidos com um placeholder *name*; o servidor em execução os informa com o nome concreto substituído.
TempoGastoNoCálculoDeMétricasAssíncronasPesadas
Tempo, em segundos, gasto no cálculo de métricas assíncronas pesadas (relacionadas a tabelas) — esta é a sobrecarga das métricas assíncronas.
AsynchronousHeavyMetricsUpdateInterval
Intervalo de atualização de métricas pesadas relacionadas a tabelas
AsynchronousMetricsCalculationTimeSpent
Tempo em segundos gasto no cálculo das métricas assíncronas (essa é a sobrecarga das métricas assíncronas).
AsynchronousMetricsUpdateInterval
Intervalo de atualização das métricas
AsyncLoggingQueueSize
Número de mensagens assíncronas na fila, aguardando serem registradas em log, indexadas pelo nome do canal de logging.
BlockActiveTime
Tempo, em segundos, durante o qual cada dispositivo de bloco teve solicitações de E/S enfileiradas. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockActiveTimePerOp
Semelhante à métrica BlockActiveTime, mas o valor é dividido pelo número de operações de E/S para calcular o tempo por operação. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardBytes
Número de bytes descartados em cada dispositivo de bloco. Essas operações são relevantes para SSDs. As operações de descarte não são usadas pelo ClickHouse, mas podem ser usadas por outros processos no sistema. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardMerges
Número de operações de descarte solicitadas de cada dispositivo de bloco e agrupadas pelo scheduler de E/S do SO. Essas operações são relevantes em SSDs. As operações de descarte não são usadas pelo ClickHouse, mas podem ser usadas por outros processos no sistema. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Origem: /sys/block. Veja https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardOps
Número de operações de descarte solicitadas a cada dispositivo de bloco. Essas operações são relevantes para SSDs. As operações de descarte não são usadas pelo ClickHouse, mas podem ser usadas por outros processos no sistema. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockDiscardTime
Tempo, em segundos, gasto em operações de descarte solicitadas a cada dispositivo de bloco, somado em todas as operações. Essas operações são relevantes para SSDs. As operações de descarte não são usadas pelo ClickHouse, mas podem ser usadas por outros processos no sistema. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockInFlightOps
Este valor conta o número de solicitações de E/S enviadas ao driver do dispositivo, mas ainda não concluídas, para cada dispositivo de bloco. Ele não inclui solicitações de E/S que estão na fila, mas ainda não foram enviadas ao driver do dispositivo. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockQueueTime
Este valor contabiliza o número de milissegundos que as solicitações de E/S aguardaram em cada dispositivo de bloco. Se houver várias solicitações de E/S aguardando, este valor aumentará pelo produto do número de milissegundos pelo número de solicitações aguardando. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockQueueTimePerOp
Semelhante à métrica BlockQueueTime, mas o valor é dividido pelo número de operações de E/S para calcular o tempo por operação. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadBytes
Número de bytes lidos de cada dispositivo de bloco. Pode ser menor que o número de bytes lidos do sistema de arquivos devido ao uso do cache de páginas do SO, que economiza E/S. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadMerges
Número de operações de leitura solicitadas de cada dispositivo de bloco e mescladas pelo scheduler de E/S do SO. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadOps
Número de operações de leitura solicitadas de cada dispositivo de bloco. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockReadTime
Tempo, em segundos, gasto em operações de leitura solicitadas aos dispositivos de bloco, somado em todas as operações. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Consulte https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteBytes
Número de bytes gravados em cada dispositivo de bloco. Esse valor pode ser menor que o número de bytes gravados no sistema de arquivos devido ao uso do cache de páginas do SO, que economiza E/S. Uma gravação no dispositivo de bloco pode ocorrer depois da gravação correspondente no sistema de arquivos devido ao cache write-through. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema: inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Veja https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteMerges
Número de operações de gravação solicitadas a cada dispositivo de bloco e agrupadas pelo scheduler de E/S do SO. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Veja https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteOps
Número de operações de gravação solicitadas de cada dispositivo de bloco. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Veja https://www.kernel.org/doc/Documentation/block/stat.txt
BlockWriteTime
Tempo em segundos gasto em operações de gravação solicitadas de todos os dispositivos de bloco, somado em todas as operações. As chaves são os nomes dos dispositivos de bloco. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server. Fonte: /sys/block. Veja https://www.kernel.org/doc/Documentation/block/stat.txt
CGroupMaxCPU
O número máximo de núcleos de CPU segundo os CGroups.
CGroupMemoryTotal
A quantidade total de memória no cgroup, em bytes. Se esse valor for zero, o limite será o mesmo que OSMemoryTotal.
CGroupMemoryUsed
A quantidade de memória usada no cgroup, em bytes. No cgroup v2, isso corresponde a anon + sock + memória de kernel não recuperável; no cgroup v1, corresponde a RSS. Em ambos os casos, o cache de páginas do SO do kernel (cache baseado em arquivo) é excluído.
CGroupMemoryUsedWithoutPageCache
A quantidade de memória usada no cgroup, em bytes, excluindo o cache de páginas em espaço do usuário do ClickHouse. Isso corresponde a CGroupMemoryUsed menos o tamanho do cache de páginas em espaço do usuário. Quando o cache de páginas em espaço do usuário está desabilitado, esse valor é igual a CGroupMemoryUsed.
CGroupSystemTime
A proporção do tempo em que o núcleo da CPU estava executando código do kernel do sistema operacional (system).
CGroupSystemTimeNormalized
O valor é semelhante a CGroupSystemTime, mas é dividido pelo número de núcleos de CPU disponíveis para ser medido no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a cota de CPU do cgroup dividida pelo seu período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em alguns momentos.
CGroupUserTime
A proporção de tempo em que o núcleo da CPU estava executando código em espaço de usuário. Isso também inclui o tempo em que a CPU ficou subutilizada por motivos internos à própria CPU (carregamentos de memória, stalls de pipeline, previsões incorretas de desvio, execução de outro núcleo SMT).
CGroupUserTimeNormalized
O valor é semelhante a CGroupUserTime, mas é dividido pelo número de núcleos de CPU disponíveis, para ser medido no intervalo [0..1] independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a CPU quota do cgroup dividida pelo respectivo período pode ser usada no lugar do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em determinados momentos.
CompiledExpressionCacheBytesMax
Máximo configurado de bytes do cache de expressões compiladas. Capacidade disponível = este valor menos CompiledExpressionCacheBytes (CurrentMetric).
CompiledExpressionCacheCountMax
Número máximo configurado de entradas no cache de expressões compiladas. Capacidade disponível = este valor menos CompiledExpressionCacheCount (CurrentMetric).
CPUFrequencyMHz
A frequência atual de cada núcleo da CPU, em MHz, indexada pelo número do núcleo da CPU. A maioria das CPUs modernas ajusta essa frequência dinamicamente para economizar energia e usar o Turbo Boost.
DeadBlobsQueueEstimate
Número estimado de blobs na fila para remoção do armazenamento de objetos do disco (a fila de blobs inativos do gerenciador de blobs), identificados pelo nome do disco. Discos sem replicação de blobs reportam 0.
DictionaryMaxUpdateDelay
O atraso máximo, em segundos, na atualização do dicionário
DictionaryTotalFailedUpdates
Número de erros desde o último carregamento bem-sucedido de todos os dicionários.
DiskAvailable
Bytes disponíveis em todos os discos (sistema de arquivos virtual), indexados pelo nome do disco. Sistemas de arquivos remotos podem não fornecer essas informações e podem exibir um valor alto, como 16 EiB.
DiskGetObjectThrottlerAvailable
Número de requisições GetObject que podem ser feitas no momento sem atingir o limite de throttling em cada disco (sistema de arquivos virtual), indexadas pelo nome do disco. Sistemas de arquivos locais podem não fornecer essa informação.
DiskGetObjectThrottlerRPS
Limite de throttling de requisições GetObject em cada disco, em requisições por segundo (sistema de arquivos virtual), indexado pelo nome do disco. Sistemas de arquivos locais podem não fornecer essas informações.
DiskPutObjectThrottlerAvailable
Número de solicitações PutObject que podem ser feitas atualmente sem atingir o limite de throttling em cada disco (sistema de arquivos virtual), indexadas pelo nome do disco. Sistemas de arquivos locais podem não disponibilizar essa informação.
DiskPutObjectThrottlerRPS
Limite de throttling de requisições PutObject em cada disco, em requisições por segundo (sistema de arquivos virtual), indexado pelo nome do disco. Sistemas de arquivos locais podem não fornecer essas informações.
DiskTotal
O tamanho total, em bytes, de cada disco (sistema de arquivos virtual), indexado pelo nome do disco. Sistemas de arquivos remotos podem não fornecer essa informação e podem mostrar um valor alto, como 16 EiB.
DiskUnreserved
Bytes disponíveis em todos os discos (sistema de arquivos virtual), sem as reservas para merges, fetches e moves, indexados pelo nome do disco. Sistemas de arquivos remotos podem não fornecer essas informações e podem mostrar um valor alto, como 16 EiB.
DiskUsed
Bytes usados em cada disco (sistema de arquivos virtual), indexados pelo nome do disco. Sistemas de arquivos remotos nem sempre fornecem essa informação.
EDACCorrectable
O número de erros corrigíveis de memória ECC, identificados pelo número do controlador de memória. Um valor alto indica RAM defeituosa, que deve ser substituída imediatamente, pois, quando há muitos erros corrigidos, também podem ocorrer erros silenciosos, levando à corrupção de dados. Fonte: /sys/devices/system/edac/mc/
EDACUncorrectable
O número de erros de memória ECC incorrigíveis, indexado pelo número do controlador de memória. Um valor diferente de zero indica RAM com defeito e deve ser substituída imediatamente, pois há risco de corrupção de dados. Fonte: /sys/devices/system/edac/mc/
ExecutableUserDefinedFunctionMemoryResidentBytes
Soma do tamanho do conjunto residente (VmRSS) de todos os processos em execução de funções definidas pelo usuário executable e executable_pool, bem como de seus processos descendentes, em bytes. Workers inativos do executable_pool estão incluídos. As páginas compartilhadas são contabilizadas uma vez por processo, portanto essa soma é um limite superior e pode exceder o consumo físico exclusivo de memória dos processos de UDF.
ExecutableUserDefinedFunctionProcesses
Número de processos ativos iniciados para funções definidas pelo usuário executable e executable_pool, incluindo seus processos descendentes.
FilesystemCacheBytes
Total de bytes no sistema de arquivos virtual cache. Esse cache é mantido em disco.
Capacidade do cache do sistema de arquivos virtual
Capacidade total no sistema de arquivos virtual cache. Esse cache é mantido em disco.
FilesystemCacheFiles
Número total de segmentos de arquivo em cache no sistema de arquivos virtual cache. Esse cache é armazenado em disco.
FilesystemLogsPathAvailableBytes
Bytes disponíveis no volume em que o diretório de logs do ClickHouse está montado. Se esse valor se aproximar de zero, ajuste a rotação de logs no arquivo de configuração.
FilesystemLogsPathAvailableINodes
O número de inodes disponíveis no volume em que o caminho dos logs do ClickHouse está montado.
FilesystemLogsPathTotalBytes
O tamanho do volume em que o diretório de logs do ClickHouse está montado, em bytes. Recomenda-se ter pelo menos 10 GB para os logs.
FilesystemLogsPathTotalINodes
O número total de inodes no volume em que o caminho dos logs do ClickHouse está montado.
FilesystemLogsPathUsedBytes
Bytes em uso no volume em que o caminho dos logs do ClickHouse está montado.
FilesystemLogsPathUsedINodes
O número de inodes em uso no volume em que o caminho dos logs do ClickHouse está montado.
FilesystemMainPathAvailableBytes
Número de bytes disponíveis no volume em que o caminho principal do ClickHouse está montado.
INodesDisponíveisNoCaminhoPrincipalDoFilesystem
O número de inodes disponíveis no volume em que o caminho principal do ClickHouse está montado. Se esse número estiver próximo de zero, isso indica uma configuração incorreta, e você receberá 'no space left on device' mesmo que o disco não esteja cheio.
FilesystemMainPathTotalBytes
O tamanho, em bytes, do volume em que o caminho principal do ClickHouse está montado.
Total de inodes no caminho principal do sistema de arquivos
O número total de inodes no volume em que o caminho principal do ClickHouse está montado. Se for menor que 25 milhões, isso indica uma configuração incorreta.
FilesystemMainPathUsedBytes
Bytes em uso no volume em que o caminho principal do ClickHouse está montado.
FilesystemMainPathUsedINodes
O número de inodes em uso no volume em que o caminho principal do ClickHouse está montado. Esse valor, em geral, corresponde ao número de arquivos.
GRPCRejectedConnections
Número de conexões rejeitadas no protocolo gRPC.
GRPCThreads
Número de threads do servidor do protocolo GRPC.
HashTableStatsCacheEntries
O número de entradas no cache de tamanhos da tabela hash. O cache de tamanhos da tabela hash é usado para otimização preditiva de GROUP BY.
HashTableStatsCacheHits
O número de vezes em que a previsão do tamanho de uma tabela hash foi correta.
HashTableStatsCacheMisses
O número de vezes em que a previsão do tamanho de uma tabela hash foi incorreta.
HTTPConnectionPoolgroup_nameTCPRcvBufTotalBytes
Memória total do buffer TCP de recebimento do kernel (sk_rmem_alloc) em todos os sockets do pool de conexões HTTP.
HTTPConnectionPoolgroup_nameTCPSndBufTotalBytes
Memória total do buffer de transmissão TCP do kernel (sk_wmem_alloc) em todos os sockets do pool de conexões HTTP.
HTTPRejectedConnections
Número de conexões rejeitadas na interface HTTP (sem TLS).
HTTPSecureRejectedConnections
Número de conexões rejeitadas pela interface HTTPS.
HTTPSecureThreads
Número de threads no servidor da interface HTTPS.
HTTPThreads
Número de threads no servidor da interface HTTP (sem TLS).
InterserverRejectedConnections
Número de conexões rejeitadas no protocolo de comunicação entre réplicas (sem TLS).
InterserverSecureRejectedConnections
Número de conexões rejeitadas no protocolo de comunicação entre réplicas (com TLS).
InterserverSecureThreads
Número de threads no servidor do protocolo de comunicação das réplicas (com TLS).
InterserverThreads
Número de threads no servidor do protocolo de comunicação entre as réplicas (sem TLS).
jemalloc.active
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.allocated
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.arenas.all.dirty_purged
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.arenas.all.muzzy_purged
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.arenas.all.pactive
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.arenas.all.pdirty
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.arenas.all.pmuzzy
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.arenas.dirty_decay_ms
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.background_thread.num_runs
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.background_thread.num_threads
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.background_thread.run_intervals
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.cache_arena.pactive
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.cache_arena.pdirty
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.epoch
Um número interno de atualização incremental das estatísticas do jemalloc (o alocador de memória de Jason Evans), usado em todas as outras métricas de jemalloc.
jemalloc.fragmentation
A diferença entre jemalloc.active e jemalloc.allocated — representa a fragmentação interna do alocador de memória (páginas ativas que não são totalmente utilizadas pelas alocações).
jemalloc.jit_arena.active_bytes
Bytes ativos na arena JIT dedicada do jemalloc. Inclui tanto (a) o estado do heap do LLVM (TargetMachine e seu Subtarget específico do destino, módulos IR, análises de passes de otimização, tabelas de realocação do RuntimeDyld) quanto (b) os blocos reservados alinhados a páginas que o JITModuleMemoryManager aloca via posix_memalign para seções executáveis/de dados (interceptadas por je_posix_memalign, portanto passando pelo jemalloc). CompiledExpressionCacheBytes (CurrentMetric) é um subconjunto disso — rastreia apenas a capacidade dos blocos de páginas reservados para seções executáveis/de dados, não os bytes efetivamente usados por código/dados nesses blocos.
jemalloc.jit_arena.dirty_bytes
Bytes sujos na arena JIT elegíveis para serem liberados de volta para o sistema operacional.
jemalloc.jit_arena.pactive
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.jit_arena.pdirty
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.mapped
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.mergetree_arena.active_bytes
Total de bytes ativos no pool de arenas dedicadas do jemalloc para o MergeTree (arenas jemalloc.mergetree_arena.count). Ela mantém o estado de heap de longa duração do MergeTree: metadados por parte (SerializationInfoByName, a árvore MergeTreeDataPartChecksums, os delegates Poco::LRUCache<String, ColumnSize> dentro de cada IMergeTreeDataPart, os maps ColumnSize/IndexSize por parte, MinMaxIndex, VersionMetadataOnDisk e o próprio objeto MergeTreeDataPart{Compact,Wide}), metadados compartilhados entre as partes de uma tabela (NamesAndTypesList, column_name_to_position, o map serializations e ColumnsSubstreams, consulte SharedPartColumns.h), além de metadados por tabela (clones de StorageInMemoryMetadata / ColumnsDescription / VirtualColumnsDescription configurados por setProperties, a agregação serialization_hints e o shared_part_columns_cache). Tanto as partes ativas quanto as partes desatualizadas pendentes de limpeza contribuem para esse total. Ela é distinta da arena de cache e da arena de JIT. As colunas por parte system.parts.primary_key_bytes_in_memory[_allocated] e system.parts.index_granularity_bytes_in_memory[_allocated] são subconjuntos dessa métrica (quando seus valores são diferentes de zero). O índice primário é alocado aqui mesmo quando pertence a PrimaryIndexCache (intencionalmente: realocá-lo no limite do cache poderia falhar depois que uma parte já estivesse confirmada), portanto PrimaryIndexCacheBytes se sobrepõe a essa métrica.
jemalloc.mergetree_arena.count
Número de arenas jemalloc dedicadas aos metadados de longa duração do MergeTree, controlado pela configuração de servidor jemalloc_merge_tree_arenas. 0 significa que o pool de arenas dedicadas está desativado e os metadados são alocados nas arenas padrão por CPU; 1 corresponde a uma única arena compartilhada; N > 1 corresponde a um pool particionado por CPU. Consulte jemalloc.mergetree_arena.active_bytes.
jemalloc.mergetree_arena.dirty_bytes
Total de bytes sujos no pool de arenas dedicadas do MergeTree no jemalloc elegíveis para serem liberados de volta para o sistema operacional.
jemalloc.mergetree_arena.pactive
Total de páginas ativas no pool de arenas dedicado do jemalloc para MergeTree.
jemalloc.mergetree_arena.pdirty
Total de páginas sujas no pool de arena MergeTree dedicado do jemalloc.
jemalloc.metadata
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.metadata_thp
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.prof.active
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.prof.lg_sample
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.prof.thread_active_init
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.resident
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
jemalloc.retained
Uma métrica interna do alocador de memória de baixo nível (jemalloc). Consulte https://jemalloc.net/jemalloc.3.html
Jitter
A diferença entre o momento em que a thread responsável pelo cálculo das métricas assíncronas estava programada para ser ativada e o momento em que ela foi efetivamente ativada. Um indicador indireto da latência geral e da capacidade de resposta do sistema.
KeeperApproximateDataSize
O tamanho aproximado dos dados do ClickHouse Keeper, em bytes.
KeeperAvgLatency
Latência média das solicitações do ClickHouse Keeper.
KeeperCommitLogsCacheEntries
Número de entradas de log decodificadas que o leitor de pré-leitura do changelog mantém atualmente no buffer para a thread de commit
KeeperCommitLogsCacheSize
Tamanho total das entradas de log decodificadas atualmente mantidas em buffer antes da thread de commit pelo leitor de pré-leitura do changelog
KeeperEphemeralsCount
A quantidade de nós efêmeros no ClickHouse Keeper.
KeeperFollowers
O número de seguidores do ClickHouse Keeper.
KeeperIsExceedingMemorySoftLimitHit
1 se o ClickHouse Keeper estiver excedendo o limite flexível de memória; caso contrário, 0.
KeeperIsFollower
1 se o ClickHouse Keeper estiver como seguidor, 0 caso contrário.
KeeperIsLeader
1 se o ClickHouse Keeper for o líder, 0 caso contrário.
KeeperIsObserver
1 se o ClickHouse Keeper for um observador; caso contrário, 0.
KeeperIsStandalone
1 se o ClickHouse Keeper estiver em modo standalone, 0 caso contrário.
KeeperLastCommittedLogIdx
Índice do último log confirmado no ClickHouse Keeper.
KeeperLastLeaderElectionTime
Duração, em milissegundos, da janela mais recente sem líder observada localmente, que terminou quando esta instância do ClickHouse Keeper se tornou líder. Transferências de liderança que não expõem um estado sem líder amostrado não são registradas. 0 se esta instância não for o líder ativo ou não tiver nenhuma janela concluída registrada.
Duração, em milissegundos, da janela sem líder mais recente concluída e observada localmente por este líder do ClickHouse Keeper. 0 se esta instância não for o líder ativo ou não houver registro de uma janela sem líder concluída.
KeeperLastLogIdx
Índice do último log armazenado no ClickHouse Keeper.
KeeperLastLogTerm
Termo do Raft do último log armazenado no ClickHouse Keeper.
KeeperLastSnapshotIdx
Índice do último log presente no snapshot criado mais recentemente.
KeeperLatestLogsCacheEntries
Número de entradas armazenadas no cache em memória dos logs mais recentes
KeeperLatestLogsCacheSize
Tamanho total do cache em memória para os logs mais recentes
KeeperLatestSnapshotSize
O tamanho em bytes, sem compressão, do snapshot mais recente criado pelo ClickHouse Keeper.
KeeperMaxFileDescriptorCount
O número máximo de descritores de arquivo abertos no ClickHouse Keeper. -1 se o valor não puder ser determinado.
KeeperMaxLatency
Latência máxima de requisição do ClickHouse Keeper.
KeeperMinLatency
Latência mínima de requisição do ClickHouse Keeper.
KeeperOpenFileDescriptorCount
O número de descritores de arquivo abertos no ClickHouse Keeper. -1 se o valor não puder ser determinado.
KeeperPacketsReceived
Número de pacotes recebidos pelo ClickHouse Keeper.
KeeperPacketsSent
Número de pacotes enviados pelo ClickHouse Keeper.
KeeperPathsWatched
O número de diferentes caminhos monitorados pelos clientes do ClickHouse Keeper.
KeeperSessionWithWatches
O número de sessões de clientes do ClickHouse Keeper com watches.
KeeperSyncedFollowers
O número de seguidores do ClickHouse Keeper que também estão em sincronia.
KeeperTargetCommitLogIdx
Índice até o qual os logs podem sofrer commit no ClickHouse Keeper.
KeeperTCPRejectedConnections
Número de conexões rejeitadas no protocolo TCP do Keeper (sem TLS).
KeeperTCPSecureRejectedConnections
Número de conexões rejeitadas no protocolo TCP do Keeper (com TLS).
KeeperTCPSecureThreads
Número de threads no servidor do protocolo TCP do Keeper (com TLS).
KeeperTCPThreads
Número de threads no servidor do protocolo TCP do Keeper (sem TLS).
KeeperWatchCount
Número de watches no ClickHouse Keeper.
KeeperZnodeCount
O número de nós (entradas de dados) no ClickHouse Keeper.
KeeperZxid
O identificador numérico da transação atual (zxid) no ClickHouse Keeper.
LoadAverage1
A carga do sistema como um todo, calculada como uma média com suavização exponencial ao longo de 1 minuto. A carga representa o número de threads em todos os os processos (as entidades de escalonamento do kernel do sistema operacional) que estão atualmente em execução na CPU ou aguardando E/S, ou prontas para execução, mas que não estão sendo escalonadas neste momento. Esse número inclui todos os processos, não apenas o clickhouse-server. Esse número pode ser maior que o número de núcleos de CPU se o sistema estiver sobrecarregado e muitos processos estiverem prontos para executar, mas aguardando CPU ou E/S.
LoadAverage15
A carga do sistema como um todo, calculada como uma média com suavização exponencial ao longo de 15 minutos. A carga representa o número de threads em todos os processos (as entidades de escalonamento do kernel do sistema operacional) que estão atualmente em execução na CPU ou aguardando E/S, ou prontas para execução, mas que não estão sendo escalonadas neste momento. Esse número inclui todos os processos, não apenas o clickhouse-server. Esse número pode ser maior que o número de núcleos de CPU se o sistema estiver sobrecarregado e muitos processos estiverem prontos para executar, mas aguardando CPU ou E/S.
LoadAverage5
A carga do sistema como um todo, calculada como uma média com suavização exponencial ao longo de 5 minutos. A carga representa o número de threads em todos os processos (as entidades de escalonamento do kernel do sistema operacional) que estão atualmente em execução na CPU ou aguardando E/S, ou prontas para execução, mas que não estão sendo escalonadas neste momento. Esse número inclui todos os processos, não apenas o clickhouse-server. Esse número pode ser maior que o número de núcleos de CPU se o sistema estiver sobrecarregado e muitos processos estiverem prontos para executar, mas aguardando CPU ou E/S.
LongestRunningMerge
Tempo decorrido, em segundos, do merge em segundo plano que está em execução há mais tempo no momento.
MaxPartCountForPartition
Número máximo de partes por partição, considerando todas as partições de todas as tabelas da família MergeTree. Valores acima de 300 indicam configuração incorreta, sobrecarga ou carregamento massivo de dados.
MemoryCode
Quantidade de memória virtual mapeada para as páginas de código de máquina do processo do servidor, em bytes.
MemoryDataAndStack
A quantidade de memória virtual mapeada para uso da pilha e da memória alocada, em bytes. Não está especificado se isso inclui as pilhas por thread e a maior parte da memória alocada com a chamada de sistema 'mmap'. Essa métrica existe apenas por completude. Recomendo usar a métrica MemoryResident para monitoramento.
MemoryResident
Quantidade de memória física usada pelo processo do servidor, em bytes.
MemoryResidentMax
Quantidade máxima de memória física usada pelo processo do servidor, em bytes.
MemoryResidentWithoutPageCache
A quantidade de memória física usada pelo processo do servidor, excluindo o cache de páginas em espaço do usuário, em bytes. Isso fornece uma visão mais precisa do uso real de memória quando o cache de páginas em espaço do usuário é utilizado. Quando o cache de páginas em espaço do usuário está desativado, esse valor é igual a MemoryResident.
A quantidade de memória usada pelo processo do servidor que também é compartilhada com outros processos, em bytes. O ClickHouse não usa memória compartilhada, mas o sistema operacional pode, por seus próprios motivos, classificar parte da memória como compartilhada. Não faz muito sentido acompanhar essa métrica, e ela existe apenas por completude.
MemoryThreadStacksCount
Número de VMAs de pilha de pthread marcadas com [anon:clickhouse_stack] em /proc/self/smaps. Atualizado na frequência das métricas pesadas. Requer Linux 5.17 ou posterior; ausente em kernels mais antigos (consulte a entrada MEMORY_THREAD_STACKS_METRIC_UNAVAILABLE em system.warnings).
Número de regiões de VM da tarefa marcadas com VM_MEMORY_STACK (excluindo as regiões de guarda inacessíveis). Atualizado na frequência das métricas pesadas.
MemoryThreadStacksResident
Tamanho aproximado do conjunto residente das pilhas pthread, calculado pela soma de Rss: das VMAs de /proc/self/smaps marcadas com [anon:clickhouse_stack] por meio de prctl(PR_SET_VMA_ANON_NAME). Atualizado na frequência das métricas pesadas. Requer Linux 5.17 ou mais recente; indisponível em kernels mais antigos (consulte a entrada MEMORY_THREAD_STACKS_METRIC_UNAVAILABLE em system.warnings).
Tamanho aproximado do conjunto residente das pilhas pthread, calculado pela soma das páginas residentes das regiões de VM da tarefa marcadas com VM_MEMORY_STACK (excluindo as regiões de guarda inacessíveis). Atualizado na frequência das métricas pesadas.
MemoryThreadStacksVirtual
Tamanho virtual aproximado das pilhas pthread, calculado a partir da soma de Size: das VMAs de /proc/self/smaps marcadas com [anon:clickhouse_stack]. Atualizado na frequência das métricas pesadas. Requer Linux 5.17 ou mais recente; ausente em kernels mais antigos (consulte a entrada MEMORY_THREAD_STACKS_METRIC_UNAVAILABLE em system.warnings).
Tamanho virtual aproximado das pilhas pthread, calculado a partir da soma dos tamanhos das regiões de VM da tarefa marcadas com VM_MEMORY_STACK (exceto as regiões de guarda inacessíveis). Atualizado na frequência das métricas pesadas.
MemoryVirtual
O tamanho do espaço de endereçamento virtual alocado pelo processo do servidor, em bytes. O tamanho do espaço de endereçamento virtual geralmente é muito maior do que o consumo de memória física e não deve ser usado como estimativa desse consumo. Valores altos dessa métrica são totalmente normais e só fazem sentido do ponto de vista técnico.
MissingBlobsQueueEstimate
Número estimado de blobs aguardando replicação para outros locais no disco (a fila de blobs ausentes do gerenciador de blobs), indexado pelo nome do disco. Discos sem replicação de blobs informam 0.
MySQLRejectedConnections
Número de conexões rejeitadas pelo protocolo de compatibilidade com MySQL.
MySQLThreads
Número de threads no servidor do protocolo de compatibilidade com MySQL.
NetworkReceiveBytes
Número de bytes recebidos por meio de cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkReceiveDrop
Número de bytes de pacotes descartados durante o recebimento por cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkReceiveErrors
Número de vezes que ocorreu um erro ao receber dados em cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkReceivePackets
Número de pacotes de rede recebidos por meio de cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkSendBytes
Número de bytes enviados por cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkSendDrop
Número de vezes que um pacote foi descartado durante o envio por cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkSendErrors
Número de vezes que ocorreu um erro (por exemplo, retransmissão TCP) durante o envio por cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkSendPackets
Número de pacotes de rede enviados por cada interface de rede. As chaves são os nomes das interfaces de rede. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
NetworkTCPReceiveQueue
Tamanho total das filas de recepção dos sockets de rede usados pelo servidor em TCPv4 e TCPv6.
NetworkTCPSocketRemoteAddresses
Número total de endereços remotos únicos dos sockets de rede usados pelo servidor em TCPv4 e TCPv6.
NetworkTCPSockets
Número total de sockets de rede usados no servidor, em TCPv4 e TCPv6, em todos os estados.
NetworkTCPSockets_descrição
Número total de sockets de rede em um estado específico no servidor, considerando TCPv4 e TCPv6.
NetworkTCPTransmitQueue
Tamanho total das filas de transmissão dos sockets de rede usados pelo servidor em TCPv4 e TCPv6.
NetworkTCPUnrecoveredRetransmits
Tamanho total das retransmissões atuais (ainda não recuperadas neste momento) de sockets de rede usados no servidor via TCPv4 e TCPv6.
NumberOfDatabases
Número total de bancos de dados no servidor.
NumberOfDetachedByUserParts
O número total de partes desanexadas de tabelas MergeTree por usuários por meio da consulta ALTER TABLE DETACH (em oposição a partes inesperadas, corrompidas ou ignoradas). O servidor não considera as partes desanexadas e elas podem ser removidas.
NumberOfDetachedParts
O número total de partes desanexadas de tabelas MergeTree. Uma parte pode ser desanexada por um usuário com a consulta ALTER TABLE DETACH ou pelo próprio servidor se a parte estiver corrompida, inesperada ou não for necessária. O servidor ignora as partes desanexadas e elas podem ser removidas.
NumberOfPendingMutations
O número total de mutações que ainda precisam ser aplicadas.
Número de mutações pendentes ao longo do tempo de execução
O número total de mutações que ainda têm partes de dados a serem alteradas acima do valor especificado na configuração max_pending_mutations_execution_time_to_warn.
NumberOfTables
Número total de tabelas somado em todos os bancos de dados do servidor, excluindo os bancos de dados que não podem conter tabelas MergeTree. Os motores de banco de dados excluídos são aqueles que geram o conjunto de tabelas em tempo real, como Lazy, MySQL, PostgreSQL, SQlite.
NumberOfTablesSystem
Número total de tabelas no banco de dados system do servidor, armazenadas em tabelas da família MergeTree.
OSContextSwitches
O número de trocas de contexto pelas quais o sistema passou na máquina host. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSCPUOverload
Déficit relativo de CPU, calculado da seguinte forma: quantas threads estão aguardando CPU em relação ao número de threads que estão usando CPU. Se for maior que zero, o servidor se beneficiaria de mais CPU. Se for significativamente maior que zero, o servidor pode deixar de responder. A métrica é acumulada entre as atualizações de métricas assíncronas.
OSGuestNiceTime
A proporção do tempo gasto executando uma CPU virtual de sistemas operacionais convidados sob o controle do kernel Linux, quando o convidado foi configurado com prioridade mais alta (consulte man procfs). Esta é uma métrica do sistema como um todo; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Essa métrica é irrelevante para o ClickHouse, mas ainda existe por completude. O valor para um único núcleo de CPU estará no intervalo [0..1]. O valor para todos os núcleos de CPU é calculado como a soma entre eles [0..num cores].
OSGuestNiceTimeCPU
A razão entre o tempo que cada núcleo de CPU passou executando uma CPU virtual para sistemas operacionais convidados com prioridade mais alta e o tempo total, igual a OSGuestNiceTime, mas sem somar os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSGuestNiceTimeNormalized
O valor é semelhante a OSGuestNiceTime, mas é dividido pelo número de núcleos de CPU para ser expresso no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a cota de CPU do Cgroup dividida pelo respectivo período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em determinados momentos.
OSGuestTime
A proporção do tempo gasto executando uma CPU virtual para sistemas operacionais convidados sob o controle do kernel Linux (consulte man procfs). Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server. Essa métrica é irrelevante para o ClickHouse, mas ainda existe por completude. O valor para um único núcleo de CPU estará no intervalo [0..1]. O valor para todos os núcleos de CPU é calculado como a soma entre eles [0..num cores].
OSGuestTimeCPU
A razão do tempo que cada núcleo de CPU passou executando uma CPU virtual para sistemas operacionais convidados, igual a OSGuestTime, mas sem ser somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSGuestTimeNormalized
O valor é semelhante a OSGuestTime, mas é dividido pelo número de núcleos de CPU para ser medido no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificado, a Cgroup CPU quota dividida pelo respectivo período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode ultrapassar 1 em determinados momentos.
OSIdleTime
A proporção do tempo em que o núcleo da CPU ficou ocioso (nem sequer pronto para executar um processo aguardando E/S), do ponto de vista do kernel do sistema operacional. Esta é uma métrica do sistema como um todo; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Isso não inclui o tempo em que a CPU foi subutilizada por motivos internos à própria CPU (carregamentos de memória, paradas no pipeline, previsões incorretas de desvios, execução de outro núcleo SMT). O valor para um único núcleo da CPU estará no intervalo [0..1]. O valor para todos os núcleos da CPU é calculado como a soma de todos eles [0..num cores].
OSIdleTimeCPU
A razão do tempo em que cada núcleo de CPU ficou ocioso, igual a OSIdleTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor para cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSIdleTimeNormalized
O valor é semelhante a OSIdleTime, mas é dividido pelo número de núcleos de CPU para ser expresso no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificado, a quota de CPU do Cgroup dividida por seu período pode ser usada no lugar do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode ultrapassar 1 em alguns momentos.
Interrupções do SO
O número de interrupções na máquina host. Esta é uma métrica de todo o sistema; inclui todos os processos da máquina host, não apenas o clickhouse-server.
OSIOWaitTime
A proporção de tempo em que o núcleo da CPU não estava executando código, mas em que o kernel do SO também não executava nenhum outro processo nessa CPU, porque os processos estavam aguardando por E/S. Esta é uma métrica de todo o sistema; ela inclui todos os processos da máquina host, não apenas o clickhouse-server. O valor de um único núcleo da CPU ficará no intervalo [0..1]. O valor de todos os núcleos da CPU é calculado como a soma entre eles [0..num cores].
OSIOWaitTimeCPU
A razão do tempo que cada núcleo de CPU ficou aguardando E/S, igual a OSIOWaitTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSIOWaitTimeNormalized
O valor é semelhante a OSIOWaitTime, mas é dividido pelo número de núcleos de CPU para ficar no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificado, a quota de CPU do Cgroup dividida pelo respectivo período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode ultrapassar 1 em determinados momentos.
OSIrqTime
A proporção do tempo gasto na execução de requisições de interrupção de hardware na CPU. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Um valor alto dessa métrica pode indicar uma configuração incorreta de hardware ou uma carga de rede muito alta. O valor para um único núcleo de CPU estará no intervalo [0..1]. O valor para todos os núcleos de CPU é calculado como a soma de todos eles [0..num cores].
OSIrqTimeCPU
A razão entre o tempo gasto no processamento de solicitações de interrupção de hardware em cada núcleo de CPU, igual a OSIrqTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSIrqTimeNormalized
O valor é semelhante a OSIrqTime, mas é dividido pelo número de núcleos de CPU para que fique no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter o valor médio da métrica de utilização de recursos. Se especificado, a quota de CPU do Cgroup dividida pelo seu período pode ser usada no lugar do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em alguns momentos.
Memória disponível do SO
A quantidade de memória disponível para uso por programas, em bytes. É muito semelhante à métrica OSMemoryFreePlusCached. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSMemoryBuffers
A quantidade de memória usada pelos buffers do kernel do SO, em bytes. Esse valor normalmente deve ser baixo, e valores altos podem indicar uma configuração incorreta do SO. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSMemoryCached
A quantidade de memória usada pelo cache de páginas do sistema operacional, em bytes. Normalmente, quase toda a memória disponível é usada pelo cache de páginas do sistema operacional — valores altos dessa métrica são normais e esperados. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSMemoryFreePlusCached
A quantidade de memória livre somada à memória do cache de páginas do SO no sistema host, em bytes. Essa memória está disponível para uso pelos programas. O valor deve ser muito semelhante a OSMemoryAvailable. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSMemoryFreeWithoutCached
A quantidade de memória livre no sistema do host, em bytes. Isso não inclui a memória usada pelo cache de páginas do SO, em bytes. A memória do cache de páginas também está disponível para uso pelos programas, portanto o valor dessa métrica pode ser confuso. Em vez disso, consulte a métrica OSMemoryAvailable. Por conveniência, também fornecemos a métrica OSMemoryFreePlusCached, que deve ser relativamente semelhante a OSMemoryAvailable. Veja também https://www.linuxatemyram.com/. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSMemorySwapCached
A quantidade de memória na swap que também foi carregada na RAM. A swap deve ser desativada em sistemas de produção. Se o valor desta métrica for alto, isso indica uma configuração incorreta. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina hospedeira, não apenas o clickhouse-server.
OSMemoryTotal
A quantidade total de memória no sistema hospedeiro, em bytes.
OSNiceTime
A proporção de tempo em que o núcleo da CPU estava executando código em espaço de usuário com prioridade mais alta. Esta é uma métrica de todo o sistema e inclui todos os processos na máquina host, não apenas o clickhouse-server. O valor de um único núcleo da CPU estará no intervalo [0..1]. O valor de todos os núcleos da CPU é calculado como a soma entre eles [0..num cores].
OSNiceTimeCPU
A razão do tempo em que cada núcleo de CPU executou código no espaço do usuário com prioridade mais alta, igual a OSNiceTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSTempoNiceNormalizado
O valor é semelhante a OSNiceTime, mas é dividido pelo número de núcleos de CPU para ser medido no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a quota de CPU do Cgroup dividida pelo seu período pode ser usada no lugar do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em determinados momentos.
OSOpenFiles
O número total de arquivos abertos na máquina host. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSProcessesBlocked
Número de threads bloqueadas, aguardando a conclusão de operações de E/S (man procfs). Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSProcessesCreated
O número de processos criados. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSProcessesRunning
O número de threads aptas a executar (em execução ou prontas para executar) no sistema operacional. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSSoftIrqTime
A proporção do tempo gasto na execução de solicitações de interrupção de software na CPU. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server. Um valor alto dessa métrica pode indicar a execução de software ineficiente no sistema. O valor de um único núcleo de CPU estará no intervalo [0..1]. O valor de todos os núcleos de CPU é calculado como a soma entre eles [0..num cores].
OSSoftIrqTimeCPU
A razão do tempo gasto na execução de solicitações de interrupção de software em cada núcleo de CPU, igual a OSSoftIrqTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSSoftIrqTimeNormalized
O valor é semelhante a OSSoftIrqTime, mas é dividido pelo número de núcleos de CPU, para que seja medido no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos varie, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a quota de CPU do Cgroup dividida por seu período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em determinados momentos.
OSStealTime
A proporção do tempo que a CPU passa executando outros sistemas operacionais em um ambiente virtualizado. Esta é uma métrica de todo o sistema e inclui todos os processos da máquina host, não apenas o clickhouse-server. Nem todos os ambientes virtualizados apresentam essa métrica, e a maioria não apresenta. O valor de um único núcleo de CPU estará no intervalo [0..1]. O valor de todos os núcleos de CPU é calculado como a soma entre eles [0..num cores].
OSStealTimeCPU
A razão entre o tempo que cada núcleo de CPU passou em outros sistemas operacionais durante a execução em um ambiente virtualizado, igual a OSStealTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSStealTimeNormalized
O valor é semelhante a OSStealTime, mas é dividido pelo número de núcleos de CPU para ser expresso no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica entre vários servidores em um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificado, a quota de CPU do Cgroup dividida pelo respectivo período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode exceder 1 em determinados momentos.
OSSystemTime
A proporção do tempo em que o núcleo da CPU estava executando código do kernel do sistema operacional (system). Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server. O valor de um único núcleo da CPU estará no intervalo [0..1]. O valor de todos os núcleos da CPU é calculado como a soma entre eles [0..num cores].
OSSystemTimeCPU
A razão do tempo durante o qual cada núcleo de CPU executou código do kernel do SO (sistema), igual a OSSystemTime, mas sem somar os valores de todos os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSSystemTimeNormalized
O valor é semelhante a OSSystemTime, mas é dividido pelo número de núcleos de CPU para ser medido no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a quota de CPU do Cgroup dividida pelo respectivo período pode ser usada em vez do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode ultrapassar 1 em determinados momentos.
OSThreadsRunnable
O número total de threads "prontas para execução", conforme visto pelo scheduler do kernel do sistema operacional.
OSThreadsTotal
O número total de threads, segundo o scheduler do kernel do SO.
OSUptime
O tempo de atividade do servidor host (a máquina em que o ClickHouse está sendo executado), em segundos.
OSUserTime
A proporção de tempo em que o núcleo da CPU estava executando código em espaço de usuário. Esta é uma métrica de todo o sistema; ela inclui todos os processos na máquina host, não apenas o clickhouse-server. Isso também inclui o tempo em que a CPU ficou subutilizada por motivos internos à própria CPU (carregamentos de memória, stalls de pipeline, previsões incorretas de desvio, execução de outro núcleo SMT). O valor de um único núcleo de CPU estará no intervalo [0..1]. O valor de todos os núcleos de CPU é calculado como a soma entre eles [0..num cores].
OSUserTimeCPU
A razão do tempo em que cada núcleo de CPU executou código no espaço do usuário, igual a OSUserTime, mas não somada entre os núcleos. As chaves são os números dos núcleos de CPU, e o valor de cada núcleo está no intervalo [0..1]. Esta é uma métrica de todo o sistema; inclui todos os processos na máquina host, não apenas o clickhouse-server.
OSUserTimeNormalized
O valor é semelhante a OSUserTime, mas é dividido pelo número de núcleos de CPU para que seja medido no intervalo [0..1], independentemente da quantidade de núcleos. Isso permite calcular a média dos valores dessa métrica em vários servidores de um cluster, mesmo que o número de núcleos não seja uniforme, e ainda assim obter a métrica média de utilização de recursos. Se especificada, a quota de CPU do cgroup dividida pelo respectivo período pode ser usada no lugar do número real de núcleos de CPU e, nesse caso, o valor dessa métrica pode ultrapassar 1 em alguns momentos.
PageCacheMaxBytes
Limite atual do tamanho do cache de páginas em espaço do usuário, em bytes.
PostgreSQLRejectedConnections
Número de conexões rejeitadas pelo protocolo de compatibilidade com PostgreSQL.
PostgreSQLThreads
Número de threads no servidor do protocolo de compatibilidade com PostgreSQL.
ProcessSignalQueueLimit
Limite total da fila de sinais (ao atingir ProcessSignalQueueSize, você pode receber erros CANNOT_CREATE_TIMER)
ProcessSignalQueueSize
Tamanho da fila de sinais (sinais pendentes, temporizadores para profiling da consulta)
PrometheusRejectedConnections
Número de conexões rejeitadas no endpoint do Prometheus. Observação: os endpoints do Prometheus também podem ser usados por meio das portas HTTP/HTTPS usuais.
PrometheusThreads
Número de threads no servidor do endpoint do Prometheus. Observação: endpoints do Prometheus também podem ser usados por meio das portas HTTP/HTTPS usuais.
PSI_type_stall_type
Microssegundos de tempo de stall desde a última medição. A documentação upstream sobre as métricas e como interpretá-las está disponível em https://docs.kernel.org/accounting/psi.html
QueriesMemoryUsage
Memória total usada no momento por todas as consultas em execução no servidor, em bytes. Útil para atribuir a pressão sobre a memória à carga de consultas concorrentes.
QueriesPeakMemoryUsage
Soma dos picos de memória de consulta por usuário de todos os usuários rastreados em ProcessList, em bytes. O pico de cada usuário é a marca d’água máxima do memory tracker desse usuário, que é redefinido quando o usuário não tem consultas em execução. Portanto, este é um agregado dos picos por usuário atualmente rastreados, e não um único pico de todo o servidor para todas as consultas desde a inicialização.
ReaderExecutorModeledCostMsPerRequestedMiB
Eficiência experimental do caminho de leitura do ReaderExecutor: custo modelado (ms) por MiB de bytes solicitados no último intervalo de atualização, para toda a instância – a razão entre os deltas de ProfileEvents ReaderExecutorModeledCostMicroseconds e ReaderExecutorDeliveredBytes. Quanto menor, melhor: o limite inferior da largura de banda é ~20 (uma leitura limpa da fonte), os acertos de cache tendem a 0, e a busca excessiva e as conexões incompletas aumentam esse valor. 0 significa que não houve leituras do executor no intervalo.
ReplicasMaxAbsoluteDelay
Diferença máxima, em segundos, entre a parte replicada mais recente e a parte de dados mais recente que ainda precisa ser replicada, nas tabelas Replicated. Um valor muito alto indica uma réplica sem dados.
ReplicasMaxInsertsInQueue
Número máximo de operações de INSERT na fila (ainda pendentes de replicação) em tabelas Replicated.
ReplicasMaxMergesInQueue
Número máximo de operações de merge na fila (ainda pendentes de aplicação) em tabelas Replicated.
ReplicasMaxQueueSize
Tamanho máximo da fila (em número de operações, como get e merge) nas tabelas Replicated.
ReplicasMaxRelativeDelay
Diferença máxima entre o atraso de uma réplica e o da réplica mais atualizada da mesma tabela, nas tabelas Replicated.
ReplicasSumInsertsInQueue
Soma das operações de INSERT na fila (ainda pendentes de replicação) nas tabelas Replicated.
ReplicasSumMergesInQueue
Soma das operações de merge na fila (ainda pendentes de aplicação) nas tabelas Replicated.
ReplicasSumQueueSize
Soma do tamanho da fila (em número de operações, como get e merge) em tabelas Replicated.
Silkcounter_name
Valor do contador de baixo nível de mesmo nome do runtime de fibras Silk, acumulado desde a inicialização do scheduler de fibras. Os contadores com Time no nome são expressos em nanossegundos.
TCPRejectedConnections
Número de conexões rejeitadas no protocolo TCP (sem TLS).
TCPSecureRejectedConnections
Número de conexões rejeitadas no protocolo TCP (com TLS).
TCPSecureThreads
Número de threads do servidor do protocolo TCP (com TLS).
TCPThreads
Número de threads do servidor do protocolo TCP (sem TLS).
Temperatura
A temperatura informada por cada sensor, em ℃. Um sensor pode retornar um valor pouco realista. As chaves são os números das zonas térmicas (fonte: /sys/class/thermal) ou os nomes dos monitores de hardware e de seus sensores (fonte: /sys/class/hwmon).
TotalBytesOfMergeTreeTables
Quantidade total de bytes (comprimidos, incluindo dados e índices) armazenados em todas as tabelas da família MergeTree.
TotalBytesOfMergeTreeTablesSystem
Quantidade total de bytes (comprimidos, incluindo dados e índices) armazenados em tabelas da família MergeTree no banco de dados system.
TotalIndexGranularityBytesInMemory
A quantidade total de memória (em bytes) usada pelos grânulos de índice (considera apenas as partes ativas).
TotalIndexGranularityBytesInMemoryAllocated
A quantidade total de memória (em bytes) reservada para grânulos de índice (considera apenas as partes ativas).
TotalPartsOfMergeTreeTables
Quantidade total de partes de dados em todas as tabelas da família MergeTree. Valores acima de 10 000 afetarão negativamente o tempo de inicialização do servidor e podem indicar uma escolha inadequada da chave de partição.
TotalPartsOfMergeTreeTablesSystem
Quantidade total de partes de dados nas tabelas da família MergeTree do banco de dados system.
TotalPrimaryKeyBytesInMemory
A quantidade total de memória (em bytes) usada pelos valores da chave primária (considera apenas as partes ativas).
TotalPrimaryKeyBytesInMemoryAllocated
O total de memória (em bytes) reservada para os valores da chave primária (leva em conta apenas as partes ativas).
TotalProjectionIndexGranularityBytesInMemory
A quantidade total de memória (em bytes) utilizada pela granularidade do índice de projeção (leva em conta apenas as partes ativas).
TotalProjectionIndexGranularityBytesInMemoryAllocated
A quantidade total de memória (em bytes) reservada para a granularidade do índice de projeção (considera apenas as partes ativas).
TotalProjectionPrimaryKeyBytesInMemory
A quantidade total de memória (em bytes) utilizada pelos valores da chave primária da projeção (considera apenas as partes ativas).
TotalProjectionPrimaryKeyBytesInMemoryAllocated
A quantidade total de memória (em bytes) reservada para os valores da chave primária da projeção (considera apenas as partes ativas).
TotalRowsOfMergeTreeTables
Quantidade total de linhas (registros) armazenadas em todas as tabelas da família MergeTree.
TotalRowsOfMergeTreeTablesSystem
Quantidade total de linhas (registros) armazenadas nas tabelas da família MergeTree no banco de dados system.
TotalUncompressedBytesOfMergeTreeTables
Quantidade total de bytes não comprimidos, conforme informado pelos checksum das partes, armazenados em todas as tabelas da família MergeTree. É a mesma origem da coluna total_bytes_uncompressed de system.tables e não inclui arquivos armazenados sem compressão, como marcas e índices de chave primária.
TotalUncompressedBytesOfMergeTreeTablesSystem
Quantidade total de bytes não comprimidos, conforme informado pelos checksum das partes, armazenados em tabelas da família MergeTree no banco de dados system. É a mesma fonte da coluna total_bytes_uncompressed de system.tables e não inclui arquivos armazenados sem compressão, como marcas e índices de chave primária.
TrackedMemory
Memória monitorada pelo ClickHouse (deve ser igual à métrica MemoryTracking), em bytes.
UntrackedMemory
Soma dos buffers por thread com alocações e desalocações recentes que ainda não foram propagadas para TrackedMemory.
Tempo de atividade
O tempo de atividade do servidor em segundos. Inclui o tempo gasto na inicialização do servidor antes de aceitar conexões.
VMMaxMapCount
O número máximo de mapeamentos de memória que um processo pode ter (/proc/sys/vm/max_map_count).
VMNumMaps
O número atual de mapeamentos de memória do processo (/proc/self/maps). Se estiver próximo do máximo (VMMaxMapCount), você deve aumentar o limite de vm.max_map_count no /etc/sysctl.conf
ZooKeeperClientLastZXIDSeen
O último ZXID visto pela sessão atual do cliente ZooKeeper. Esse valor aumenta monotonicamente à medida que o cliente observa transações do ZooKeeper.
Veja também
- Monitoramento — Conceitos básicos de monitoramento do ClickHouse.
- system.metrics — Contém métricas calculadas instantaneamente.
- system.events — Contém diversos eventos que ocorreram.
- system.metric_log — Contém um histórico dos valores das métricas das tabelas
system.metricsesystem.events.