Skip to content

Commit 7797fcd

Browse files
authored
Merge branch 'master' into ping
2 parents 6635786 + e755b01 commit 7797fcd

File tree

155 files changed

+26832
-19445
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

155 files changed

+26832
-19445
lines changed

.travis.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ sudo: false
33
language: go
44
go:
55
- 1.8.x
6+
- tip
7+
8+
go_import_path: github.com/prometheus/mysqld_exporter
69

710
script:
811
- make

collector/perf_schema_events_statements.go

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,22 @@ const perfEventsStatementsQuery = `
3434
AND LAST_SEEN > DATE_SUB(NOW(), INTERVAL %d SECOND)
3535
ORDER BY LAST_SEEN DESC
3636
)Q
37-
GROUP BY SCHEMA_NAME, DIGEST
37+
GROUP BY
38+
Q.SCHEMA_NAME,
39+
Q.DIGEST,
40+
Q.DIGEST_TEXT,
41+
Q.COUNT_STAR,
42+
Q.SUM_TIMER_WAIT,
43+
Q.SUM_ERRORS,
44+
Q.SUM_WARNINGS,
45+
Q.SUM_ROWS_AFFECTED,
46+
Q.SUM_ROWS_SENT,
47+
Q.SUM_ROWS_EXAMINED,
48+
Q.SUM_CREATED_TMP_DISK_TABLES,
49+
Q.SUM_CREATED_TMP_TABLES,
50+
Q.SUM_SORT_MERGE_PASSES,
51+
Q.SUM_SORT_ROWS,
52+
Q.SUM_NO_INDEX_USED
3853
ORDER BY SUM_TIMER_WAIT DESC
3954
LIMIT %d
4055
`

