diff options
Diffstat (limited to 'src/go/collectors/go.d.plugin/config/go.d/sd/docker.conf')
-rw-r--r-- | src/go/collectors/go.d.plugin/config/go.d/sd/docker.conf | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/src/go/collectors/go.d.plugin/config/go.d/sd/docker.conf b/src/go/collectors/go.d.plugin/config/go.d/sd/docker.conf new file mode 100644 index 0000000000..b67ca92fec --- /dev/null +++ b/src/go/collectors/go.d.plugin/config/go.d/sd/docker.conf @@ -0,0 +1,183 @@ +name: 'docker' + +discover: + - discoverer: docker + docker: + tags: "unknown" + address: "unix:///var/run/docker.sock" + +classify: + - name: "Skip" + selector: "unknown" + tags: "skip" + match: + - tags: "skip" + expr: | + {{ $netNOK := eq .NetworkMode "host" -}} + {{ $protoNOK := not (eq .PortProtocol "tcp") -}} + {{ $portNOK := empty .PrivatePort -}} + {{ $addrNOK := or (empty .IPAddress) (glob .PublicPortIP "*:*") -}} + {{ or $netNOK $protoNOK $portNOK $addrNOK }} + - name: "Applications" + selector: "!skip unknown" + tags: "-unknown app" + match: + - tags: "apache" + expr: '{{ match "sp" .Image "httpd httpd:* */apache */apache:* */apache2 */apache2:*" }}' + - tags: "cockroachdb" + expr: '{{ match "sp" .Image "cockroachdb/cockroach cockroachdb/cockroach:*" }}' + - tags: "consul" + expr: '{{ match "sp" .Image "consul consul:* */consul */consul:*" }}' + - tags: "coredns" + expr: '{{ match "sp" .Image "*/coredns */coredns:*" }}' + - tags: "couchbase" + expr: '{{ match "sp" .Image "couchbase couchbase:*" }}' + - tags: "couchdb" + expr: '{{ match "sp" .Image "couchdb couchdb:*" }}' + - tags: "elasticsearch" + expr: '{{ match "sp" .Image "elasticsearch elasticsearch:* */elasticsearch */elasticsearch:*" }}' + - tags: "opensearch" + expr: '{{ match "sp" .Image "*/opensearch */opensearch:*" }}' + - tags: "lighttpd" + expr: '{{ match "sp" .Image "*/lighttpd */lighttpd:*" }}' + - tags: "mongodb" + expr: '{{ match "sp" .Image "mongo mongo:* */mongodb */mongodb:*" }}' + - tags: "mysql" + expr: '{{ match "sp" .Image "mysql mysql:* */mysql */mysql:* mariadb mariadb:* */mariadb */mariadb:* percona percona:* */percona-mysql */percona-mysql:*" }}' + - tags: "nginx" + expr: '{{ match "sp" .Image "nginx nginx:*" }}' + - tags: "pgbouncer" + expr: '{{ match "sp" .Image "*/pgbouncer */pgbouncer:*" }}' + - tags: "pika" + expr: '{{ match "sp" .Image "pikadb/pika pikadb/pika:*" }}' + - tags: "postgres" + expr: '{{ match "sp" .Image "postgres postgres:* */postgres */postgres:* */postgresql */postgresql:*" }}' + - tags: "proxysql" + expr: '{{ match "sp" .Image "*/proxysql */proxysql:*" }}' + - tags: "rabbitmq" + expr: '{{ match "sp" .Image "rabbitmq rabbitmq:* */rabbitmq */rabbitmq:*" }}' + - tags: "redis" + expr: '{{ match "sp" .Image "redis redis:* */redis */redis:*" }}' + - tags: "tengine" + expr: '{{ match "sp" .Image "*/tengine */tengine:*" }}' + - tags: "vernemq" + expr: '{{ match "sp" .Image "*/vernemq */vernemq:*" }}' + - tags: "zookeeper" + expr: '{{ match "sp" .Image "*/zookeeper */zookeeper:*" }}' +compose: + - name: "Applications" + selector: "app" + config: + - selector: "apache" + template: | + module: apache + name: docker_{{.Name}} + url: http://{{.Address}}/server-status?auto + - selector: "cockroachdb" + template: | + module: cockroachdb + name: docker_{{.Name}} + url: http://{{.Address}}/_status/vars + - selector: "consul" + template: | + module: consul + name: docker_{{.Name}} + url: http://{{.Address}} + - selector: "coredns" + template: | + module: coredns + name: docker_{{.Name}} + url: http://{{.Address}}/metrics + - selector: "coredns" + template: | + module: coredns + name: docker_{{.Name}} + url: http://{{.Address}}/metrics + - selector: "couchbase" + template: | + module: couchbase + name: docker_{{.Name}} + url: http://{{.Address}} + - selector: "couchdb" + template: | + module: couchdb + name: docker_{{.Name}} + url: http://{{.Address}} + - selector: "elasticsearch" + template: | + module: elasticsearch + name: docker_{{.Name}} + url: http://{{.Address}} + - selector: "opensearch" + template: | + module: elasticsearch + name: docker_{{.Name}} + url: https://{{.Address}} + tls_skip_verify: yes + username: admin + password: admin + - selector: "lighttpd" + template: | + module: lighttpd + name: docker_{{.Name}} + url: http://{{.Address}}/server-status?auto + - selector: "mongodb" + template: | + module: mongodb + name: docker_{{.Name}} + uri: mongodb://{{.Address}} + - selector: "mysql" + template: | + module: mysql + name: docker_{{.Name}} + dsn: netdata@tcp({{.IPAddress}}:{{.PrivatePort}})/ + - selector: "nginx" + template: | + module: nginx + name: docker_{{.Name}} + url: http://{{.Address}}/stub_status + - selector: "pgbouncer" + template: | + module: pgbouncer + name: docker_{{.Name}} + dsn: postgres://netdata:postgres@{{.IPAddress}}:{{.PrivatePort}}/pgbouncer + - selector: "pika" + template: | + module: pika + name: docker_{{.Name}} + address: redis://@{{.IPAddress}}:{{.PrivatePort}} + - selector: "postgres" + template: | + module: postgres + name: docker_{{.Name}} + dsn: postgres://netdata:postgres@{{.IPAddress}}:{{.PrivatePort}}/postgres + - selector: "proxysql" + template: | + module: proxysql + name: docker_{{.Name}} + dsn: stats:stats@tcp({{.IPAddress}}:{{.PrivatePort}})/ + - selector: "rabbitmq" + template: | + module: rabbitmq + name: docker_{{.Name}} + url: http://{{.Address}} + - selector: "redis" + template: | + module: redis + name: docker_{{.Name}} + address: redis://@{{.IPAddress}}:{{.PrivatePort}} + - selector: "tengine" + template: | + module: tengine + name: docker_{{.Name}} + url: http://{{.Address}}/us + - selector: "vernemq" + template: | + module: vernemq + name: docker_{{.Name}} + url: http://{{.Address}}/metrics + - selector: "zookeeper" + template: | + module: vernemq + name: docker_{{.Name}} + address: {{.Address}} |