github.com/netdata/go.d.plugin@v0.58.1/modules/mysql/collect_global_vars.go (about) 1 // SPDX-License-Identifier: GPL-3.0-or-later 2 3 package mysql 4 5 const ( 6 queryShowGlobalVariables = ` 7 SHOW GLOBAL VARIABLES 8 WHERE 9 Variable_name LIKE 'max_connections' 10 OR Variable_name LIKE 'table_open_cache' 11 OR Variable_name LIKE 'disabled_storage_engines' 12 OR Variable_name LIKE 'log_bin' 13 OR Variable_name LIKE 'performance_schema';` 14 ) 15 16 func (m *MySQL) collectGlobalVariables() error { 17 // MariaDB: https://mariadb.com/kb/en/server-system-variables/ 18 // MySQL: https://dev.mysql.com/doc/refman/8.0/en/server-system-variable-reference.html 19 q := queryShowGlobalVariables 20 m.Debugf("executing query: '%s'", q) 21 22 var name string 23 _, err := m.collectQuery(q, func(column, value string, _ bool) { 24 switch column { 25 case "Variable_name": 26 name = value 27 case "Value": 28 switch name { 29 case "disabled_storage_engines": 30 m.varDisabledStorageEngine = value 31 case "log_bin": 32 m.varLogBin = value 33 case "max_connections": 34 m.varMaxConns = parseInt(value) 35 case "performance_schema": 36 m.varPerformanceSchema = value 37 case "table_open_cache": 38 m.varTableOpenCache = parseInt(value) 39 } 40 } 41 }) 42 return err 43 }