-
Notifications
You must be signed in to change notification settings - Fork 769
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
can't use socket files with '@' in the name #766
Comments
This could be a URL encode/decode issue with the target parameter handling. |
I doubt it's a URI encoding issue. Likely it's a tokenizing problem since if there is
EDIT: now that I look more closely at the URI definition, I shouldn't need a |
The exporter uses the Go mysql driver Config to format the connection. In order to determine the mysqld_exporter/config/config.go Lines 194 to 196 in 59ecd93
unix:// in order to activate unix socket connections. We then strip that string from the target string.
So, we need a debug line to find out exactly what is being passed to the |
Related for mainly informational purposes is that MariaDB in server configuration and parsing using MariaDB Connector C will use a leading |
Host operating system: output of
uname -a
Linux [hostname] 4.19.0-8-amd64 #1 SMP Debian 4.19.98-1 (2020-01-26) x86_64 GNU/Linux
mysqld_exporter version: output of
mysqld_exporter --version
mysqld_exporter, version 0.15.0 (branch: main, revision: 59ecd93)
build user: mmoore@[hostname]
build date: 20230824-14:45:11
go version: go1.20
platform: linux/amd64
tags: netgo
MySQL server version
percona-server-common-5.7 5.7.28-31-1.buster
mysqld_exporter command line flags
contents of .my.cnf
What did you do that produced an error?
We have multiple mysql instances on each machine, and we had to use multiple simultaneous daemons each configured for one of the instances. I'm hoping to use new
/probe
endpoint.What did you expect to see?
What did you see instead?
If I do this:
Now I get the metrics I hoped for. So I believe the '@' in the target parameter is doing something unexpected. I also tried substituting
%40
for@
and still got the "default addr for network 'mdb_olympus.sock)' unknown". The @ signs are there because we're using systemd units to start/stop/restart the mysqld instances.I can use
mysql --socket=/run/mysqld/mysqld@mdb_olympus.sock
without trouble so I don't believe '@' characters are illegal for mysql.The text was updated successfully, but these errors were encountered: