linux远程日志rsyslog服务端和客户端安装

用rsyslog的缘由: 
1.防止系统崩溃无法获取系统日志分享崩溃原因,用rsyslog可以把日志传输到远程的日志服务器上 
2.使用rsyslog日志可以减轻系统压力,因为使用rsyslog可以有效减轻系统的磁盘IO 
3.rsyslog使用tcp传输非常可靠,可以对日志进行过滤,提取出有效的日志,rsyslog是轻量级的日志软件,在大量日志写的情况下,系统负载基本上在0.1以下

一、安装前准备 
1.下载rsyslog-5.6.2 
2.准备两台机器(linux或者unix),一台客户端,一台服务端

服务端和客户端的安装步骤:

#指定安装目录
./configure --prefix=/Application/rsyslog  #编译
make  #安装
make install
#添加lib
echo "/Application/rsyslog/lib/rsyslog" >> /etc/ld.so.conf
#更新lib
ldconfig  #产生配置文件
cp /etc/syslog.conf /etc/rsyslog.conf

产生服务文件

vi /etc/init.d/rsyslog

#!/bin/bash
#
# rsyslog Starts rsyslogd/rklogd.
#
#
# chkconfig: - 12 88
# description: Syslog is the facility by which many daemons use to log \
# messages to various system log files. It is a good idea to always \
# run rsyslog.
### BEGIN INIT INFO
# Provides: $syslog
# Required-Start: $local_fs $network $remote_fs
# Required-Stop: $local_fs $network $remote_fs
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Enhanced system logging and kernel message trapping daemons
# Description: Rsyslog is an enhanced multi-threaded syslogd supporting,
# among others, MySQL, syslog/tcp, RFC 3195, permitted
# sender lists, filtering on any message part, and fine
# grain output format control.
### END INIT INFO  # Source function library.
basedir=/Application/rsyslog
moddir=/Application/rsyslog/lib/rsyslog/
rsyslogdfile=$basedir/sbin/rsyslogd
. /etc/init.d/functions  RETVAL=0  start() {
[ -x $rsyslogdfile ] || exit 5  # Do not start rsyslog when sysklogd is running
if [ -e /var/run/syslogd.pid ] ; then
echo $"Shut down sysklogd before you run rsyslog";
exit 1;
fi  # Source config
if [ -f /etc/sysconfig/rsyslog ] ; then
. /etc/sysconfig/rsyslog
else
SYSLOGD_OPTIONS="-M $moddir"
fi  if [ -z "$SYSLOG_UMASK" ] ; then
SYSLOG_UMASK=077;
fi
umask $SYSLOG_UMASK  echo -n $"Starting system logger: "
daemon $rsyslogdfile $SYSLOGD_OPTIONS
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/rsyslog
return $RETVAL
}
stop() {
echo -n $"Shutting down system logger: "
killproc $rsyslogdfile
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/rsyslog
return $RETVAL
}
reload() {
RETVAL=1
syslog=`cat /var/run/rsyslogd.pid 2>/dev/null`
echo -n "Reloading system logger..."
if [ -n "${syslog}" ] && [ -e /proc/"${syslog}" ]; then
kill -HUP "$syslog";
RETVAL=$?
fi
if [ $RETVAL -ne 0 ]; then
failure
else
success
fi
echo
return $RETVAL
}
rhstatus() {
status rsyslogd
}
restart() {
stop
start
}  case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
reload|force-reload)
reload
;;
status)
rhstatus
;;
condrestart)
[ -f /var/lock/subsys/rsyslog ] && restart || :
;;
*)
echo $"Usage: $0 {start|stop|restart|reload|force-reload|condrestart}"
exit 2
esac  exit $?

启动服务

#产生服务文件
chmod +x /etc/init.d/rsyslog
#启动前先把syslog停止
service syslog stop
service rsyslog start

配置服务端

vi /etc/rsyslog.conf #在文件开始加上,同时确保514端口能够被客户端用tcp访问

#指定日志文件的拥有者
$FileOwner apache
#使用tcp方式
$ModLoad imtcp # needs to be done just once
#tcp接收连接数为500个
$InputTCPMaxSessions 500
#tcp接收信息的端口
$InputTCPServerRun 514  #为信息加上日志时间
$template logformat,"%TIMESTAMP:::date-mysql% %FROMHOST-IP%%msg%\n"
#定义的日志文件的名称,按照年月日
$template DynFile,"/Application/sdns/log/%$year%%$month%%$day%.log"
#把包含sdns_log标志的信息写到DynFile定义的日志文件里
:rawmsg, contains, "sdns_log" ?DynFile;logformat
#这个表示丢弃包含sdns_log标志的信息
:rawmsg, contains, "sdns_log" ~

配置客户端 
vi /etc/rsyslog.conf #在文件开始加上

