【发布时间】:2018-01-15 17:01:33
【问题描述】:
我使用一个公式来计算大约。 MySQL 实例的最大内存消耗(简化并用 PromQL 编写)读取: p>
(
mysql_global_variables_key_buffer_size +
mysql_global_variables_query_cache_size +
mysql_global_variables_tmp_table_size +
mysql_global_variables_innodb_buffer_pool_size +
mysql_global_variables_innodb_additional_mem_pool_size +
mysql_global_variables_innodb_log_buffer_size +
(
mysql_global_variables_max_connections *
(
mysql_global_variables_sort_buffer_size +
mysql_global_variables_read_buffer_size +
mysql_global_variables_read_rnd_buffer_size +
mysql_global_variables_join_buffer_size +
mysql_global_variables_thread_stack +
mysql_global_variables_binlog_cache_size
)
)
)
不幸的是,mysql_global_variables_innodb_additional_mem_pool_size 指标并非总是存在于每个实例中,如果将其包含在计算中,则会导致“无数据”。
absent(v instant-vector) 函数可以用来解决这个问题,但我不知道如何解决。
我希望 不存在 度量被替换为常量(在这种情况下为0)。有可能吗?
您能否提供一些关于如何处理 PromQL 中的计算缺失指标的提示?
【问题讨论】:
标签: prometheus promql