Я добавил mysqld_exporter в prometheus
Сначала я настроил нового пользователя в mysql следующим образом:
mysql -u root -p
CREATE USER 'mysqld_exporter'@'localhost' IDENTIFIED BY 'password' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysqld_exporter'@'localhost';
Я добавил файл .my.cnf в /etc/myslq_exporter
:
[client]
user=mysqld_exporter
password=Mypassword
затем я настроил mysqld_exporter.service в /etc/systemd/system
следующим образом:
[Unit]
Description=MySQL Exporter Service
Wants=network.target
After=network.target
[Service]
User=mysqld_exporter
Group=mysqld_exporter
Type=simple
Environment="DATA_SOURCE_NAME=mysqld_exporter:Mypassword@tcp(127.0.0.1:3306)"
ExecStart=/usr/local/bin/mysqld_exporter \
--config.my-cnf /etc/mysql_exporter/.my.cnf
--collect.global_status \
--collect.info_schema.innodb_metrics \
--collect.auto_increment.columns \
--collect.info_schema_processlist \
--collect.binlog_size \
--collect.global_variables \
--collect.info_schema.tablestats \
--collect.global_variables \
--collect.info_schema.query_response_time \
--collect.info_schema.userstats \
--collect.info_schema.tables \
--collect.perf_schema.tablelocks \
--collect.perf_schema.file_events \
--collect.perf_schema.eventswaits \
--collect.perf_schema.indexiowaits \
--collect.perf_schema.tableiowaits \
--collect.slave_status \
Restart=always
[Install]
WantedBy=multi-user.target
Я запускаю mysqld_exporter, но когда я go на localhost: 9104 / metrics mysql_up = 0
Я открыл окно терминала и попытался выполнить следующие шаги:
systemctl stop mysqld_exporter
export DATA_SOURCE_NAME='mysqld_exporter:Mypassword@tcp(127.0.0.1:3306)/'
./mysqld_exporter
Таким образом, мне удалось получить все метрики. Что такое сбой в mysqld_exporter.service
?
Спасибо всем