gestione D2W

This commit is contained in:
2020-11-01 18:35:54 +01:00
parent f693044c47
commit b76acb5893
2 changed files with 40 additions and 17 deletions

View File

@@ -49,6 +49,7 @@ my $email_addr =
'andrea.carri@aseltd.eu,edoardo.cavalca@aseltd.eu,alessandro.battilani@gmail.com,alessandro.valletta@aseltd.eu'; 'andrea.carri@aseltd.eu,edoardo.cavalca@aseltd.eu,alessandro.battilani@gmail.com,alessandro.valletta@aseltd.eu';
my ( $email_msg, $email_obj ); my ( $email_msg, $email_obj );
my $G201_fcheck = 0; my $G201_fcheck = 0;
my $D2W_fcheck = 0;
sub getTimeStamp sub getTimeStamp
{ # parm [ts] => timestamp for filename; log => timestamp for log { # parm [ts] => timestamp for filename; log => timestamp for log
@@ -504,7 +505,7 @@ elsif ( $filecsvname =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*_\d*$/i ) {
$fileTime = $strings[6] . ":" . $strings[7] . ":" . $strings[8]; $fileTime = $strings[6] . ":" . $strings[7] . ":" . $strings[8];
$tooltype = 'MUX'; $tooltype = 'MUX';
} }
elsif ( $filecsvname =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i ) { elsif ( $filecsvname =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d_\d*$/i ) {
my @strings = $filecsvname =~ /(.{1,3})_(.{1,6})_(.{1,6}).*/; my @strings = $filecsvname =~ /(.{1,3})_(.{1,6})_(.{1,6}).*/;
$unittype = $strings[0]; $unittype = $strings[0];
$unit = $strings[1]; $unit = $strings[1];
@@ -550,8 +551,14 @@ while ( my $line = <FILE> ) {
getNodesType(); getNodesType();
$G201_fcheck = 1; $G201_fcheck = 1;
} }
if ( $unittype eq 'D2W' and $D2W_fcheck eq 0 ) {
print getTimeStamp("log")
. " - pid $$ >> Found $tooltype tool name: $tool\n";
getNodesType();
$D2W_fcheck = 1;
}
if ( $tooltype eq "MUX" or $tooltype eq "MUX" ) { if ( $tooltype eq "MUX" or $tooltype eq "D2W" ) {
#$NodeData =~ s/Dis\./N\/A/g; #$NodeData =~ s/Dis\./N\/A/g;
@NewData = grep /\S/, split( /\||;/, $NodeData ); @NewData = grep /\S/, split( /\||;/, $NodeData );

View File

@@ -27,18 +27,26 @@ sub getTimeStamp
sub getUnitName { # parm => file received ($trfile) sub getUnitName { # parm => file received ($trfile)
my ($filename) = @_; my ($filename) = @_;
my ( $fileDate, $fileTime ); my ( $fileDate, $fileTime );
my ( $unittype, $unit ); my ( $unittype, $unit );
my ( $filenamecsv, $path, $suffix ) = fileparse( $filename, qr/\.[^.]*/ ); my ( $filenamecsv, $path, $suffix ) = fileparse( $filename, qr/\.[^.]*/ );
if ( $filenamecsv =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*$/i ) { # GD201 if ( $filenamecsv =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*$/i ) { # G201
my @strings = $filenamecsv =~ /(.{1,4})_(.{1,6})_(.{1,6})_(.{1,4})(.{1,2})(.{1,2})(.{1,2})(.{1,2})(.{1,2}).*/; my @strings = $filenamecsv =~
/(.{1,4})_(.{1,6})_(.{1,6})_(.{1,4})(.{1,2})(.{1,2})(.{1,2})(.{1,2})(.{1,2}).*/;
$unittype = $strings[0]; $unittype = $strings[0];
$unit = $strings[1]; $unit = $strings[1];
$fileDate = $strings[3] . "/" . $strings[4] . "/" . $strings[5];; $fileDate = $strings[3] . "/" . $strings[4] . "/" . $strings[5];
$fileTime = $strings[6] . ":" . $strings[7] . ":" . $strings[8]; $fileTime = $strings[6] . ":" . $strings[7] . ":" . $strings[8];
} else { }
elsif ( $filenamecsv =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i ) {
my @strings = $filenamecsv =~ /(.{1,3})_(.{1,6})_(.{1,6}).*/;
$unittype = $strings[0];
$unit = $strings[1];
}
else {
open FILE, $filename open FILE, $filename
or warn getTimeStamp("log") . " >> Error: opening input file $filename\n"; or warn getTimeStamp("log")
. " >> Error: opening input file $filename\n";
( $fileDate, $fileTime ) = split( /\s/, <FILE> ); ( $fileDate, $fileTime ) = split( /\s/, <FILE> );
( $unittype, $unit ) = split( /\s/, uc <FILE> ); ( $unittype, $unit ) = split( /\s/, uc <FILE> );
$unit =~ s/;+$//; $unit =~ s/;+$//;
@@ -72,10 +80,12 @@ while ( my $line = $tail->GetLine() ) {
$path = "/home/" . $truser . "/"; $path = "/home/" . $truser . "/";
$trfile = "/home/" . $truser . $trfile; $trfile = "/home/" . $truser . $trfile;
if ( ( ( uc $suffix ) eq ( uc $ext ) ) if (
and ( ( uc $suffix ) eq ( uc $ext ) )
( $filename =~ m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d*|GD\d*)$/i and ( $filename =~ m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d*|GD\d*)$/i
or $filename =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*$/i) ) or $filename =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
or $filename =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i )
)
{ {
my $unit = getUnitName($trfile); my $unit = getUnitName($trfile);
print getTimeStamp("log") . " >> Unit $unit - Filename $trfile\n"; print getTimeStamp("log") . " >> Unit $unit - Filename $trfile\n";
@@ -106,10 +116,16 @@ while ( my $line = $tail->GetLine() ) {
chmod 0664, $dest; chmod 0664, $dest;
my @fname = ($dest); my @fname = ($dest);
chown $uid, $gid, @fname; chown $uid, $gid, @fname;
if ( ($filename =~ m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d.*|GD\d*)$/i if (
or $filename =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*$/i) (
$filename =~
m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d.*|GD\d*)$/i
or $filename =~ m/^G201_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
or $filename =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i
)
and ( $unit ne 'ID9999' ) and ( $unit ne 'ID9999' )
and ( $truser ne 'corra' ) ) and ( $truser ne 'corra' )
)
{ {
print getTimeStamp("log") print getTimeStamp("log")
. " >> Sender user $truser: load data into DB.\n"; . " >> Sender user $truser: load data into DB.\n";