perl ÄÚµå : syslog Àü¼Û
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®
ÇöÀçÀ§Ä¡ : Code>JPerl>sendsyslog



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.

ºÐ»ê·Î±ë

´Ù¼öÀÇ ¼­¹ö¿¡¼­ ¹ß»ýÇÏ´Â ¾îÇø®ÄÉÀÌ¼Ç À̺¥Æ®¸¦ ÅëÇÕ°ü¸®ÇØ¾ß ÇÏ´Â Çʿ䰡 »ý°å´Ù. ¿©·¯°¡Áö ¹æ¹ýÀÌ ÀÖ°ÚÀ¸³ª ¿ª½Ã syslog°¡ °¡Àå ÆíÇÏÁö ½Í¾î¼­ syslog Àü¼Û ÇÁ·Î±×·¥À» ¸¸µé±â·Î Çß´Ù. ÀÌ syslog Àü¼Û ÇÁ·Î±×·¥Àº À̺¥Æ®¸¦ Àü¼ÛÇÒ ¸ðµç ¼­¹ö¿¡ ¼³Ä¡°¡ µÇ¾î¾ß ÇÑ´Ù. ±×·¡¼­ ¹èÆ÷°¡ ±î´Ù·Î¿ï ¼ö ÀÖ´Â C¾ð¾î ´ë½Å perlÀ» »ç¿ëÇϱâ·Î Çß´Ù.

syslog ¼³Á¤

ÀÏÁ¾ÀÇ ºÐ»êȯ°æÀ¸·Î ¿ø°ÝÁöÀÇ syslog ¼öÁý¼­¹ö·Î log¸¦ Àü´ÞÇØ¾ß Çϱ⠶§¹®¿¡, °¢°¢ÀÇ syslog Àü¼Û¼­¹ö¿¡ ´ëÇØ¼­ ´ÙÀ½°ú °°Àº ȯ°æÀ» ¸¸µé¾îÁà¾ß Çß´Ù. ±×Àü¿¡ log ½Ã½ºÅÛ È¯°æºÎÅÍ
  • syslog ¼öÁý¼­¹ö IP : 172.2.0.5
  • syslog Àü¼Û¼­¹ö IP : 172.2.0.10, ~ 172.2.0.15
syslog ¼öÁý¼­¹ö·Î º¸³¾ syslog´Â local5.*¿¡ ÇØ´çÇÏ´Â logµéÀÌ´Ù. À̸¦ À§Çؼ­ /etc/syslog.conf ¿¡ ´ÙÀ½ ÁÙÀ» Æ÷ÇÔ½Ã۰í syslog µ¥¸óÀ» Àç½ÃÀÛ Çß´Ù.
local5.*   @172.2.0.5 
 

syslog ¼öÁý¼­¹ö´Â syslog Àü¼Û¼­¹ö·Î ºÎÅÍ ¹ÞÀº ¸Þ½ÃÁö¸¦ /var/log/distevent.log ¿¡ ³²±âµµ·Ï ÀÛ¾÷Çß´Ù. ¸¶Âù°¡Áö·Î syslog.conf ¿¡ ¾Æ·¡ÀÇ ³»¿ëÀ» Ãß°¡Çϰí Àç½ÃÀÛ
local5.*   /var/log/distevent.log  
 

sesndsyslog

#!/usr/bin/perl 
 
use Getopt::Std; 
 
use Sys::Syslog; 
use Sys::Syslog qw(:DEFAULT setlogsock); 
use Sys::Syslog qw(:standard :macros); 
 
%level_map=( 
    1=>"info", 
    2=>"warning", 
    3=>"err", 
    4=>"crit" 
); 
 
%opts=(); 
getopts("hm:l:", \%opts); 
 
if ($opts{h}) 
{ 
    help(); 
    exit(0); 
} 
 
$message = $opts{m}; 
$level = $level_map{2}; 
if($opts{l}) 
{ 
    $level = $level_map{$opts{l}}; 
} 
 
syslog($level|local5", $message); 
 
sub help 
{ 
    print "Usage : sendsyslog -h -m event message -l event level [1~4]\n"; 
} 
 
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.