#把包含sdns_log的信息通过tcp发到192.168.1.2 @@表示tcp @表示udp
:rawmsg, contains, "sdns_log" @@192.168.1.2
#这个表示丢弃包含sdns_log标志的信息,防止这个信息写到本机的/var/log/message
:rawmsg, contains, "sdns_log" ~

测试: 
在客户端上执行 
logger -p user.info “sdns_log 34334” 
在服务端的/Application/sdns/log/目录里是否有日志产生

linux远程日志rsyslog服务端和客户端安装(亲测)--自定义接收日志格式相关推荐

  1. windows环境下MySQL服务端和客户端安装,超详细

    windows环境下MySQL服务端和客户端安装,超详细 MySQL简介 MySQL的安装步骤 服务端安装 客户端安装 MySQL简介 MySQL是关系型数据库,由n张互相关联的表组成.一般是c或c+ ...

  2. 无盘服务器 安装客户机程序,顺网云服务端和客户端安装

    在维护云网站或 APP 端,进行平台账号注册: 访问维护云平台注册页面 访问维护云 App 下载界面 新用户注册完成,系统即自动为您定制专属安装包. 服务端安装 双击服务端 exe 安装程序,输入网吧 ...

  3. SVN服务端、客户端安装配置和填坑

    一.svn服务端和客户端安装: 1.安装程序: 服务端程序:Setup-Subversion-1.8.17.msi 客户端程序:TortoiseSVN-1.9.7.27907-x64-svn-1.9. ...

  4. 网络启动安装linux客户机nfs设置,NFS服务端和客户端安装配置

    一  NFS介绍 NFS用的比较多,但是更新没有想象的那么快,Nginx一年要迭代很多个版本,而NFS最新版本4.1是2010年更新的,到目前为止还没有更新过,但这并不影响NFS使用的广泛性 RPC协 ...

  5. LINUX环境下VNC服务端与客户端配置

    公司开发原来都是用的Xmanager软件,但近期爆出该软件存在后门漏洞问题,安防部门要求停止使用老版本的Xmanager进行升级或改用开源VNC软件,因此在网上查看了一些配置说明,特整理如下: VNC ...

  6. puppet 连载二:服务端和客户端安装(ActiveMQ、MCollective)

    -------------------------------------服务端----------------------------------- 1.jdk安装 vi /etc/profile ...

  7. linux syslog日志转发服务端、客户端配置

    syslog服务器 1.#开启远程UDP模块 sed -ri "s/^#(.*imudp)/\1/" /etc/rsyslog.conf sed -ri "s/^#(.* ...

  8. linux 文件 加密传输,服务端和客户端之文件加密传输

    void aes_box_encrypt(char* source_string, char* des_string, int size)//负责数据加密 { int iLoop = 0; int i ...

  9. SVN 服务端、客户端安装及配置、导入导出项目

    http://blog.csdn.net/xcy13638760/article/details/12994923 http://www.cnblogs.com/armyfai/p/3985660.h ...

最新文章

  1. VLAN-VTP-Trunk
  2. 这样的烂代码,我实习的时候都写不出来!
  3. bootstrap之排版类
  4. App Store遭到攻击后如何保护iPhone安全
  5. mybatis 查询的时间不对_程序员,Mybatis 你踩过坑吗?
  6. 运河杯交通违章 运行不起来
  7. Android(组件大全)
  8. 非编程人学Python,要注意哪些隐秘的错误认知?
  9. AI 与 5G 时代,实时互联网的下一个风口是什么?
  10. 5G 套餐最快本月开售;谷歌被指骗取人脸数据;Calibre 4.0 发布 | 极客头条
  11. MFC的HTML View在初始化时如何打开指定网页?
  12. 端如何访问rc_如何进行 Linux 启动时间优化
  13. rar和zip文件加密的破解
  14. Fastjson源码阅读:缺陷静态检查(上)
  15. 数学家吴文俊批判“中国式奥数”:害人害数学
  16. NBIOT 关键术语
  17. 猿创征文|Android 11.0 12.0Launcher3中app列表页的app名称分两行显示
  18. word怎么删除参考文献的横线_教大家word2016怎么去掉引用参考文献中的横线
  19. 90%的人都不知道的Node.js 依赖关系管理(上)
  20. Hive之Rank函数

热门文章

  1. Linux根目录下的各个子目录的作用
  2. 私藏的开发过程中的那些基类
  3. 2017年云计算行业新动向盘点
  4. iOS App创建桌面快捷方式
  5. 谁与争锋-七款杀毒软件比较分析
  6. 多个漏洞可导致施耐德电气继电器遭重启或设备遭接管
  7. 什么鬼?我能通过依赖混淆攻击在 Halo 游戏服务器中执行命令,微软不 care?!...
  8. 如何使用以下命令 ls cat mv touch 以及如何使用 explainshell.com 这个网站
  9. SCOM2012SP1环境准备和安装
  10. python实现windows Service服务程序