MySQL input: log and continue on field parse error (#2855)
This commit is contained in:
parent
7d7206b3e2
commit
02d168705c
|
@ -858,44 +858,47 @@ func (m *Mysql) gatherGlobalStatuses(db *sql.DB, serv string, acc telegraf.Accum
|
||||||
case "Queries":
|
case "Queries":
|
||||||
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
acc.AddError(fmt.Errorf("E! Error mysql: parsing %s int value (%s)", name, err))
|
||||||
}
|
} else {
|
||||||
|
|
||||||
fields["queries"] = i
|
fields["queries"] = i
|
||||||
|
}
|
||||||
case "Questions":
|
case "Questions":
|
||||||
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
acc.AddError(fmt.Errorf("E! Error mysql: parsing %s int value (%s)", name, err))
|
||||||
}
|
} else {
|
||||||
|
|
||||||
fields["questions"] = i
|
fields["questions"] = i
|
||||||
|
}
|
||||||
case "Slow_queries":
|
case "Slow_queries":
|
||||||
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
acc.AddError(fmt.Errorf("E! Error mysql: parsing %s int value (%s)", name, err))
|
||||||
}
|
} else {
|
||||||
|
|
||||||
fields["slow_queries"] = i
|
fields["slow_queries"] = i
|
||||||
|
}
|
||||||
case "Connections":
|
case "Connections":
|
||||||
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
acc.AddError(fmt.Errorf("E! Error mysql: parsing %s int value (%s)", name, err))
|
||||||
}
|
} else {
|
||||||
fields["connections"] = i
|
fields["connections"] = i
|
||||||
|
}
|
||||||
case "Syncs":
|
case "Syncs":
|
||||||
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
acc.AddError(fmt.Errorf("E! Error mysql: parsing %s int value (%s)", name, err))
|
||||||
}
|
} else {
|
||||||
fields["syncs"] = i
|
fields["syncs"] = i
|
||||||
|
}
|
||||||
case "Uptime":
|
case "Uptime":
|
||||||
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
i, err := strconv.ParseInt(string(val.([]byte)), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
acc.AddError(fmt.Errorf("E! Error mysql: parsing %s int value (%s)", name, err))
|
||||||
}
|
} else {
|
||||||
fields["uptime"] = i
|
fields["uptime"] = i
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
// Send any remaining fields
|
// Send any remaining fields
|
||||||
if len(fields) > 0 {
|
if len(fields) > 0 {
|
||||||
acc.AddFields("mysql", fields, tags)
|
acc.AddFields("mysql", fields, tags)
|
||||||
|
|
Loading…
Reference in New Issue