- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Сам Мунин работает, все графики рисуются, в том числе и почти все мускуля.
Но мне хотелось бы еще наблюдать за qcache.
Есть три плагина:
mysql_qcache
mysql_qcache_mem
mysql_qcache_ratio
Ни один из них не работает, при тестировании пишет:
# Unknown service 'mysql_qcache_mem'
Что не так?
Кофигурейт по мускулю ошибок не выводит:
mysql_ | yes | yes (connections files_tables innodb_bpool innodb_bpool_act innodb_io innodb_log innodb_rows innodb_tnx network_traffic sorts table_locks tmp_tables +bin_relay_log +commands +innodb_insert_buf +innodb_io_pend +innodb_semaphores +myisam_indexes +qcache +qcache_mem +replication +select_types +slow)
P.S. Дебиан 9.5 + mariadb 10.3
Хмм, а что говорит команда
У вас она может отличаться, у меня FreeBSD.
Еще можно проверить в самих скриптах мунина
#!/usr/local/bin/perl
#/usr/bin/perl
У перла какая версия?
Посмотрел у плагинов мускуля которые работают и у тех которые не работают - написано одинаково:
команда что вы написали на Дебиан не выполняется
В логах мунина за сегодня по запросу "qcache" ничего не нашло.
Версия
Посмотрел у плагинов мускуля которые работают и у тех которые не работают - написано одинаково:
команда что вы написали на Дебиан не выполняется
В логах мунина за сегодня по запросу "qcache" ничего не нашло.
Версия
хмм, а покажите сам файл и какие права на нем стоят?
Права исполнения стоят +x?
Проблемные плагины пометил на скрине. До них и после них плагины работают.
Вот код плагина:
# -*- perl -*-
use strict;
my $MYSQLADMIN = $ENV{mysqladmin} || "mysqladmin";
my $COMMAND = "$MYSQLADMIN $ENV{mysqlopts} extended-status";
my %WANTED = ( "Qcache_queries_in_cache" => "queries");
my %WANTEDTYPE = ( "Qcache_queries_in_cache" => "GAUGE");
my $arg = shift();
if ($arg eq 'config') {
print_config();
exit();
} elsif ($arg eq 'autoconf') {
unless (test_service() ) {
print "yes\n";
} else {
print "no\n";
}
exit;
}
open(SERVICE, "$COMMAND |")
or die("Coult not execute '$COMMAND': $!");
while (<SERVICE>) {
my ($k, $v) = (m/(\w+).*?(\d+(?:\.\d+)?)/);
next unless ($k);
if (exists $WANTED{$k} ) {
print("$WANTED{$k}.value $v\n");
}
}
close(SERVICE);
sub print_config {
my $num = 0;
print('graph_title MySQL Queries in cache
graph_args --base 1000
graph_vlabel queries
graph_category db
graph_info Plugin available at <a href="http://rodolphe.quiedeville.org/hack/munin/">http://rodolphe.quiedeville.org/hack/munin/</a>
');
for my $key (keys %WANTED) {
my $title = $WANTED{$key};
print("$title.label ${title}\n",
"$title.min 0\n",
"$title.type ".$WANTEDTYPE{$key}."\n",
"$title.max 500000\n",
"$title.draw ", ($num) ? "STACK" : "AREA" , "\n",
);
$num++;
}
}
sub test_service {
my $return = 1;
system ("$MYSQLADMIN --version >/dev/null 2>/dev/null");
if ($? == 0)
{
system ("$COMMAND >/dev/null 2>/dev/null");
if ($? == 0)
{
print "yes\n";
$return = 0;
}
else
{
print "no (could not connect to mysql)\n";
}
}
else
{
print "no (mysqladmin not found)\n";
}
exit $return;
}
У меня он тоже не запустился, ошибка как у вас.
Вот мой файл.
#/usr/bin/perl
#
# Copyright (C) 2006 - Rodolphe Quiedeville <rodolphe@quiedeville.org>
# Copyright (C) 2003-2004 - Andreas Buer
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# $Log$
# Revision 1.0 2006/04/28 09:04:01 rodo
# Add lower limit fixed to 0
#
# Revision 1.0 2006/04/26 16:04:01 rodo
# Created by Rodolphe Quiedeville
#
# Parameters:
#
# config
# autoconf
#
# Configuration variables
#
# mysqlopts - Options to pass to mysql
# mysqladmin - Override location of mysqladmin
#
#%# family=auto
#%# capabilities=autoconf
use strict;
my $MYSQLADMIN = $ENV{mysqladmin} || "mysqladmin";
my $COMMAND = "$MYSQLADMIN $ENV{mysqlopts} extended-status";
my $COMMANDSIZE = "$MYSQLADMIN $ENV{mysqlopts} variables";
my %WANTED = ( "Qcache_free_memory" => "free" );
my $arg = shift();
if ($arg eq 'config') {
print_config();
exit();
} elsif ($arg eq 'autoconf') {
unless (test_service() ) {
print "yes\n";
} else {
print "no\n";
}
exit;
}
my ($free, $used) = (0,0);
open(SERVICE, "$COMMAND |")
or die("Coult not execute '$COMMAND': $!");
while (<SERVICE>) {
my ($k, $v) = (m/(\w+).*?(\d+(?:\.\d+)?)/);
next unless ($k);
if (exists $WANTED{$k} ) {
$free = $v;
print("$WANTED{$k}.value $v\n");
}
}
close(SERVICE);
open(SERVICE, "$COMMANDSIZE |")
or die("Coult not execute '$COMMANDSIZE': $!");
while (<SERVICE>) {
my ($k, $v) = (m/(\w+).*?(\d+(?:\.\d+)?)/);
next unless ($k);
if ($k eq "query_cache_size" ) {
print("used.value ",($v-$free),"\n");
}
}
close(SERVICE);
sub print_config {
print('graph_title MySQL Queries Cache Size
graph_args --base 1024 -l 0
graph_vlabel bytes
graph_category mysql
graph_order used free
graph_total Total
graph_info Plugin available at <a href="http://rodolphe.quiedeville.org/hack/munin/">http://rodolphe.quiedeville.org/hack/munin/</a>
used.label Used
used.draw AREA
free.label Free
free.draw STACK
');
}
sub test_service {
my $return = 1;
system ("$MYSQLADMIN --version >/dev/null 2>/dev/null");
if ($? == 0)
{
system ("$COMMAND >/dev/null 2>/dev/null");
if ($? == 0)
{
print "yes\n";
$return = 0;
}
else
{
print "no (could not connect to mysql)\n";
}
}
else
{
print "no (mysqladmin not found)\n";
}
exit $return;
}
Ваш файл не работает, ошибка такая: (вероятно перл виноват?)
# Processing plugin configuration from /etc/munin/plugin-conf.d/munin-node
# Setting /rgid/ruid/ to /113/65534/
# Setting /egid/euid/ to /113 113/65534/
# Setting up environment
# Environment mysqlpassword = ПАРОЛЬ
# Environment mysqladmin = /usr/bin/mysqladmin
# Environment mysqluser = root
# Environment mysqlshow = /usr/bin/mysqlshow
# Environment mysqlopts = -u root -pПАРОЛЬ
# About to run '/etc/munin/plugins/mysql_qcache'
Can't exec "/etc/munin/plugins/mysql_qcache": No such file or directory at /usr/share/perl5/Munin/Node/Service.pm line 263.
# FATAL: Failed to exec.
Ваш файл не работает, ошибка такая: (вероятно перл виноват?)
В этом файле должны быть прописаны авторизационные данные для мускула.
/usr/local/etc/munin/plugin-conf.d/plugins.conf
Есть два пути у меня в дебиане:
1. /usr/local/etc/ дальше пусто
2. /etc/munin/plugin-conf.d с файлом munin-node
в нем прописано:
[mysql*]
env.mysqlopts -u root -pПАРОЛЬ
env.mysqladmin /usr/bin/mysqladmin
env.mysqlshow /usr/bin/mysqlshow
env.mysqluser root
env.mysqlpassword ПАРОЛЬ
Есть два пути у меня в дебиане:
1. /usr/local/etc/ дальше пусто
2. /etc/munin/plugin-conf.d с файлом munin-node
в нем прописано:
[mysql*]
env.mysqlopts -u root -pПАРОЛЬ
env.mysqladmin /usr/bin/mysqladmin
env.mysqlshow /usr/bin/mysqlshow
env.mysqluser root
env.mysqlpassword ПАРОЛЬ
У меня FreeBSD /usr/local/etc/
У вас Linux как я понимаю тогда тут /etc/
Странно все.
Покажите вывод команды whereis perl и сам скрипт еще раз.
whereis perl
perl: /usr/bin/perl /usr/bin/perl5.24-x86_64-linux-gnu /etc/perl /usr/share/perl /usr/share/man/man1/perl.1.gz