#184 adding merge between show global variables and show global variables #184 update RPM template'
This commit is contained in:
parent
67c80de3da
commit
0ffe9507b6
2 changed files with 44 additions and 30 deletions
|
@ -46,6 +46,6 @@ rm -rf $RPM_BUILD_ROOT
|
||||||
%{_mandir}/man1/*
|
%{_mandir}/man1/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Thu Jan 5 2015 Jean-Marie RENOUARD <jmrenouard@gmail.com> %VERSION%-1
|
* Thu Apr 14 20145 Jean-Marie RENOUARD <jmrenouard@gmail.com> %VERSION%-1
|
||||||
- Initial RPM release
|
- Initial RPM release
|
||||||
|
|
||||||
|
|
|
@ -157,7 +157,7 @@ sub usage {
|
||||||
. " --debug Print debug information\n"
|
. " --debug Print debug information\n"
|
||||||
. " --dbstat Print database information\n"
|
. " --dbstat Print database information\n"
|
||||||
. " --idxstat Print index information\n"
|
. " --idxstat Print index information\n"
|
||||||
. "--sysstat Print system information\n"
|
. " --sysstat Print system information\n"
|
||||||
. " --bannedports Ports banned separated by comma(,)\n"
|
. " --bannedports Ports banned separated by comma(,)\n"
|
||||||
. " --maxportallowed Number of ports opened allowed on this hosts\n"
|
. " --maxportallowed Number of ports opened allowed on this hosts\n"
|
||||||
. " --cvefile CVE File for vulnerability checks\n"
|
. " --cvefile CVE File for vulnerability checks\n"
|
||||||
|
@ -933,31 +933,40 @@ sub get_tuning_info {
|
||||||
# Populates all of the variable and status hashes
|
# Populates all of the variable and status hashes
|
||||||
my ( %mystat, %myvar, $dummyselect, %myrepl, %myslaves );
|
my ( %mystat, %myvar, $dummyselect, %myrepl, %myslaves );
|
||||||
|
|
||||||
sub get_all_vars {
|
sub arr2hash {
|
||||||
|
my $href=shift;
|
||||||
|
my $harr=shift;
|
||||||
|
my $sep=shift;
|
||||||
|
$sep='\s' unless defined($sep);
|
||||||
|
foreach my $line (@$harr) {
|
||||||
|
$line =~ /([a-zA-Z_]*)\s*$sep\s*(.*)/;
|
||||||
|
$$href{$1} = $2;
|
||||||
|
debugprint "V: $1 = $2";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sub get_all_vars {
|
||||||
# We need to initiate at least one query so that our data is useable
|
# We need to initiate at least one query so that our data is useable
|
||||||
$dummyselect = select_one "SELECT VERSION()";
|
$dummyselect = select_one "SELECT VERSION()";
|
||||||
debugprint "VERSION: " . $dummyselect . "";
|
debugprint "VERSION: " . $dummyselect . "";
|
||||||
$result{'MySQL Client'}{'Version'} = $dummyselect;
|
$result{'MySQL Client'}{'Version'} = $dummyselect;
|
||||||
my @mysqlvarlist = select_array "SHOW /*!50000 GLOBAL */ VARIABLES";
|
|
||||||
foreach my $line (@mysqlvarlist) {
|
my @mysqlvarlist = select_array ("SHOW GLOBAL VARIABLES");
|
||||||
$line =~ /([a-zA-Z_]*)\s*(.*)/;
|
push (@mysqlvarlist, select_array ("SHOW VARIABLES"));
|
||||||
$myvar{$1} = $2;
|
arr2hash(\%myvar, \@mysqlvarlist);
|
||||||
$result{'Variables'}{$1} = $2;
|
$result{'Variables'}=%myvar;
|
||||||
debugprint "V: $1 = $2";
|
|
||||||
}
|
my @mysqlstatlist = select_array ("SHOW GLOBAL STATUS");
|
||||||
my @mysqlstatlist = select_array "SHOW /*!50000 GLOBAL */ STATUS";
|
push (@mysqlstatlist, select_array ("SHOW STATUS"));
|
||||||
foreach my $line (@mysqlstatlist) {
|
arr2hash(\%mystat, \@mysqlstatlist);
|
||||||
$line =~ /([a-zA-Z_]*)\s*(.*)/;
|
$result{'Status'}=%mystat;
|
||||||
$mystat{$1} = $2;
|
|
||||||
$result{'Status'}{$1} = $2;
|
|
||||||
debugprint "S: $1 = $2";
|
|
||||||
}
|
|
||||||
$myvar{'have_galera'} = "NO";
|
$myvar{'have_galera'} = "NO";
|
||||||
if ( defined($myvar{'wsrep_provider_options'}) && $myvar{'wsrep_provider_options'} ne "") {
|
if ( defined($myvar{'wsrep_provider_options'}) && $myvar{'wsrep_provider_options'} ne "") {
|
||||||
$myvar{'have_galera'} = "YES";
|
$myvar{'have_galera'} = "YES";
|
||||||
debugprint "Galera options: ". $myvar{'wsrep_provider_options'};
|
debugprint "Galera options: ". $myvar{'wsrep_provider_options'};
|
||||||
}
|
}
|
||||||
|
|
||||||
# Workaround for MySQL bug #59393 wrt. ignore-builtin-innodb
|
# Workaround for MySQL bug #59393 wrt. ignore-builtin-innodb
|
||||||
if ( ( $myvar{'ignore_builtin_innodb'} || "" ) eq "ON" ) {
|
if ( ( $myvar{'ignore_builtin_innodb'} || "" ) eq "ON" ) {
|
||||||
$myvar{'have_innodb'} = "NO";
|
$myvar{'have_innodb'} = "NO";
|
||||||
|
@ -990,16 +999,9 @@ sub get_all_vars {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
debugprint Dumper(@mysqlenginelist);
|
debugprint Dumper(@mysqlenginelist);
|
||||||
my @mysqlslave = select_array "SHOW SLAVE STATUS\\G";
|
my @mysqlslave = select_array("SHOW SLAVE STATUS\\G");
|
||||||
|
arr2hash(\%myrepl, \@mysqlslave, ':');
|
||||||
foreach my $line (@mysqlslave) {
|
$result{'Replication'}{'Status'}=%myrepl;
|
||||||
if ( $line =~ /\s*(.*):\s*(.*)/ ) {
|
|
||||||
debugprint "$1 => $2";
|
|
||||||
$myrepl{"$1"} = $2;
|
|
||||||
$result{'Replication'}{'Status'}{$1} = $2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
my @mysqlslaves = select_array "SHOW SLAVE HOSTS";
|
my @mysqlslaves = select_array "SHOW SLAVE HOSTS";
|
||||||
my @lineitems = ();
|
my @lineitems = ();
|
||||||
foreach my $line (@mysqlslaves) {
|
foreach my $line (@mysqlslaves) {
|
||||||
|
@ -1138,9 +1140,7 @@ sub get_os_release {
|
||||||
$os_relase =~ s/\s+\\n.*//;
|
$os_relase =~ s/\s+\\n.*//;
|
||||||
return $os_relase;
|
return $os_relase;
|
||||||
}
|
}
|
||||||
|
|
||||||
return "Unknown OS release";
|
return "Unknown OS release";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sub get_fs_info() {
|
sub get_fs_info() {
|
||||||
|
@ -1178,6 +1178,20 @@ sub get_fs_info() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub merge_hash
|
||||||
|
{
|
||||||
|
my $h1=shift;
|
||||||
|
my $h2=shift;
|
||||||
|
my %result={};
|
||||||
|
foreach my $substanceref ( $h1, $h2 ) {
|
||||||
|
while ( my ($k, $v) = each %$substanceref) {
|
||||||
|
next if (exists $result{$k});
|
||||||
|
$result{$k} = $v;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return \%result;
|
||||||
|
}
|
||||||
|
|
||||||
sub is_virtual_machine() {
|
sub is_virtual_machine() {
|
||||||
my $isVm = `grep -Ec '^flags.*\ hypervisor\ ' /proc/cpuinfo`;
|
my $isVm = `grep -Ec '^flags.*\ hypervisor\ ' /proc/cpuinfo`;
|
||||||
return ( $isVm == 0 ? 0 : 1 );
|
return ( $isVm == 0 ? 0 : 1 );
|
||||||
|
|
Loading…
Reference in a new issue