LinuxÉϵÄÈÕÖ¾ÆÊÎöÓë´æ´¢ÓÅ»¯
linuxÉϵÄÈÕÖ¾ÆÊÎöÓë´æ´¢ÓÅ»¯
Ëæ×Å»¥ÁªÍøµÄ¿ìËÙÉú³¤ºÍÊý¾ÝµÄ¼±¾çÔöÌí£¬ÈÕÖ¾ÆÊÎö¹ØÓÚϵͳÔËάºÍÓªÒµ¼à¿Ø±äµÃÔ½À´Ô½Ö÷Òª¡£ÔÚLinuxÇéÐÎÏ£¬ÎÒÃÇ¿ÉÒÔʹÓÃÖÖÖÖ¹¤¾ßÀ´ÍøÂçºÍÆÊÎöÈÕÖ¾Êý¾Ý¡£È»¶ø£¬Ëæ×ÅÈÕÖ¾Á¿µÄÔöÌí£¬ÈÕÖ¾Êý¾ÝµÄ´æ´¢ºÍÆÊÎöÒ²´øÀ´ÁËһЩÌôÕ½¡£±¾ÎĽ«ÏÈÈÝÔõÑùÔÚLinuxÉϾÙÐÐÈÕÖ¾ÆÊÎö£¬²¢ÌṩһЩ´æ´¢ÓÅ»¯µÄ½¨Òé¡£
Ò»¡¢ÈÕÖ¾ÍøÂçºÍÆÊÎö¹¤¾ß
ÔÚLinuxϵͳÖУ¬×îÊ¢ÐеÄÈÕÖ¾ÍøÂçºÍÆÊÎö¹¤¾ßÖ®Ò»ÊÇrsyslog¡£rsyslogÊÇÒ»¸ö¹¦Ð§Ç¿Ê¢ÇҸ߶ȿɶ¨ÖƵÄϵͳÊÂÎñ¼Í¼¿ò¼Ü£¬¿ÉÒÔÍøÂç¡¢´¦ÀíºÍת·¢ÖÖÖÖÀàÐ͵ÄÈÕÖ¾Êý¾Ý¡£
ÒÔÏÂÊÇÒ»¸öʹÓÃrsyslogÍøÂçºÍÆÊÎöϵͳÈÕÖ¾µÄʾÀýÉèÖÃÎļþ£º
# /etc/rsyslog.conf # ÆôÓÃUDP¼àÌý£¬ÎüÊÕÔ¶³ÌÖ÷»ú·¢Ë͵ÄÈÕÖ¾ $ModLoad imudp $UDPServerRun 514 # ½«ËùÓдÓÔ¶³ÌÖ÷»úÎüÊÕµ½µÄÈÕÖ¾´æ´¢µ½Ö¸¶¨ÎļþÖÐ *.* /var/log/remote.log # ½«Ö¸¶¨×°±¸µÄÈÕÖ¾´æ´¢µ½Ö¸¶¨ÎļþÖÐ if $fromhost-ip == '192.168.1.100' then /var/log/device.log # ½«Ö¸¶¨³ÌÐòµÄÈÕÖ¾´æ´¢µ½Ö¸¶¨ÎļþÖÐ if $programname == 'nginx' then /var/log/nginx.log
µÇ¼ºó¸´ÖÆ
ÔÚÉÏÊöÉèÖÃÖУ¬ÎÒÃÇͨ¹ýÆôÓÃUDP¼àÌýÆ÷£¬ÔÊÐírsyslogÎüÊÕÀ´×ÔÔ¶³ÌÖ÷»úµÄÈÕÖ¾Êý¾Ý¡£Ê¹ÓÃÌõ¼þÓï¾ä£¬ÎÒÃÇ¿ÉÒÔ½«²î±ðȪԴºÍ³ÌÐòµÄÈÕÖ¾Êý¾Ý»®·Ö´æ´¢µ½²î±ðµÄÎļþÖС£
³ýÁËrsyslog£¬ÉÐÓÐÆäËûһЩǿʢµÄÈÕÖ¾ÍøÂçºÍÆÊÎö¹¤¾ß£¬ÈçELK£¨Elasticsearch¡¢LogstashºÍKibana£©¿ÍÕ»¡£ELK¿ÍÕ»ÊÇÒ»¸öÊ¢ÐеĿªÔ´½â¾ö¼Æ»®£¬¿ÉÒÔ×ÊÖúÎÒÃÇ´¦ÀíºÍÆÊÎö´ó×ÚµÄÈÕÖ¾Êý¾Ý¡£
¶þ¡¢ÈÕÖ¾´æ´¢ÓÅ»¯
Ëæ×ÅÈÕÖ¾Á¿µÄÔöÌí£¬ÈÕÖ¾Êý¾ÝµÄ´æ´¢ºÍÖÎÀí±äµÃÔ½·¢ÖØ´ó¡£ÒÔÏÂÊÇһЩ´æ´¢ÓÅ»¯µÄ½¨Ò飬¿ÉÒÔ×ÊÖúÎÒÃǸßЧµØ´¦ÀíÈÕÖ¾Êý¾Ý¡£
°´ÆÚ±¸·ÝºÍ¹éµµÈÕÖ¾£º°´ÆÚ±¸·ÝºÍ¹éµµÈÕÖ¾¿ÉÒÔ×èÖ¹ÈÕÖ¾Îļþ¹ý´ó£¬Ìá¸ßϵͳÐÔÄÜ¡£¿ÉÒÔʹÓù¤¾ßÈçlogrotateÀ´¾ÙÐÐÈÕÖ¾ÂÖתºÍѹËõ£¬ÒÔïÔÌ´ÅÅÌ¿Õ¼äÕ¼Óá£
# /etc/logrotate.conf /var/log/*.log { weekly rotate 4 compress missingok notifempty }
µÇ¼ºó¸´ÖÆ
ʹÓÃѹËõËã·¨£º¹ØÓÚ´ó×ÚÈÕÖ¾Êý¾Ý£¬¿ÉÒÔʹÓÃѹËõËã·¨£¨Èçgzip»òbzip2£©À´ïÔÌ´æ´¢¿Õ¼äµÄÕ¼Óá£È»¶ø£¬ÐèҪעÖصÄÊÇ£¬Ñ¹ËõËã·¨»áÔöÌí¶ÁÈ¡Ï¢ÕùѹËõµÄʱ¼ä£¬¿ÉÄÜ»áÓ°ÏìÈÕÖ¾ÆÊÎöµÄÐÔÄÜ¡£
# ʹÓÃgzipѹËõÈÕÖ¾Îļþ $ gzip /var/log/nginx.log
µÇ¼ºó¸´ÖÆ
ÈÕÖ¾ÍÑÀ룺½«´óÐÍÈÕÖ¾ÎļþÖ§½â³É½ÏСµÄÎļþ¿ÉÒÔÌá¸ß¶ÁÈ¡ºÍдÈëµÄÐÔÄÜ¡£¿ÉÒÔʹÓù¤¾ßÈçsplitÀ´½«´óÐÍÈÕÖ¾ÎļþÖ§½âΪ¶à¸öСÎļþ¡£
# ½«´óÐÍÈÕÖ¾ÎļþÖ§½âΪ10¸öСÎļþ $ split -l 1000000 large.log small.log
µÇ¼ºó¸´ÖÆ
ʹÓÃרÓõĴ洢½â¾ö¼Æ»®£º¹ØÓÚ´ó¹æÄ£µÄÈÕÖ¾ÆÊÎöÓ¦Ó㬿ÉÒÔ˼Á¿Ê¹ÓÃרÓõĴ洢½â¾ö¼Æ»®£¬ÈçÂþÑÜʽÎļþϵͳ£¨ÈçHDFS£©ºÍÁд洢Êý¾Ý¿â£¨ÈçCassandra£©¡£ÕâЩ´æ´¢½â¾ö¼Æ»®¿ÉÒÔÌṩ¸ü¸ßµÄ¿ÉÉìËõÐÔºÍÐÔÄÜ¡£
Èý¡¢½áÂÛ
ÈÕÖ¾ÆÊÎöÊÇϵͳÔËάºÍÓªÒµ¼à¿ØµÄÖ÷Òª×é³É²¿·Ö¡£ÔÚLinuxϵͳÉÏ£¬ÎÒÃÇ¿ÉÒÔʹÓù¤¾ßÈçrsyslogºÍELK¿ÍÕ»À´ÍøÂçºÍÆÊÎöÈÕÖ¾Êý¾Ý¡£ÎªÁËÓÅ»¯´æ´¢ÐÔÄÜ£¬ÎÒÃÇ¿ÉÒÔ°´ÆÚ±¸·ÝºÍ¹éµµÈÕÖ¾£¬Ê¹ÓÃѹËõËã·¨£¬¾ÙÐÐÈÕÖ¾ÍÑÀ룬»òÕßʹÓÃרÓõĴ洢½â¾ö¼Æ»®¡£Í¨¹ýÕâЩÓÅ»¯²½·¥£¬ÎÒÃÇ¿ÉÒÔ¸üºÃµØ´¦ÀíºÍÆÊÎöÈÕÖ¾Êý¾Ý£¬Ìá¸ßϵͳÐÔÄܺͿɿ¿ÐÔ¡£
£¨×¢£ºÒÔÉϽöΪʾÀýÉèÖúͽ¨Ò飬ƾ֤ÏÖÕæÏàÐξÙÐе÷½âºÍʹÓᣣ©
ÒÔÉϾÍÊÇLinuxÉϵÄÈÕÖ¾ÆÊÎöÓë´æ´¢ÓÅ»¯µÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