Compare commits
3 Commits
master
...
e4f62ea960
| Author | SHA1 | Date | |
|---|---|---|---|
| e4f62ea960 | |||
| 1a1183fa41 | |||
| 9645a35746 |
@@ -17,7 +17,7 @@ my $username = 'ase_lar';
|
|||||||
my $password = 'laravel';
|
my $password = 'laravel';
|
||||||
my $db_lar = 'ase_lar';
|
my $db_lar = 'ase_lar';
|
||||||
my $db_sp = 'ase_lar';
|
my $db_sp = 'ase_lar';
|
||||||
my $server = 'localhost';
|
my $server = '80.211.107.201';
|
||||||
my $db_name = "ase_lar";
|
my $db_name = "ase_lar";
|
||||||
my $table = "RAWDATACOR";
|
my $table = "RAWDATACOR";
|
||||||
my ( @CSVData, @sql );
|
my ( @CSVData, @sql );
|
||||||
@@ -28,8 +28,8 @@ my (
|
|||||||
$tool, $toolbatt, $tooltemp, $tooltype, @channels,
|
$tool, $toolbatt, $tooltemp, $tooltype, @channels,
|
||||||
@NewData, @ain, @din, @nodetype, $GDEventDate
|
@NewData, @ain, @din, @nodetype, $GDEventDate
|
||||||
);
|
);
|
||||||
my $matlab_proxy_ssh = "localhost"; #"80.211.107.201";
|
my $matlab_proxy_ssh = "80.211.107.201";
|
||||||
my $matlab_proxy_ssh_port = 22; #2222;
|
my $matlab_proxy_ssh_port = 2222;
|
||||||
my $matlab_cmd = "";
|
my $matlab_cmd = "";
|
||||||
my $matlab_timestamp = "";
|
my $matlab_timestamp = "";
|
||||||
my $ftp_send = 1;
|
my $ftp_send = 1;
|
||||||
@@ -43,7 +43,7 @@ my $duedate = '';
|
|||||||
my ( $unit_id, $unit, $unittype );
|
my ( $unit_id, $unit, $unittype );
|
||||||
my ( $fileDate, $fileTime );
|
my ( $fileDate, $fileTime );
|
||||||
my $matlab_rt = "/usr/local/MATLAB/MATLAB_Runtime/v93";
|
my $matlab_rt = "/usr/local/MATLAB/MATLAB_Runtime/v93";
|
||||||
my $matlab_func_dir = "/usr/local/matlab_func/";
|
my $matlab_func_dir = "/mnt/elab-storage";
|
||||||
my $matlab_error = '';
|
my $matlab_error = '';
|
||||||
my $matlab_timeout = '1800';
|
my $matlab_timeout = '1800';
|
||||||
my $email_addr =
|
my $email_addr =
|
||||||
@@ -55,7 +55,7 @@ my $D2W_fcheck = 0;
|
|||||||
my $G301_fcheck = 0;
|
my $G301_fcheck = 0;
|
||||||
my $FtpToCustomerCmd = 'SendFtpElabData.pl';
|
my $FtpToCustomerCmd = 'SendFtpElabData.pl';
|
||||||
my ( $scriptname, $scriptpath );
|
my ( $scriptname, $scriptpath );
|
||||||
my $MatlabErrorFilename = "/tmp/";
|
my $MatlabErrorFilename = "/mnt/elab-error";
|
||||||
my @matlabOutputErrorArray;
|
my @matlabOutputErrorArray;
|
||||||
my @errors;
|
my @errors;
|
||||||
my @warnings;
|
my @warnings;
|
||||||
@@ -207,7 +207,7 @@ sub getNodesType {
|
|||||||
inner join tools as t on t.id = n.tool_id
|
inner join tools as t on t.id = n.tool_id
|
||||||
inner join units as u on u.id = t.unit_id
|
inner join units as u on u.id = t.unit_id
|
||||||
inner join nodetypes as y on n.nodetype_id = y.id
|
inner join nodetypes as y on n.nodetype_id = y.id
|
||||||
where t.name = "'
|
where y.type not in (\'Anchor Link\', \'None\') and t.name = "'
|
||||||
. $tool
|
. $tool
|
||||||
. '" and u.name = "'
|
. '" and u.name = "'
|
||||||
. $unit
|
. $unit
|
||||||
@@ -431,6 +431,13 @@ elsif ( $filecsvname =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d_\d*$/i ) {
|
|||||||
$tool = $strings[2];
|
$tool = $strings[2];
|
||||||
$tooltype = 'D2W';
|
$tooltype = 'D2W';
|
||||||
}
|
}
|
||||||
|
elsif ( $filecsvname =~ m/^CR1000X_ID\d\d\d\d_DT\d\d\d\d_\d*$/i ) {
|
||||||
|
my @strings = $filecsvname =~ /(.{1,7})_(.{1,6})_(.{1,6}).*/;
|
||||||
|
$unittype = $strings[0];
|
||||||
|
$unit = $strings[1];
|
||||||
|
$tool = $strings[2];
|
||||||
|
$tooltype = 'CR1000X';
|
||||||
|
}
|
||||||
elsif ( $filecsvname =~ m/^(\d*_|)(G301_ID\d\d\d\d_DT\d\d\d\d_\d*)$/i ) {
|
elsif ( $filecsvname =~ m/^(\d*_|)(G301_ID\d\d\d\d_DT\d\d\d\d_\d*)$/i ) {
|
||||||
my $filecsvname_clean =
|
my $filecsvname_clean =
|
||||||
substr( $filecsvname, index( $filecsvname, "G301" ) );
|
substr( $filecsvname, index( $filecsvname, "G301" ) );
|
||||||
@@ -443,9 +450,12 @@ elsif ( $filecsvname =~ m/^(\d*_|)(G301_ID\d\d\d\d_DT\d\d\d\d_\d*)$/i ) {
|
|||||||
|
|
||||||
while ( my $line = <FILE> ) {
|
while ( my $line = <FILE> ) {
|
||||||
if ( $line =~ m/\A [[:ascii:]]* \Z/xms ) {
|
if ( $line =~ m/\A [[:ascii:]]* \Z/xms ) {
|
||||||
|
$line =~ tr /\,/\;/ if ( $line =~ m/^\"\d\d\d\d.*/i ); #CR1000X
|
||||||
|
$line =~ s/\"//g;
|
||||||
my ( $first, $NodeData ) = split( /;/, $line, 2 );
|
my ( $first, $NodeData ) = split( /;/, $line, 2 );
|
||||||
if ( defined $first and ( $first ne '' ) ) {
|
if ( defined $first and ( $first ne '' ) ) {
|
||||||
$first =~ s/;+$//;
|
$first =~ s/;+$//;
|
||||||
|
$first =~ tr /\-/\//;
|
||||||
if ( !defined $NodeData or ( $NodeData =~ m/^;+/ ) ) {
|
if ( !defined $NodeData or ( $NodeData =~ m/^;+/ ) ) {
|
||||||
my @info = ( split( /[\/,\.]/, $first ) );
|
my @info = ( split( /[\/,\.]/, $first ) );
|
||||||
if ( defined $info[3] && $info[3] =~ m/^DT\d\d\d\d$/i ) { #G801
|
if ( defined $info[3] && $info[3] =~ m/^DT\d\d\d\d$/i ) { #G801
|
||||||
@@ -502,6 +512,12 @@ while ( my $line = <FILE> ) {
|
|||||||
getNodesType();
|
getNodesType();
|
||||||
$D2W_fcheck = 1;
|
$D2W_fcheck = 1;
|
||||||
}
|
}
|
||||||
|
if ( $unittype eq 'CR1000X' and $CR1000X_fcheck eq 0 ) {
|
||||||
|
print getTimeStamp("log")
|
||||||
|
. " - pid $$ >> Found $tooltype tool name: $tool\n";
|
||||||
|
getNodesType();
|
||||||
|
$CR1000X_fcheck = 1;
|
||||||
|
}
|
||||||
if ( $unittype eq 'G301' and $G301_fcheck eq 0 ) {
|
if ( $unittype eq 'G301' and $G301_fcheck eq 0 ) {
|
||||||
print getTimeStamp("log")
|
print getTimeStamp("log")
|
||||||
. " - pid $$ >> Found $tooltype tool name: $tool\n";
|
. " - pid $$ >> Found $tooltype tool name: $tool\n";
|
||||||
@@ -527,6 +543,14 @@ while ( my $line = <FILE> ) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
elsif ( $tooltype eq "CR1000X" )
|
||||||
|
{ # può essere tolto per attivarlo
|
||||||
|
@CSVData = split( /\|/, $NodeData );
|
||||||
|
print getTimeStamp("log")
|
||||||
|
. " - pid $$ >> TEST CR1000X Execution ended.\n";
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
elsif ( $tooltype eq "MUSA" ) {
|
elsif ( $tooltype eq "MUSA" ) {
|
||||||
|
|
||||||
#$NodeData =~ s/Dis\./N\/A/g;
|
#$NodeData =~ s/Dis\./N\/A/g;
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ sub trxelab {
|
|||||||
|
|
||||||
my $fileelab;
|
my $fileelab;
|
||||||
|
|
||||||
if ( !defined($ftp_filename) or $ftp_filename eq "" ) {
|
if ( !defined $ftp_filename or $ftp_filename eq "" ) {
|
||||||
$fileelab =
|
$fileelab =
|
||||||
'/var/lib/mysql-files/'
|
'/var/lib/mysql-files/'
|
||||||
. $tool . '_'
|
. $tool . '_'
|
||||||
@@ -123,8 +123,7 @@ sub trxelab {
|
|||||||
print getTimeStamp("log") . " - pid $$ >> $unit - $tool ftp parm:\n";
|
print getTimeStamp("log") . " - pid $$ >> $unit - $tool ftp parm:\n";
|
||||||
|
|
||||||
while ( my ( $key, $value ) = each(%ftp_parms) ) {
|
while ( my ( $key, $value ) = each(%ftp_parms) ) {
|
||||||
print getTimeStamp("log")
|
print getTimeStamp("log") . " - pid $$ >> - $key = $ftp_parms{$key}\n";
|
||||||
. " - pid $$ >> - $key = $ftp_parms{$key}\n";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !defined $duedate
|
if ( !defined $duedate
|
||||||
@@ -195,4 +194,4 @@ if ( $tool eq 'DT0076' ) {
|
|||||||
trxelab();
|
trxelab();
|
||||||
|
|
||||||
print getTimeStamp("log") . " - pid $$ >> Execution ended.\n";
|
print getTimeStamp("log") . " - pid $$ >> Execution ended.\n";
|
||||||
exit;
|
exit;
|
||||||
|
|||||||
@@ -54,13 +54,24 @@ sub getUnitName { # parm => file received ($trfile)
|
|||||||
elsif ( $filenamecsv =~ m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i ) {
|
elsif ( $filenamecsv =~ m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i ) {
|
||||||
$unittype = "NESA";
|
$unittype = "NESA";
|
||||||
}
|
}
|
||||||
|
elsif ( $filenamecsv =~ m/^\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d$/i )
|
||||||
|
{ # nesa file con serial number centralina
|
||||||
|
$unittype = "NESA";
|
||||||
|
}
|
||||||
elsif ( $filenamecsv =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i ) {
|
elsif ( $filenamecsv =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i ) {
|
||||||
my @strings = $filenamecsv =~ /(.{1,3})_(.{1,6})_(.{1,6}).*/;
|
my @strings = $filenamecsv =~ /(.{1,3})_(.{1,6})_(.{1,6}).*/;
|
||||||
$unittype = $strings[0];
|
$unittype = $strings[0];
|
||||||
$unit = $strings[1];
|
$unit = $strings[1];
|
||||||
}
|
}
|
||||||
|
elsif ( $filenamecsv =~ m/^CR1000X_ID\d\d\d\d_DT\d\d\d\d$/i ) {
|
||||||
|
my @strings = $filenamecsv =~ /(.{1,7})_(.{1,6})_(.{1,6}).*/;
|
||||||
|
$unittype = $strings[0];
|
||||||
|
$unit = $strings[1];
|
||||||
|
}
|
||||||
elsif ( $filenamecsv =~ m/^(\d*_|)G301_ID\d\d\d\d_DT\d\d\d\d$/i ) {
|
elsif ( $filenamecsv =~ m/^(\d*_|)G301_ID\d\d\d\d_DT\d\d\d\d$/i ) {
|
||||||
my @strings = $filenamecsv =~ /(.{1,4})_(.{1,6})_(.{1,6}).*/;
|
my $filecsvname_clean =
|
||||||
|
substr( $filenamecsv, index( $filenamecsv, "G301" ) );
|
||||||
|
my @strings = $filecsvname_clean =~ /(.{1,4})_(.{1,6})_(.{1,6}).*/;
|
||||||
$unittype = $strings[0];
|
$unittype = $strings[0];
|
||||||
$unit = $strings[1];
|
$unit = $strings[1];
|
||||||
}
|
}
|
||||||
@@ -107,10 +118,11 @@ while ( my $line = $tail->GetLine() ) {
|
|||||||
m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d\d\d\d|GD\d\d\d\d)$/i
|
m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d\d\d\d|GD\d\d\d\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
|
or $filename =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i
|
||||||
|
or $filename =~ m/^CR1000X_ID\d\d\d\d_DT\d\d\d\d$/i
|
||||||
or $filename =~ m/^(\d*_|)G301_ID\d\d\d\d_DT\d\d\d\d$/i
|
or $filename =~ m/^(\d*_|)G301_ID\d\d\d\d_DT\d\d\d\d$/i
|
||||||
or $filename =~ m/^GFLOW_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
|
or $filename =~ m/^GFLOW_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
|
||||||
or $filename =~
|
or $filename =~ m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i
|
||||||
m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i )
|
or $filename =~ m/^\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d$/i )
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -149,10 +161,13 @@ while ( my $line = $tail->GetLine() ) {
|
|||||||
m/^(\d\d_\d\d\d\d_|)(DT\d\d\d\d|LOC\d.*|GD\d*)$/i
|
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
|
or $filename =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d$/i
|
||||||
|
or $filename =~ m/^CR1000X_ID\d\d\d\d_DT\d\d\d\d$/i
|
||||||
or $filename =~ m/^(\d*_|)G301_ID\d\d\d\d_DT\d\d\d\d$/i
|
or $filename =~ m/^(\d*_|)G301_ID\d\d\d\d_DT\d\d\d\d$/i
|
||||||
or $filename =~ m/^GFLOW_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
|
or $filename =~ m/^GFLOW_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
|
||||||
or $filename =~
|
or $filename =~
|
||||||
m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i
|
m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i
|
||||||
|
or $filename =~
|
||||||
|
m/^\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d$/i
|
||||||
)
|
)
|
||||||
and ( $unit ne 'ID9999' )
|
and ( $unit ne 'ID9999' )
|
||||||
and ( $truser ne 'corra' )
|
and ( $truser ne 'corra' )
|
||||||
@@ -187,27 +202,6 @@ while ( my $line = $tail->GetLine() ) {
|
|||||||
}
|
}
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
if ( ( $truser ne 'asega' ) and ( $truser ne 'corra' ) ) {
|
|
||||||
print getTimeStamp("log")
|
|
||||||
. " >> Sender user $truser: duplicate as asega user -> load data into DB.\n";
|
|
||||||
my $realtruser = $truser;
|
|
||||||
$truser = "asega";
|
|
||||||
$outpath =~ s/$realtruser/$truser/;
|
|
||||||
my ( $login, $pass, $uid, $gid ) = getpwnam($truser)
|
|
||||||
or warn getTimeStamp("log")
|
|
||||||
. " >> $truser not in passwd file.\n";
|
|
||||||
unless ( fork() ) {
|
|
||||||
setgid($gid);
|
|
||||||
setuid($uid);
|
|
||||||
$ENV{"HOME"} = 'home/' . $truser;
|
|
||||||
exec( $scriptpath
|
|
||||||
. "LoadCSVData.pl -f \"$dest\" -s \"$outpath/SQL/$filename"
|
|
||||||
. "_"
|
|
||||||
. "$timestamp.sql\" -d $truser >> /home/$truser/log/loadcsvdata.log 2>&1"
|
|
||||||
);
|
|
||||||
exit(0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user