2017-08-08 2 views
0

Ich verwende eine Formel zur Berechnung ca. maximale Speicherverbrauch von MySQL Instanzen, dass (vereinfacht und geschrieben in PromQL) lautet:Der Umgang mit fehlenden Metriken in Berechnungen

(
    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 
     ) 
    ) 
) 

Leider ist die mysql_global_variables_innodb_additional_mem_pool_size Metrik für jede Instanz was „keine Daten“, wenn dies nicht immer vorhanden ist, enthalten ist, in der Berechnung.

Es gibt die absent(v instant-vector) Funktion, die kann verwendet werden, um dies zu lösen, aber ich bin mir nicht sicher, wie.

Ich möchte nicht existent metrices durch eine Konstante (0 in diesem Fall) ersetzt werden. Ist es möglich?

Könnten Sie mir bitte einige Hinweise geben, wie Sie mit fehlenden Metriken in Berechnungen in PromQL umgehen können?

Antwort

Verwandte Themen