linux rsyslog详解

概念和特性

历史日志、历史事件:时间、事件本身、日志级别(根据时间的关键性程度)

系统日志服务:syslog有两个进程syslogd(system负责用户进程)、 klogd(kernel负责内核进程)

centos7:rsyslog:syslogd、klogd

rsyslog和syslog对比:

1、多进程、可以为非本机上的进程接收日志;

2、支持UDP\TCP\SSL\TLS\RELP;

3、支持MySQL,PGSQL,Oralce实现日志存储;

4、强大的内置过滤器,可实现过滤日志信息中的任意部分;

5、自定义输出格式;

(并非所有程序都rsyslog负责记录,有的程序自己有自己的日志记录)

收集工具elk:elasticsearch强大的弹性搜索工具、logstash日志收集器、kibana前端日志显示

日志收集放:

facility设施(从功能活程序上对日志进行分类),将多个发过来具有相同特性的数据流约束在一个管道内

auth、authpriv、cron、daemon、kern、lpr、mail、mark、news、security、user、uucp、local0-local7、syslog

priority日志级别

debug、info、notice、warn(warning)、err(error)、crit(critical)、alert、emerg(panic)

指定级别:*(所有级别)、none(没有级别)、priority(此级别及更高级别的日志信息)、=priority(此级别)

facility.priority
/var/log/messages

#rpm -q rsyslog

程序环境

主程序rsyslogd

配置文件/etc/rsyslog.conf

RULES:

facility.priority target(不光是文件,可以是用户)

文件路径:记录到文件中,通常在/var/log,文件路径前加-表示异步同步

用户:将日志通知给其他用户,*表示所有用户

日志服务器:[email protected]:514,必须监听在tcp或者udp某个端口,通常514端口

管道:|COMMAND

文件记录的日志的格式:


时间产生的时间


主机


进程pid


时间内容

有些日志记录二进制格式:/var/log/wtmp(记录当前系统上成功登陆的日志,last查看);/var/log/btmp(记录当前系统上失败登陆的日志,lastb查看)

lastlog命令:显示当前系统每一个用户最近一次登陆时间

服务脚本/etc/rc.d/init.d/rsyslog

rsyslog服务器:

#vi /etc/rsyslog.conf

$ModLoad
imudp

$UDPServerRun
514

#
Provides TCP syslog reception

$ModLoad
imtcp

$InputTCPServerRun
514

配置使用基于mysql存储日志信息:

(1)
准备好MySQL服务器,创建用户,授权对Syslog数据库的全部访问权限;

(2)
安装rsyslog-mysql程序包;

(3)
创建rsyslog-mysql依赖的数据库;

#
mysql -uUSERNAME -hHOST -pPASSWORD <
/usr/share/doc/rsyslog-mysql-VERSION/createDB.sql

(4)
配置rsyslog使用ommysql模块

####
MODULES ####

$ModLoad
ommysql

####
RULES ####

facility.priority
        :ommysql:DBHOST,DB,DBUSER,USERPASS

重启rsyslog服务

(5)
安装loganalyzer

(a)
配置webserver, 支持php

#
yum install httpd php php-mysql php-gd

#
service httpd start

(b)
loganalyzer

#
cp -r loganalyzer-3.6.5/src /var/www/html/loganalyzer

