Skip to content

Commit eedae74

Browse files
authored
Merge pull request #1 from mackerelio/added-plugin
Copied from mackerel-agent-plugins
2 parents a2a44bc + f600b2c commit eedae74

File tree

14 files changed

+2931
-0
lines changed

14 files changed

+2931
-0
lines changed

.github/workflows/goreleaser.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: goreleaser
2+
3+
on:
4+
push:
5+
tags:
6+
- "v[0-9]+.[0-9]+.[0-9]+"
7+
jobs:
8+
goreleaser:
9+
uses: mackerelio/workflows/.github/workflows/goreleaser.yml@main
10+

.github/workflows/test.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
name: test
3+
4+
on:
5+
push:
6+
branches:
7+
- master
8+
tags:
9+
- v*
10+
pull_request:
11+
env:
12+
DEBIAN_FRONTEND: noninteractive
13+
jobs:
14+
# TODO
15+
# It's intended for code migration, so it's now a comment
16+
# lint:
17+
# strategy:
18+
# matrix:
19+
# os: [ubuntu-latest]
20+
# runs-on: ${{ matrix.os }}
21+
# steps:
22+
# - uses: actions/checkout@v3
23+
# - uses: golangci/golangci-lint-action@v3
24+
# with:
25+
# args: --timeout 2m
26+
test:
27+
strategy:
28+
matrix:
29+
go: ["1.19.x", "1.18.x"]
30+
os: [ubuntu-latest]
31+
runs-on: ${{ matrix.os }}
32+
steps:
33+
- uses: actions/setup-go@v2
34+
with:
35+
go-version: ${{ matrix.go }}
36+
- uses: actions/checkout@v2
37+
- uses: actions/cache@v2
38+
with:
39+
path: ~/go/pkg/mod
40+
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
41+
restore-keys: |
42+
${{ runner.os }}-go-
43+
- run: |
44+
make test

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
mackerel-plugin-mysql

.goreleaser.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
builds:
2+
- binary: mackerel-plugin-mysql
3+
goos:
4+
- linux
5+
goarch:
6+
- amd64
7+
- arm64
8+
archives:
9+
- format: zip
10+
name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}"
11+
release:
12+
github:
13+
owner: mackerelio
14+
name: mackerel-plugin-mysql
15+

Makefile

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
.PHONY: build
2+
build:
3+
go build -o mackerel-plugin-mysql
4+
5+
.PHONY: test
6+
test: testgo build
7+
go install github.com/lufia/graphitemetrictest/cmd/graphite-metric-test@latest
8+
./test.sh
9+
10+
.PHONY: testgo
11+
testgo:
12+
go test -v ./...
13+

README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
mackerel-plugin-mysql
2+
=====================
3+
4+
MySQL custom metrics plugin for mackerel.io agent.
5+
6+
## Synopsis
7+
8+
```shell
9+
mackerel-plugin-mysql [-host=<host>] [-port=<port>] [-username=<username>] [-password=<password>] [-tempfile=<tempfile>] [-disable_innodb=true] [-metric-key-prefix=<prefix>] [-enable_extended=true] [-debug=true]
10+
```
11+
12+
## Example of mackerel-agent.conf
13+
14+
```
15+
[plugin.metrics.mysql]
16+
command = "/path/to/mackerel-plugin-mysql"
17+
```
18+

UPDATE.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# How to check the plugin
2+
3+
## Requirements
4+
5+
* dockerd
6+
7+
## Steps
8+
9+
* Run mysql:8
10+
* Run the plugin standalone
11+
* Check the exit code

go.mod

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
module github.com/mackerelio/mackerel-plugin-mysql
2+
3+
go 1.18
4+
5+
require (
6+
github.com/mackerelio/go-mackerel-plugin v0.1.4
7+
github.com/stretchr/testify v1.8.1
8+
github.com/ziutek/mymysql v1.5.4
9+
)
10+
11+
require (
12+
github.com/davecgh/go-spew v1.1.1 // indirect
13+
github.com/kr/text v0.2.0 // indirect
14+
github.com/mackerelio/golib v1.2.1 // indirect
15+
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e // indirect
16+
github.com/pmezard/go-difflib v1.0.0 // indirect
17+
golang.org/x/text v0.5.0 // indirect
18+
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f // indirect
19+
gopkg.in/yaml.v3 v3.0.1 // indirect
20+
)

go.sum

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
2+
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3+
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
4+
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
5+
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
6+
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
7+
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
8+
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
9+
github.com/mackerelio/go-mackerel-plugin v0.1.4 h1:+kyatPMFSoghKd7o9oge1FnDrVknFbiwz5VWdFIgsqY=
10+
github.com/mackerelio/go-mackerel-plugin v0.1.4/go.mod h1:bau0bZbR1JXiCwDIg880djjttZ/0j885v5k0n+jAS/I=
11+
github.com/mackerelio/golib v1.2.1 h1:SDcDn6Jw3p9bi1N0bg1Z/ilG5qcBB23qL8xNwrU0gg4=
12+
github.com/mackerelio/golib v1.2.1/go.mod h1:b8ZaapsHGH1FlEJlCqfD98CqafLeyMevyATDlID2BsM=
13+
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
14+
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
15+
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
16+
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
17+
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
18+
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
19+
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
20+
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
21+
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
22+
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
23+
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
24+
github.com/ziutek/mymysql v1.5.4 h1:GB0qdRGsTwQSBVYuVShFBKaXSnSnYYC2d9knnE1LHFs=
25+
github.com/ziutek/mymysql v1.5.4/go.mod h1:LMSpPZ6DbqWFxNCHW77HeMg9I646SAhApZ/wKdgO/C0=
26+
golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM=
27+
golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
28+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
29+
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU=
30+
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
31+
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
32+
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
33+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

0 commit comments

Comments
 (0)