go.d sd docker use well-known port for app identification too (#17174)
Ilya Mashchenko committed
Mar 15, 2024 at 12:49 UTC
23bc67fd7db43bb5754d664ecbf75062d577f2a6
2 files changed
+14
-18
src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/promport.go
-1
@@ -70,7 +70,6 @@ var prometheusPortAllocations = map[int]string{
70
9150: "memcached_exporter",
71
9151: "varnish_request_exporter",
72
9152: "command_runner_exporter",
73
- 9153: "coredns",
73
9154: "postfix_exporter",
74
9155: "vsphere_graphite",
75
9156: "webdriver_exporter",
src/go/collectors/go.d.plugin/config/go.d/sd/docker.conf
+14
-17
@@ -31,39 +31,37 @@ classify:
31
- tags: "coredns"
32
expr: '{{ match "sp" .Image "*/coredns */coredns:*" }}'
33
- tags: "couchbase"
34
- expr: '{{ match "sp" .Image "couchbase couchbase:*" }}'
34
+ expr: '{{ or (eq .PrivatePort "8091") (match "sp" .Image "couchbase couchbase:*") }}'
35
- tags: "couchdb"
36
- expr: '{{ match "sp" .Image "couchdb couchdb:*" }}'
36
+ expr: '{{ or (eq .PrivatePort "5984") (match "sp" .Image "couchdb couchdb:*") }}'
37
- tags: "elasticsearch"
38
- expr: '{{ match "sp" .Image "elasticsearch elasticsearch:* */elasticsearch */elasticsearch:*" }}'
39
- - tags: "opensearch"
40
- expr: '{{ match "sp" .Image "*/opensearch */opensearch:*" }}'
38
+ expr: '{{ or (eq .PrivatePort "9200") (match "sp" .Image "elasticsearch elasticsearch:* */elasticsearch */elasticsearch:* */opensearch */opensearch:*") }}'
39
- tags: "lighttpd"
40
expr: '{{ match "sp" .Image "*/lighttpd */lighttpd:*" }}'
41
- tags: "mongodb"
44
- expr: '{{ match "sp" .Image "mongo mongo:* */mongodb */mongodb:* */mongodb-community-server */mongodb-community-server:*" }}'
42
+ expr: '{{ or (eq .PrivatePort "27017") (match "sp" .Image "mongo mongo:* */mongodb */mongodb:* */mongodb-community-server */mongodb-community-server:*") }}'
43
- tags: "mysql"
46
- expr: '{{ match "sp" .Image "mysql mysql:* */mysql */mysql:* mariadb mariadb:* */mariadb */mariadb:* percona percona:* */percona-mysql */percona-mysql:*" }}'
44
+ expr: '{{ or (eq .PrivatePort "3306") (match "sp" .Image "mysql mysql:* */mysql */mysql:* mariadb mariadb:* */mariadb */mariadb:* percona percona:* */percona-mysql */percona-mysql:*") }}'
45
- tags: "nginx"
46
expr: '{{ match "sp" .Image "nginx nginx:*" }}'
47
- tags: "pgbouncer"
50
- expr: '{{ match "sp" .Image "*/pgbouncer */pgbouncer:*" }}'
48
+ expr: '{{ or (eq .PrivatePort "6432") (match "sp" .Image "*/pgbouncer */pgbouncer:*") }}'
49
- tags: "pika"
50
expr: '{{ match "sp" .Image "pikadb/pika pikadb/pika:*" }}'
51
- tags: "postgres"
54
- expr: '{{ match "sp" .Image "postgres postgres:* */postgres */postgres:* */postgresql */postgresql:*" }}'
52
+ expr: '{{ or (eq .PrivatePort "5432") (match "sp" .Image "postgres postgres:* */postgres */postgres:* */postgresql */postgresql:*") }}'
53
- tags: "proxysql"
56
- expr: '{{ match "sp" .Image "*/proxysql */proxysql:*" }}'
54
+ expr: '{{ or (eq .PrivatePort "6032") (match "sp" .Image "*/proxysql */proxysql:*") }}'
55
- tags: "rabbitmq"
58
- expr: '{{ match "sp" .Image "rabbitmq rabbitmq:* */rabbitmq */rabbitmq:*" }}'
56
+ expr: '{{ or (eq .PrivatePort "15672") (match "sp" .Image "rabbitmq rabbitmq:* */rabbitmq */rabbitmq:*") }}'
57
- tags: "redis"
60
- expr: '{{ match "sp" .Image "redis redis:* */redis */redis:*" }}'
58
+ expr: '{{ or (eq .PrivatePort "6379") (match "sp" .Image "redis redis:* */redis */redis:*") }}'
59
- tags: "tengine"
60
expr: '{{ match "sp" .Image "*/tengine */tengine:*" }}'
61
- tags: "vernemq"
62
expr: '{{ match "sp" .Image "*/vernemq */vernemq:*" }}'
63
- tags: "zookeeper"
66
- expr: '{{ match "sp" .Image "*/zookeeper */zookeeper:*" }}'
64
+ expr: '{{ or (eq .PrivatePort "2181") (match "sp" .Image "*/zookeeper */zookeeper:*") }}'
65
compose:
66
- name: "Applications"
67
selector: "app"
@@ -107,15 +105,14 @@ compose:
105
template: |
106
module: elasticsearch
107
name: docker_{{.Name}}
108
+ {{ if glob .Image "*elastic*" -}}
109
url: http://{{.Address}}
111
- - selector: "opensearch"
112
- template: |
113
- module: elasticsearch
114
- name: docker_{{.Name}}
110
+ {{ else -}}
111
url: https://{{.Address}}
112
tls_skip_verify: yes
113
username: admin
114
password: admin
115
+ {{ end -}}
116
- selector: "lighttpd"
117
template: |
118
module: lighttpd