syslog-ng+loganalyzer log system install guide

  
  
  
  
  1. 版本V1.0 
  2. 时间2012-12-29 
  3. 版权GPL 
  4. 作者itnihao 
  5. 邮箱 [email protected] 
  6. 博客 http://itnihao.blog.51cto.com 
  7. 如需重新发行,请注明以上信息,谢谢合作 
  8.  
  9.  
  10. 一,创建Syslog数据库 
  11. mysql> CREATE DATABASE Syslog character set utf8; 
  12. mysql> USE Syslog; 
  13. mysql> CREATE TABLE SystemEvents 
  14.         ID int unsigned not null auto_increment primary key, 
  15.         CustomerID bigint, 
  16.         ReceivedAt datetime NULL, 
  17.         DeviceReportedTime datetime NULL, 
  18.         Facility smallint NULL, 
  19.         Priority smallint NULL, 
  20.         FromHost varchar(60) NULL, 
  21.         Message text, 
  22.         NTSeverity int NULL, 
  23.         Importance int NULL, 
  24.         EventSource varchar(60), 
  25.         EventUser varchar(60) NULL, 
  26.         EventCategory int NULL, 
  27.         EventID int NULL, 
  28.         EventBinaryData text NULL, 
  29.         MaxAvailable int NULL, 
  30.         CurrUsage int NULL, 
  31.         MinUsage int NULL, 
  32.         MaxUsage int NULL, 
  33.         InfoUnitID int NULL , 
  34.         SysLogTag varchar(60), 
  35.         EventLogType varchar(60), 
  36.         GenericFileName VarChar(60), 
  37.         SystemID int NULL 
  38. ); 
  39.  
  40.  
  41.  
  42. mysql> CREATE TABLE SystemEventsProperties 
  43.  ( 
  44.          ID int unsigned not null auto_increment primary key, 
  45.          SystemEventID int NULL , 
  46.          ParamName varchar(255) NULL , 
  47.          ParamValue text NULL 
  48.  ); 
  49.  
  50. 二,设置数据库权限 
  51. mysql> GRANT ALL ON Syslog.* TO syslog_ng@localhost IDENTIFIED BY 'syslog_ngpass';            
  52. mysql> FLUSH PRIVILEGES; 
  53.  
  54. 三,配置syslog-ng服务端 
  55. rpm -ivh libnet-1.1.5-1.el6.x86_64.rpm 
  56. rpm -ivh eventlog-0.2.12-1.el6.x86_64.rpm  
  57. rpm -ivh syslog-ng-3.2.5-3.el6.x86_64.rpm 
  58. rpm -ivh libdbi-0.8.3-3.1.el6.x86_64.rpm 
  59. rpm -ivh syslog-ng-libdbi-3.2.5-3.el6.x86_64.rpm 
  60.  
  61. vim /etc/syslog-ng/syslog-ng.conf  
  62. ======================================================================================================================== 
  63. source s_src { 
  64.                unix-stream("/dev/log"); 
  65.                udp(ip("192.168.122.200") port(514)); 
  66. }; 
  67. destination d_mysql { 
  68. sql(type(mysql) 
  69. host("localhost") username("syslog_ng") password("syslog_ngpass"
  70. database("Syslog") table("SystemEvents"
  71.  
  72. columns("ID int unsigned not null auto_increment primary key","ReceivedAt datetime NULL""DeviceReportedTime datetime NULL"
  73. "Facility smallint NULL","Priority smallint NULL","FromHost varchar(60) NULL"
  74. "Message text","InfoUnitID int NULL","SysLogTag varchar(60)"
  75. "CustomerID bigint","NTSeverity int NULL","Importance int NULL","EventSource varchar(60)","EventUser varchar(60) NULL"
  76. "EventCategory int NULL","EventID int NULL","EventBinaryData text NULL","MaxAvailable int NULL","CurrUsage int NULL","MinUsage int NULL"
  77. "MaxUsage int NULL","EventLogType varchar(60)","GenericFileName VarChar(60)","SystemID int NULL"
  78. values("","$R_ISODATE", "$S_ISODATE","$FACILITY_NUM","$LEVEL_NUM","$HOST", 
  79. "$MSGONLY","1","$MSGHDR","","","","","","","","","","","","","","","") 
  80. indexes("ID","ReceivedAt","Facility","Priority","FromHost","SysLogTag",)); 
  81. }; 
  82. log { source(s_src); destination(d_mysql); }; 
  83. ========================================================================================================================== 
  84. 四。配置loganalyzer日志web页面 
  85. wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.1.tar.gz 
  86. tar xf loganalyzer-3.6.1.tar.gz 
  87. cd  loganalyzer-3.6.1 
  88. mkdir /var/www/html/loganalyzer 
  89. mv ./src/*  /var/www/html/loganalyzer 
  90. cp contrib/* /var/www/html/loganalyzer 
  91. cd /var/www/html/loganalyzersh 
  92. sh  configure.sh  
  93.  
  94. cat >/etc/cron.daily/syslog-clean.sh <<EOF 
  95. #!/bin/bash 
  96. MYSQL_USER="syslog_ng" 
  97. MYSQL_PASS="syslog_ngpass" 
  98. MYSQL_DB="Syslog" 
  99. mysql  -u\${MYSQL_USER} -p\${MYSQL_PASS} \${MYSQL_DB} -e "DELETE FROM SystemEvents WHERE ReceivedAt < DATE_SUB(CURDATE(),INTERVAL 30 DAY)" 
  100. EOF 
  101. chmod 700 /etc/cron.daily/syslog-clean.sh 
  102. http://192.168.122.200/loganalyzer/install.php 
  103.  
  104.  
  105. 五,配置客户端syslog-ng 
  106. rpm -ivh libnet-1.1.5-1.el6.x86_64.rpm 
  107. rpm -ivh eventlog-0.2.12-1.el6.x86_64.rpm  
  108. rpm -ivh syslog-ng-3.2.5-3.el6.x86_64.rpm 
  109. rpm -ivh libdbi-0.8.3-3.1.el6.x86_64.rpm 
  110. rpm -ivh syslog-ng-libdbi-3.2.5-3.el6.x86_64.rpm 
  111.  
  112.  
  113. vim /etc/syslog-ng/syslog-ng.conf  
  114. =================================================================================== 
  115. destination d_euid { file("/var/log/user"); }; 
  116. filter f_euid   { match("euid" value("euid")) or facility(authpriv); }; 
  117. log { source(s_sys); filter(f_euid);destination(d_euid); }; 
  118. log { source(s_sys);filter(f_euid); destination(d_udp);}; 
  119. log { source(s_sys); destination(d_udp);}; 
  120. ================================================================================== 
  121.  
  122. cat >>/etc/bashrc <<EOF 
  123. export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[hostname- $(hostname)]": "[euid=$(whoami)]":$(who am i):[`pwd`]:"$msg"; }' 
  124. EOF 
  125.  
  126. #rsyslog 
  127. #sed -i "s/SYSLOGD_OPTIONS=\"-c 5\"/SYSLOGD_OPTIONS=\"-c 2 -r -m 0\"/g"  /etc/sysconfig/rsyslog 
  128. #echo "*.* @192.168.122.200"  >> /etc/rsyslog.conf 

 

你可能感兴趣的:(syslog,syslog-ng,loganalyzer)