处理计算中缺少的指标

mjf*_*mjf 3 prometheus promql

我用一个公式来计算大约。(用PromQL简化和编写)的MySQL实例读取的最大内存消耗:

(
    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
        )
    )
)
Run Code Online (Sandbox Code Playgroud)

不幸的mysql_global_variables_innodb_additional_mem_pool_size是,如果此度量标准不包括在计算中,则并非总是针对每个实例都存在该度量标准,从而导致“无数据”。

可能用于解决此问题的absent(v instant-vector)功能,但我不确定如何使用。

我希望将不存在的指标替换为常量(0在这种情况下)。可能吗?

您能否为我提供一些有关如何处理PromQL计算中缺少的指标的提示