Projet

Général

Profil

Révision e641c802

IDe641c8028469e940578c460060a23a9eeb27657e
Parent 704a88ec
Enfant 839a29e9

Ajouté par Lars Kruse il y a plus de 4 ans

mysql_size_all: use clean fieldnames for databsaes with invalid characters

Thanks, Lokutos!

See: #1032

Voir les différences:

plugins/mysql/mysql_size_all
39 39

  
40 40
use strict;
41 41

  
42
# unless ($0 =~ /mysql_size(?:_([^_]+)|)_(.+)\s*$/)
43
# {
44
#     die "Could not parse name $0.\n";
45
# }
46
# my $db = $2;
42
use Munin::Plugin;
43

  
47 44

  
48 45
my $COMMAND;
49 46
my $MYSQLADMIN = $ENV{mysqladmin} || "mysql";
......
103 100
    close(SERVICE);
104 101

  
105 102
  }
106
  print("$db.value $total_size\n");
103
  my $fieldname = clean_fieldname($db);
104
  print("$fieldname.value $total_size\n");
107 105
}
108 106

  
109 107

  
......
121 119
');
122 120

  
123 121
    for my $db (@dbs) {
124
        my $title = "$db";
125
        print("$title.label ${title}\n",
126
              "$title.min 0\n",
127
              "$title.type GAUGE\n",
128
              "$title.draw ", ($num) ? "STACK" : "AREA" ,  "\n",
122
        my $fieldname = clean_fieldname($db);
123
        print("$fieldname.label $db\n",
124
              "$fieldname.min 0\n",
125
              "$fieldname.type GAUGE\n",
126
              "$fieldname.draw AREASTACK\n",
129 127
             );
130 128
        $num++;
131 129
    }
......
162 160
  foreach my $f (glob("/var/lib/mysql/*")) {
163 161
    if (-d $f) {
164 162
      $f =~ s/\@002d/-/g;
163
      $f =~ s/\@002e/./g;
165 164
      $f =~ s!.*/!!;
166 165
      @dbs[$#dbs+1]=$f };
167 166
  }

Formats disponibles : Unified diff