Annotation of wpscripts/ztransfer/log.pm, Revision 1.1
1.1 ! yason 1: #!/usr/bin/perl
! 2: # $Id: log.pm,v 1.1.1.5 2006/05/17 12:44:35 init Exp $
! 3: package log;
! 4:
! 5: my $DEBUG = 1;
! 6:
! 7: my $MAIN_LOG = "/var/log/ztransfer/main.log";
! 8: my $ERROR_LOG = "/var/log/ztransfer/error.log";
! 9: my $ZAYAVKI_LOG = "/var/log/ztransfer/zayavki.log";
! 10: my $JPEGS_LOG = "/var/log/ztransfer/jpegs.log";
! 11: my $PROBAS_LOG = "/var/log/ztransfer/probas.log";
! 12: my $TPPS_LOG = "/var/log/ztransfer/tpps.log";
! 13: my $CRITICAL_LOG = "/var/log/ztransfer/critical.log";
! 14: my $FILE_LIST = "/var/log/ztransfer/FILES";
! 15: my $DIFFS_FILE = "/var/log/ztransfer/size_diffs.log";
! 16: my $CURRENT_FILE = "/var/log/ztransfer/FILE";
! 17: my $CURRENT_ACTION = "/var/log/ztransfer/ACTION";
! 18:
! 19:
! 20: # functions
! 21: sub error($)
! 22: {
! 23: open(FILE, ">>$ERROR_LOG") or return();
! 24: $_ = shift();
! 25: print FILE scalar( localtime() ) . "| $_\n";
! 26: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 27: close(FILE);
! 28: }
! 29:
! 30:
! 31: sub main($)
! 32: {
! 33: open(FILE, ">>$MAIN_LOG") or return();
! 34: $_ = shift();
! 35: print FILE scalar( localtime() ) . "| $_\n";
! 36: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 37: close(FILE);
! 38: }
! 39:
! 40:
! 41: sub zayavki($)
! 42: {
! 43: open(FILE, ">>$ZAYAVKI_LOG") or return();
! 44: $_ = shift();
! 45: print FILE scalar( localtime() ) . "| $_\n";
! 46: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 47: close(FILE);
! 48: }
! 49:
! 50:
! 51: sub jpegs($)
! 52: {
! 53: open(FILE, ">>$JPEGS_LOG") or return();
! 54: $_ = shift();
! 55: print FILE scalar( localtime() ) . "| $_\n";
! 56: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 57: close(FILE);
! 58: }
! 59:
! 60: sub tpps($)
! 61: {
! 62: open(FILE, ">>$TPPS_LOG") or return();
! 63: $_ = shift();
! 64: print FILE scalar( localtime() ) . "| $_\n";
! 65: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 66: close(FILE);
! 67: }
! 68:
! 69:
! 70: sub probas($)
! 71: {
! 72: open(FILE, ">>$PROBAS_LOG") or return();
! 73: $_ = shift();
! 74: print FILE scalar( localtime() ) . "| $_\n";
! 75: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 76: close(FILE);
! 77: }
! 78:
! 79:
! 80: sub critical($)
! 81: {
! 82: if( open(FILE, ">>$CRITICAL_LOG") )
! 83: {
! 84: $_ = shift();
! 85: print FILE scalar( localtime() ) . "| $_\n";
! 86: close(FILE);
! 87: print STDOUT scalar( localtime() ) . "| $_\n" if($DEBUG);
! 88: }
! 89: exit(-1); # exit program with -1 on *critical* error
! 90: }
! 91:
! 92:
! 93: sub filelist($)
! 94: {
! 95: my $files_ref = shift;
! 96: my @files = @$files_ref;
! 97:
! 98: open(FILE, ">$FILE_LIST") or return();
! 99: foreach $_ (@files)
! 100: {
! 101: print FILE "$_\n";
! 102: }
! 103: close(FILE);
! 104: }
! 105:
! 106:
! 107: sub diff($$$)
! 108: {
! 109: my $path = shift;
! 110: my $size_orig = shift;
! 111: my $size_arc = shift;
! 112: my $diff = $size_orig / $size_arc;
! 113:
! 114: # in human-readable format
! 115: # we don't suppose gigabyte archives
! 116: $size_orig = ($size_orig > 1048576 ? int($size_orig / 1024 / 1024) . " MB" : int($size_orig / 1024) . " KB");
! 117: $size_arc = ($size_arc > 1048576 ? int($size_arc / 1024 / 1024) . " MB" : int($size_arc / 1024) . " KB");
! 118:
! 119: open(FILE, ">>$DIFFS_FILE") or return();
! 120: print FILE scalar( localtime() ) . "| $path - original=$size_orig, compressed=$size_arc [diff=$diff]\n";
! 121: print STDOUT scalar( localtime() ) . "| $path - original=$size_orig, compressed=$size_arc [diff=$diff]\n" if($DEBUG);
! 122: close(FILE);
! 123:
! 124: }
! 125:
! 126:
! 127: sub file_work_on($$)
! 128: {
! 129: my $file = shift;
! 130: my $action = shift;
! 131:
! 132: open(FILE, ">$CURRENT_FILE") or return();
! 133: print FILE $file;
! 134: close(FILE);
! 135:
! 136: open(ACT, ">$CURRENT_ACTION") or return();
! 137: print ACT $action;
! 138: close(ACT);
! 139:
! 140: }
! 141:
! 142:
! 143: sub file_work_done()
! 144: {
! 145: # consider this stuff okay, as usually ;-)
! 146: # but in future maybe not to call anything external?
! 147: system("/bin/rm $CURRENT_FILE") if(-e $CURRENT_FILE);
! 148: system("/bin/rm $CURRENT_ACTION") if(-e $CURRENT_ACTION);
! 149: }
! 150:
! 151:
! 152: sub stdout($)
! 153: {
! 154: my $message = shift;
! 155: print "STDOUT: $message\n";
! 156: }
! 157:
! 158:
! 159: return(1);
CVSweb