#
cp loganalyzer-3.6.5/contrib/*.sh /var/www/html/loganalyzer

#
cd /var/www/html/loganalyzer

#
chmod +x *.sh

#
./configure.sh

#
./secure.sh

#
chmod 666 config.php

时间: 2024-08-10 17:58:46

linux rsyslog详解的相关文章

Linux 目录详解 树状目录结构图

1.树状目录结构图 2./目录 目录 描述 / 第一层次结构的根.整个文件系统层次结构的根目录. /bin/ 需要在单用户模式可用的必要命令(可执行文件):面向所有用户,例如:cat.ls.cp,和/usr/bin类似. /boot/ 引导程序文件,例如:kernel.initrd:时常是一个单独的分区[6] /dev/ 必要设备, 例如:, /dev/null. /etc/ 特定主机,系统范围内的配置文件. 关于这个名称目前有争议.在贝尔实验室关于UNIX实现文档的早期版本中,/etc 被称为

Linux信号详解

Linux信号详解 一 信号的种类 可靠信号与不可靠信号, 实时信号与非实时信号 可靠信号就是实时信号, 那些从UNIX系统继承过来的信号都是非可靠信号, 表现在信号 不支持排队,信号可能会丢失, 比如发送多次相同的信号, 进程只能收到一次. 信号值小于 SIGRTMIN的都是非可靠信号. 非可靠信号就是非实时信号, 后来, Linux改进了信号机制, 增加了32种新的信号, 这些信 号都是可靠信号, 表现在信号支持排队, 不会丢失, 发多少次, 就可以收到多少次. 信号值 位于 [SIGRTM

linux awk详解与应用

文章来自于本人个人博客: linux awk详解与应用 1.awk awk是一个强大的文本分析工具,它可以通过分析文本来生成一个数据报告.它的原理就是读取每行的输入,然后按照分隔符切分(默认是空格),再进行定制计算. awk '{print $1}' /etc/passwd   #打印出passwd文件的所有行的第一列 这是awk的基础语法,在awk中$n代表列数,即$1--第一列,$2---第二列....,但是$0代表整行 接下来我们按照指定的分隔符打印数据: awk -F ':' '{pri

Gentoo Linux安装详解--根据官方WiKi整理

1. 前期准备 远程登录: 开启ssh服务: /etc/init.d/sshd start 设置密码: passwd 以便使用putty.ssh client远程登录上传stage等(有时在线下载很慢,而局域网上传很快) 准备磁盘: 分区: fdisk /dev/sda /dev/sda1 : /boot 100M(32-100M) 设启动笔记-a/dev/sda2 : / 20G/dev/sda3 : /home 20G/dev/sda5 : /swap 1G (内存< 512 MB,分区分配

linux命令详解

一.cat主要有三大功能: 1.一次显示整个文件.$ cat filename2.从键盘创建一个文件.$ cat > filename (只能创建新文件,不能编辑已有文件)3.将几个文件合并为一个文件: $cat file1 file2 > file 参数:-n 或 --number 由 1 开始对所有输出的行数编号-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行-v

PXE的概述及Linux使用详解

PXE的概述及使用详解 现在企业采购的很多计算机都是没光驱的,怎么安装系统呢?另外,如何能快速大规模安装Linux服务器操作系统呢,有什么好办法吗? 答案是有的,那就是本文要说的:PXE PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial filet

Gentoo Linux安装详解

1. 前期准备 远程登录: 开启ssh服务: /etc/init.d/sshd start 设置密码: passwd 以便使用putty.ssh client远程登录上传stage等(有时在线下载很慢,而局域网上传很快) 准备磁盘: 分区: fdisk /dev/sda /dev/sda1 : /boot 100M(32-100M) 设启动笔记-a/dev/sda2 : / 20G/dev/sda3 : /home 20G/dev/sda5 : /swap 1G (内存< 512 MB,分区分配

Linux指令详解useradd groupadd passwd chpasswd chage 密码修改

创建用户.设置密码.修改用户.删除用户: useradd testuser 创建用户testuser passwd testuser 给创建的用户testuser设置密码 说明:新创建的用户会在/home下创建一个用户目录testuser usermod --help 修改用户这个命令的相关参数 userdel testuser 删除用户testuser rm -rf testuser 删除用户testuser所在目录 上面的几个命令只有root账号才可以使用,如果你不知道自己的系统上面的命令在

Linux权限详解,多用户多组各种权限配置原理

网上有太多关于Linux权限详解,这里不啰嗦那些.主要解释下这些权限是杂用的,否则知道了什么用户.组之类的权限也配不好. 一.权限分类 r:读取权限,数字代号为"4". w:写入权限,数字代号为"2". x:执行或切换权限,数字代号为"1". -:不具任何权限,数字代号为"0". linux内每一段为r+w+x的值,最大777,见下图 二.权限在何时使用 目录写权限:可以增删目录内所有内容,改文件和目录名. 目录读权限:可以l