home *** CD-ROM | disk | FTP | other *** search
/ ftp.madoka.org / 2014.12.ftp.madoka.org.tar / ftp.madoka.org / pub / plum / 2.x / plum2_15_2.lzh / module / log / server.plm < prev   
Text File  |  1997-11-16  |  3KB  |  103 lines

  1. # <!-- -*- perl -*-
  2. # $Id: server.plm,v 2.1 1997/11/17 00:12:27 hasegawa Exp $
  3. # copyright (c)1997 pupu_j <hasegawa@agusa.nuie.nagoya-u.ac.jp>
  4.  
  5. package log_server;
  6.  
  7. $DIRECTORY = '.';
  8. $FILE = 'logserver';
  9. $HEADER = '%H:%M';
  10. $MODE = umask() ^ 0666;
  11.  
  12. $_ = 'log_server';
  13.  
  14. sub server_read {
  15.   local($serverno, $line) = @_;
  16.   &writelog($'userno[$serverno], $line);
  17.   return ($line);
  18. }
  19.  
  20. sub writelog {
  21.   local($userno, $line) = @_;
  22.   local($file, $directory, $name, $header, $mode);
  23.   $file = &'property($userno, 'file');
  24.   $file = $FILE unless defined($file);
  25.   $file = &'expand($file);
  26.   if ($file =~ /^\//) {
  27.     $name = $file;
  28.   } else {
  29.     $directory = &'property($userno, 'directory');
  30.     $directory = $DIRECTORY unless defined($directory);
  31.     $directory = &'expand($directory);
  32.     $directory .= '/' unless $directory =~ /\/$/;
  33.     $name = $directory . $file;
  34.   }
  35.   $name = &'date($name);
  36.   $header = &'property($userno, 'header');
  37.   $header = $HEADER unless defined($header);
  38.   $header = &'date($header);
  39.   if (!-w $name) {
  40.     if (!-f $name && open(FILE, ">$name")) {
  41.       close(FILE);
  42.     }
  43.     $mode = &'property($userno, 'mode');
  44.     if (defined($mode)) {
  45.       $mode = oct($mode) | 0200;
  46.     } else {
  47.       $mode = $MODE | 0200;
  48.     }
  49.     chmod($mode, $name) if -f $name;
  50.   }
  51.   if (open(FILE, ">>$name")) {
  52.     select((select(FILE), $| = 1)[0]);
  53.     print FILE $header, ' ', $line, "\n";
  54.     close(FILE);
  55.   }
  56. }
  57.  
  58. __END__
  59. --><!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
  60. <HTML><HEAD><TITLE> log/server.plm </TITLE></HEAD><BODY>
  61.  
  62. $B%*%s%i%$%s%I%-%e%a%s%H(B
  63.  
  64. <HR><H3> $BL>A0(B </H3>
  65.  
  66. log/server.plm - $B%5!<%P$+$i$NF~NO$r%m%0$H$7$FJ]B8$9$k(B
  67.  
  68.  
  69. <HR><H3> $B@bL@(B </H3>
  70.  
  71. $B%5!<%P$+$i$NF~NO$r$9$Y$F%m%0$KJ]B8$7$^$9!#(B
  72.  
  73.  
  74. <HR><H3> $B%W%m%Q%F%#(B </H3>
  75.  
  76. <DL>
  77. <DT> log.server.directory $B%G%#%l%/%H%j(B
  78. <DD>    $B%m%0$rJ]B8$9$k%G%#%l%/%H%j$r;XDj$7$^$9!#(B
  79.         $B%G%U%)%k%H$G$O%+%l%s%H%G%#%l%/%H%j$KJ]B8$7$^$9!#(B
  80. <DT> log.server.file $B%U%!%$%kL>(B
  81. <DD>    $B%m%0$N%U%!%$%kL>$r;XDj$7$^$9!#(B
  82.         %$B$G$O$8$^$kJ8;z$,$"$k$H!"BP1~$9$kF|IU$KJQ49$5$l$^$9!#(B
  83.         $B%G%U%)%k%H$G$O!V(Blogserver$B!W$H$$$&%U%!%$%k$KJ]B8$7$^$9!#(B
  84. <DT> log.server.header $B$X%C%@(B
  85. <DD>    $B%m%0$K=PNO$9$k;~9o$N%U%)!<%^%C%H$r;XDj$7$^$9!#(B
  86.         %$B$G$O$8$^$kJ8;z$,$"$k$H!"BP1~$9$k;~4V$KJQ49$5$l$^$9!#(B
  87. <DT> log.server.mode $B%U%!%$%k%b!<%I(B
  88. <DD>    $B%m%0$N%U%!%$%k%b!<%I$r;XDj$7$^$9!#(B
  89. </DL>
  90.  
  91.  
  92. <HR><H3> $B@_DjNc(B </H3>
  93.  
  94. <PRE>
  95. + log/server.plm
  96. log.server.file: server%Y%m%d
  97. </PRE>
  98.  
  99. $B%5!<%P$+$i$NF~NO$r!V(Bserver%m%d$B!W$KJ]B8$7$^$9!#(B
  100. $B!V(B%Y$B!W!"!V(B%m$B!W!"!V(B%d$B!W$O$=$l$>$l8=:_$NG/!"7n!"F|$KJQ49$5$l$^$9!#(B
  101.  
  102. </BODY></HTML>
  103.