--- loncom/loncron 2019/03/18 00:37:37 1.118
+++ loncom/loncron 2020/01/11 22:37:19 1.121
@@ -2,7 +2,7 @@
# Housekeeping program, started by cron, loncontrol and loncron.pl
#
-# $Id: loncron,v 1.118 2019/03/18 00:37:37 raeburn Exp $
+# $Id: loncron,v 1.121 2020/01/11 22:37:19 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -567,6 +567,34 @@ sub clean_webDAV_sessionIDs {
}
}
+# ------------------------------------------------------------ clean out ltiIDs
+
+sub clean_ltiIDs {
+ my ($fh)=@_;
+ &log($fh,'
LTI Session Pointers
');
+ my $cleaned=0;
+ my $active=0;
+ if (-d $perlvar{'ltiIDsDir'}) {
+ while (my $fname=<$perlvar{'ltiIDsDir'}/*>) {
+ my ($dev,$ino,$mode,$nlink,
+ $uid,$gid,$rdev,$size,
+ $atime,$mtime,$ctime,
+ $blksize,$blocks)=stat($fname);
+ my $now=time;
+ my $since=$now-$mtime;
+ if ($since>$perlvar{'lonExpire'}) {
+ $cleaned++;
+ &log($fh,"Unlinking $fname
");
+ unlink("$fname");
+ } else {
+ $active++;
+ }
+ }
+ }
+ &log($fh,"Cleaned up ".$cleaned." old LTI session pointers.
");
+ &log($fh,"$active unexpired LTI session pointers
");
+}
+
# ----------------------------------------------------------- clean out sockets
sub clean_sockets {
my ($fh)=@_;
@@ -1068,7 +1096,7 @@ sub write_hostips {
if (keys(%prevhosts) && keys(%currhosts)) {
foreach my $key (keys(%prevhosts)) {
unless ($currhosts{$key} eq $prevhosts{$key}) {
- $ipchange{$key} = $prevhosts{$key}.'|'.$currhosts{$key};
+ $ipchange{$key} = $prevhosts{$key}.' | '.$currhosts{$key};
}
}
foreach my $key (keys(%currhosts)) {
@@ -1081,10 +1109,10 @@ sub write_hostips {
if (keys(%ipchange)) {
if (open(my $fh,'>>',$perlvar{'lonDaemons'}.'/logs/hostip.log')) {
print $fh "********************\n".localtime(time).' Changes --'."\n".
- "Hostname | Previous IP | New IP\n".
- "--------------------------------\n";
+ "| Hostname | Previous IP | New IP |\n".
+ " --------------------------------- \n";
foreach my $hostname (sort(keys(%ipchange))) {
- print $fh "$hostname | $ipchange{$hostname}\n";
+ print $fh "| $hostname | $ipchange{$hostname} |\n";
}
print $fh "\n*******************\n\n";
close($fh);
@@ -1099,10 +1127,10 @@ sub write_hostips {
"MIME-Version: 1.0\n\n".
"Host/IP changes\n".
" \n".
- "Hostname | Previous IP | New IP\n".
- "--------------------------------\n";
+ "| Hostname | Previous IP | New IP |\n".
+ " --------------------------------- \n";
foreach my $hostname (sort(keys(%ipchange))) {
- $chgmail .= "$hostname | $ipchange{$hostname}\n";
+ $chgmail .= "| $hostname | $ipchange{$hostname} |\n";
}
$chgmail .= "\n\n";
if (open(my $mailh, "|/usr/lib/sendmail -oi -t -odb")) {
@@ -1595,6 +1623,7 @@ sub main () {
&clean_lonIDs($fh);
&clean_balanceIDs($fh);
&clean_webDAV_sessionIDs($fh);
+ &clean_ltiIDs($fh);
&check_httpd_logs($fh);
&rotate_lonnet_logs($fh);
&rotate_other_logs($fh);