Remove time.Ticker and adjust polling mechanism
[pstop.git] / lib / global_status.go
1 package lib
2
3 import (
4         "database/sql"
5         "log"
6 )
7
8 /*
9 ** mysql> select VARIABLE_VALUE from global_status where VARIABLE_NAME = 'UPTIME';
10 * +----------------+
11 * | VARIABLE_VALUE |
12 * +----------------+
13 * | 251107         |
14 * +----------------+
15 * 1 row in set (0.00 sec)
16 **/
17 func SelectGlobalStatusByVariableName(dbh *sql.DB, variable_name string) (error, int) {
18         sql_select := "SELECT VARIABLE_VALUE from INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = ?"
19
20         var variable_value int
21         err := dbh.QueryRow(sql_select, variable_name).Scan(&variable_value)
22         switch {
23         case err == sql.ErrNoRows:
24                 log.Println("No setting with that variable_name", variable_name)
25         case err != nil:
26                 log.Fatal(err)
27         default:
28                 // fmt.Println("variable_value for", variable_name, "is", variable_value)
29         }
30
31         return err, variable_value
32 }