mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-09 18:45:54 +02:00
graphs: add NVMe disks
Add NVMe disks to media and hardwaregraphs. Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
This commit is contained in:
@@ -3,4 +3,7 @@ etc/issue
|
||||
etc/ssh/sshd_config
|
||||
etc/sysctl.conf
|
||||
srv/web/ipfire/cgi-bin/credits.cgi
|
||||
srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
|
||||
srv/web/ipfire/cgi-bin/media.cgi
|
||||
usr/local/bin/makegraphs
|
||||
var/ipfire/langs
|
||||
|
||||
@@ -71,6 +71,10 @@ if ( $querry[0] =~ "hwtemp"){
|
||||
print "Content-type: image/png\n\n";
|
||||
binmode(STDOUT);
|
||||
&Graphs::updatehddgraph($querry[0],$querry[1]);
|
||||
}elsif ( $querry[0] =~ "nvme?" ){
|
||||
print "Content-type: image/png\n\n";
|
||||
binmode(STDOUT);
|
||||
&Graphs::updatehddgraph($querry[0],$querry[1]);
|
||||
}else{
|
||||
&Header::showhttpheaders();
|
||||
&Header::openpage($Lang::tr{'hardware graphs'}, 1, '');
|
||||
@@ -93,7 +97,7 @@ if ( $querry[0] =~ "hwtemp"){
|
||||
&General::writehash("${General::swroot}/sensors/settings", \%sensorsettings);
|
||||
}
|
||||
|
||||
my @disks = `ls -1 /sys/block | grep -E '^sd' | sort | uniq`;
|
||||
my @disks = `ls -1 /sys/block | grep -E '^sd|^nvme' | sort | uniq`;
|
||||
|
||||
foreach (@disks){
|
||||
my $disk = $_;
|
||||
|
||||
@@ -45,9 +45,9 @@ my @querry = split(/\?/,$ENV{'QUERY_STRING'});
|
||||
$querry[0] = '' unless defined $querry[0];
|
||||
$querry[1] = 'hour' unless defined $querry[1];
|
||||
|
||||
my @devices = `ls -1 /sys/block | grep -E '^sd|^mmcblk|^xvd|^vd|^md' | sort | uniq`;
|
||||
my @devices = `ls -1 /sys/block | grep -E '^sd|^mmcblk|^nvme|^xvd|^vd|^md' | sort | uniq`;
|
||||
|
||||
if ( $querry[0] =~ "sd?" || $querry[0] =~ "mmcblk?" || $querry[0] =~ "xvd??" || $querry[0] =~ "vd?" || $querry[0] =~ "md*" ){
|
||||
if ( $querry[0] =~ "sd?" || $querry[0] =~ "mmcblk?" || $querry[0] =~ "nvme?n?" || $querry[0] =~ "xvd??" || $querry[0] =~ "vd?" || $querry[0] =~ "md*" ){
|
||||
print "Content-type: image/png\n\n";
|
||||
binmode(STDOUT);
|
||||
|
||||
|
||||
@@ -85,10 +85,17 @@ sub updatehdddata{
|
||||
my $smart_output = '';
|
||||
system("$path_smartctl -iHA /dev/$disk > /var/run/smartctl_out_hddtemp-$disk");
|
||||
if ( -e "/var/run/smartctl_out_hddtemp-".$array[$#array] ){
|
||||
my $hdd_output = `cat /var/run/smartctl_out_hddtemp-$array[$#array] | grep Temperature_`;
|
||||
my @t = split(/\s+/,$hdd_output);
|
||||
$temp = $t[9];
|
||||
}else{$temp = 0;}
|
||||
my $hdd_nvme = `grep "NVMe Log" /var/run/smartctl_out_hddtemp-$array[$#array]`;
|
||||
if ( $hdd_nvme !~/NVMe Log/ ) {
|
||||
my $hdd_output = `cat /var/run/smartctl_out_hddtemp-$array[$#array] | grep Temperature_`;
|
||||
my @t = split(/\s+/,$hdd_output);
|
||||
$temp = $t[9];
|
||||
} else {
|
||||
my $hdd_output = `cat /var/run/smartctl_out_hddtemp-$array[$#array] | grep Temperature:`;
|
||||
my @t = split(/\s+/,$hdd_output);
|
||||
$temp = $t[1];
|
||||
}
|
||||
} else { $temp = 0; }
|
||||
print "Temperature for ".$array[$#array]."->".$temp."<-\n";
|
||||
# Nur ins RDD wenn nicht 0 (sonst klappt die min Anzeige nicht)
|
||||
if ($temp){
|
||||
@@ -102,7 +109,7 @@ sub updatehdddata{
|
||||
## Update vnstat
|
||||
system ('/usr/bin/vnstat -u');
|
||||
|
||||
my @disks = `ls -1 /sys/block | grep -E '^sd|^mmcblk|^xvd|^vd|^md' | sort | uniq`;
|
||||
my @disks = `ls -1 /sys/block | grep -E '^sd|^nvme|^mmcblk|^xvd|^vd|^md' | sort | uniq`;
|
||||
system("unlink /var/run/hddstatus 2>/dev/null && touch /var/run/hddstatus");
|
||||
foreach (@disks){
|
||||
my $disk = $_;
|
||||
|
||||
Reference in New Issue
Block a user