// Fetch methods implements the data gathering and data conversion to the right format func (m *MetricSet) Fetch() (common.MapStr, error) { db, err := sql.Open("postgres", m.HostData().URI) if err != nil { return nil, err } defer db.Close() results, err := postgresql.QueryStats(db, "SELECT * FROM pg_stat_bgwriter") if err != nil { return nil, errors.Wrap(err, "QueryStats") } if len(results) == 0 { return nil, fmt.Errorf("No results from the pg_stat_bgwriter query") } return schema.Apply(results[0]), nil }
// Fetch implements the data gathering and data conversion to the right format. func (m *MetricSet) Fetch() ([]common.MapStr, error) { db, err := sql.Open("postgres", m.HostData().URI) if err != nil { return nil, err } defer db.Close() results, err := postgresql.QueryStats(db, "SELECT * FROM pg_stat_activity") if err != nil { return nil, errors.Wrap(err, "QueryStats") } events := []common.MapStr{} for _, result := range results { events = append(events, eventMapping(result)) } return events, nil }