Compare commits

...

3 Commits

Author SHA1 Message Date
e4f62ea960 allineati a cr1000x 2021-12-19 16:43:34 +01:00
1a1183fa41 g301 unit 2021-11-13 23:00:45 +01:00
9645a35746 haproxy ip 2021-11-13 15:36:23 +01:00
3 changed files with 51 additions and 34 deletions

View File

@@ -17,7 +17,7 @@ my $username = 'ase_lar';
my $password = 'laravel';
my $db_lar = 'ase_lar';
my $db_sp = 'ase_lar';
my $server = 'localhost';
my $server = '80.211.107.201';
my $db_name = "ase_lar";
my $table = "RAWDATACOR";
my ( @CSVData, @sql );
@@ -28,8 +28,8 @@ my (
$tool, $toolbatt, $tooltemp, $tooltype, @channels,
@NewData, @ain, @din, @nodetype, $GDEventDate
);
my $matlab_proxy_ssh = "localhost"; #"80.211.107.201";
my $matlab_proxy_ssh_port = 22; #2222;
my $matlab_proxy_ssh = "80.211.107.201";
my $matlab_proxy_ssh_port = 2222;
my $matlab_cmd = "";
my $matlab_timestamp = "";
my $ftp_send = 1;
@@ -43,7 +43,7 @@ my $duedate = '';
my ( $unit_id, $unit, $unittype );
my ( $fileDate, $fileTime );
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_timeout = '1800';
my $email_addr =
@@ -55,7 +55,7 @@ my $D2W_fcheck = 0;
my $G301_fcheck = 0;
my $FtpToCustomerCmd = 'SendFtpElabData.pl';
my ( $scriptname, $scriptpath );
my $MatlabErrorFilename = "/tmp/";
my $MatlabErrorFilename = "/mnt/elab-error";
my @matlabOutputErrorArray;
my @errors;
my @warnings;
@@ -207,7 +207,7 @@ sub getNodesType {
inner join tools as t on t.id = n.tool_id
inner join units as u on u.id = t.unit_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
. '" and u.name = "'
. $unit
@@ -431,6 +431,13 @@ elsif ( $filecsvname =~ m/^D2W_ID\d\d\d\d_DT\d\d\d\d_\d*$/i ) {
$tool = $strings[2];
$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 ) {
my $filecsvname_clean =
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> ) {
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 );
if ( defined $first and ( $first ne '' ) ) {
$first =~ s/;+$//;
$first =~ tr /\-/\//;
if ( !defined $NodeData or ( $NodeData =~ m/^;+/ ) ) {
my @info = ( split( /[\/,\.]/, $first ) );
if ( defined $info[3] && $info[3] =~ m/^DT\d\d\d\d$/i ) { #G801
@@ -502,6 +512,12 @@ while ( my $line = <FILE> ) {
getNodesType();
$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 ) {
print getTimeStamp("log")
. " - 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" ) {
#$NodeData =~ s/Dis\./N\/A/g;

View File

@@ -72,7 +72,7 @@ sub trxelab {
my $fileelab;
if ( !defined($ftp_filename) or $ftp_filename eq "" ) {
if ( !defined $ftp_filename or $ftp_filename eq "" ) {
$fileelab =
'/var/lib/mysql-files/'
. $tool . '_'
@@ -123,8 +123,7 @@ sub trxelab {
print getTimeStamp("log") . " - pid $$ >> $unit - $tool ftp parm:\n";
while ( my ( $key, $value ) = each(%ftp_parms) ) {
print getTimeStamp("log")
. " - pid $$ >> - $key = $ftp_parms{$key}\n";
print getTimeStamp("log") . " - pid $$ >> - $key = $ftp_parms{$key}\n";
}
if ( !defined $duedate

View File

@@ -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 ) {
$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 ) {
my @strings = $filenamecsv =~ /(.{1,3})_(.{1,6})_(.{1,6}).*/;
$unittype = $strings[0];
$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 ) {
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];
$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
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/^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/^GFLOW_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
or $filename =~
m/^measurements_\d\d_\d\d_\d\d\d\d__\d\d_\d\d$/i )
or $filename =~ 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
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/^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/^GFLOW_ID\d\d\d\d_DT\d\d\d\d_\d*$/i
or $filename =~
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 ( $truser ne 'corra' )
@@ -187,27 +202,6 @@ while ( my $line = $tail->GetLine() ) {
}
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);
}
}
}
}
}