collector/perf_schema_file_instances.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import (
1414

1515
const perfFileInstancesQuery = `
1616
SELECT
17-
FILE_NAME,
17+
FILE_NAME, EVENT_NAME,
1818
COUNT_READ, COUNT_WRITE,
1919
SUM_NUMBER_OF_BYTES_READ, SUM_NUMBER_OF_BYTES_WRITE
2020
FROM performance_schema.file_summary_by_instance
@@ -29,19 +29,19 @@ var (
2929
)
3030

3131
performanceSchemaFileInstancesRemovePrefix = flag.Bool(
32-
"collect.perf_schema.file_instances.remove_prefix", true,
32+
"collect.perf_schema.file_instances.remove_prefix", false,
3333
"Remove path prefix in performance_schema.file_summary_by_instance",
3434
)
3535

3636
performanceSchemaFileInstancesBytesDesc = prometheus.NewDesc(
3737
prometheus.BuildFQName(namespace, performanceSchema, "file_instances_bytes"),
3838
"The number of bytes processed by file read/write operations.",
39-
[]string{"file_name", "mode"}, nil,
39+
[]string{"file_name", "event_name", "mode"}, nil,
4040
)
4141
performanceSchemaFileInstancesCountDesc = prometheus.NewDesc(
4242
prometheus.BuildFQName(namespace, performanceSchema, "file_instances_total"),
4343
"The total number of file read/write operations.",
44-
[]string{"file_name", "mode"}, nil,
44+
[]string{"file_name", "event_name", "mode"}, nil,
4545
)
4646
)
4747

@@ -55,14 +55,14 @@ func ScrapePerfFileInstances(db *sql.DB, ch chan<- prometheus.Metric) error {
5555
defer perfSchemaFileInstancesRows.Close()
5656

5757
var (
58-
fileName string
58+
fileName, eventName string
5959
countRead, countWrite uint64
6060
sumBytesRead, sumBytesWritten uint64
6161
)
6262

6363
for perfSchemaFileInstancesRows.Next() {
6464
if err := perfSchemaFileInstancesRows.Scan(
65-
&fileName,
65+
&fileName, &eventName,
6666
&countRead, &countWrite,
6767
&sumBytesRead, &sumBytesWritten,
6868
); err != nil {
@@ -74,19 +74,19 @@ func ScrapePerfFileInstances(db *sql.DB, ch chan<- prometheus.Metric) error {
7474
}
7575
ch <- prometheus.MustNewConstMetric(
7676
performanceSchemaFileInstancesCountDesc, prometheus.CounterValue, float64(countRead),
77-
fileName, "read",
77+
fileName, eventName, "read",
7878
)
7979
ch <- prometheus.MustNewConstMetric(
8080
performanceSchemaFileInstancesCountDesc, prometheus.CounterValue, float64(countWrite),
81-
fileName, "write",
81+
fileName, eventName, "write",
8282
)
8383
ch <- prometheus.MustNewConstMetric(
8484
performanceSchemaFileInstancesBytesDesc, prometheus.CounterValue, float64(sumBytesRead),
85-
fileName, "read",
85+
fileName, eventName, "read",
8686
)
8787
ch <- prometheus.MustNewConstMetric(
8888
performanceSchemaFileInstancesBytesDesc, prometheus.CounterValue, float64(sumBytesWritten),
89-
fileName, "write",
89+
fileName, eventName, "write",
9090
)
9191

9292
}

collector/perf_schema_file_instances_test.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ func TestScrapePerfFileInstances(t *testing.T) {
2323
}
2424
defer db.Close()
2525

26-
columns := []string{"FILE_NAME", "COUNT_READ", "COUNT_WRITE", "SUM_NUMBER_OF_BYTES_READ", "SUM_NUMBER_OF_BYTES_WRITE"}
26+
columns := []string{"FILE_NAME", "EVENT_NAME", "COUNT_READ", "COUNT_WRITE", "SUM_NUMBER_OF_BYTES_READ", "SUM_NUMBER_OF_BYTES_WRITE"}
2727

2828
rows := sqlmock.NewRows(columns).
29-
AddRow("file_1", "3", "4", "725", "128").
30-
AddRow("file_2", "23", "12", "3123", "967")
29+
AddRow("file_1", "event1", "3", "4", "725", "128").
30+
AddRow("file_2", "event2", "23", "12", "3123", "967")
3131
mock.ExpectQuery(sanitizeQuery(perfFileInstancesQuery)).WillReturnRows(rows)
3232

3333
ch := make(chan prometheus.Metric)
@@ -39,14 +39,14 @@ func TestScrapePerfFileInstances(t *testing.T) {
3939
}()
4040

4141
metricExpected := []MetricResult{
42-
{labels: labelMap{"file_name": "file_1", "mode": "read"}, value: 3, metricType: dto.MetricType_COUNTER},
43-
{labels: labelMap{"file_name": "file_1", "mode": "write"}, value: 4, metricType: dto.MetricType_COUNTER},
44-
{labels: labelMap{"file_name": "file_1", "mode": "read"}, value: 725, metricType: dto.MetricType_COUNTER},
45-
{labels: labelMap{"file_name": "file_1", "mode": "write"}, value: 128, metricType: dto.MetricType_COUNTER},
46-
{labels: labelMap{"file_name": "file_2", "mode": "read"}, value: 23, metricType: dto.MetricType_COUNTER},
47-
{labels: labelMap{"file_name": "file_2", "mode": "write"}, value: 12, metricType: dto.MetricType_COUNTER},
48-
{labels: labelMap{"file_name": "file_2", "mode": "read"}, value: 3123, metricType: dto.MetricType_COUNTER},
49-
{labels: labelMap{"file_name": "file_2", "mode": "write"}, value: 967, metricType: dto.MetricType_COUNTER},
42+
{labels: labelMap{"file_name": "file_1", "event_name": "event1", "mode": "read"}, value: 3, metricType: dto.MetricType_COUNTER},
43+
{labels: labelMap{"file_name": "file_1", "event_name": "event1", "mode": "write"}, value: 4, metricType: dto.MetricType_COUNTER},
44+
{labels: labelMap{"file_name": "file_1", "event_name": "event1", "mode": "read"}, value: 725, metricType: dto.MetricType_COUNTER},
45+
{labels: labelMap{"file_name": "file_1", "event_name": "event1", "mode": "write"}, value: 128, metricType: dto.MetricType_COUNTER},
46+
{labels: labelMap{"file_name": "file_2", "event_name": "event2", "mode": "read"}, value: 23, metricType: dto.MetricType_COUNTER},
47+
{labels: labelMap{"file_name": "file_2", "event_name": "event2", "mode": "write"}, value: 12, metricType: dto.MetricType_COUNTER},
48+
{labels: labelMap{"file_name": "file_2", "event_name": "event2", "mode": "read"}, value: 3123, metricType: dto.MetricType_COUNTER},
49+
{labels: labelMap{"file_name": "file_2", "event_name": "event2", "mode": "write"}, value: 967, metricType: dto.MetricType_COUNTER},
5050
}
5151
convey.Convey("Metrics comparison", t, func() {
5252
for _, expect := range metricExpected {

mysqld_exporter.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,12 @@ func (e *Exporter) scrape(ch chan<- prometheus.Metric) {
257257
}
258258
defer db.Close()
259259

260+
// By design exporter should use maximum one connection per request.
261+
db.SetMaxOpenConns(1)
262+
db.SetMaxIdleConns(1)
263+
// Set max lifetime for a connection.
264+
db.SetConnMaxLifetime(1 * time.Minute)
265+
260266
if err := db.Ping(); err != nil {
261267
log.Errorln("Error pinging mysqld:", err)
262268
e.mysqldUp.Set(0)

vendor/github.com/Sirupsen/logrus/terminal_windows.go

Lines changed: 0 additions & 33 deletions
This file was deleted.

vendor/github.com/golang/protobuf/proto/lib.go

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/gopherjs/gopherjs/js/js.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/jtolds/gls/context.go

Lines changed: 62 additions & 53 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/jtolds/gls/gen_sym.go

Lines changed: 11 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)