Linux编程 第七讲Linux的日志系统.ppt
-
资源ID:93177850
资源大小:349KB
全文页数:20页
- 资源格式: PPT
下载积分:16金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
Linux编程 第七讲Linux的日志系统.ppt
第七讲 Linux 的日志系统操作系统日志 操作系统日志(log)记录了硬件、软件和系统发生的事件,通过日志文件,可以检查错误发生的原因,实时监测系统的状态,检查分析各种攻击企图或追中攻击者的踪迹。绝大多数的操作系统都有日志记录功能,如windows 日志在“管理工具”中的“事件查看器”。操作系统日志(续)Linux 提供了强大的日志记录和管理功能,它是由两个服务进程klogd 和syslog 两个进程去控制日志,其中klogd 负责将内核消息传送给syslog,syslog 负责处理守护进程日志、用户程序日志和内核日志。Linux 的日志大体分为:系统日志、登录连接日志、进程统计日志和其他程序日志。配置管理日志服务一、日志服务管理Klogd 和syslogd 进程的服务名均为syslog,在/etc/rc.d/init.d/syslog 可看到该服务的启动Shell 脚本。1、查询、启动、停止、重启该服务命令 rootRHEL5#service syslog status/start/stop/restart2、设置syslog 服务开机启动命令rootRHEL5#chkconfig level 2345 syslog on3、查询当前正在运行Klogd 和syslogd 进程信息命令rootRHEL5#ps ef|grep syslogd rootRHEL5#ps ef|grep klogd配置管理系统日志 两个守护进程获取到大量的日志,需要将这些日志写到某些日志文件里,通过日志配置文件/etc/syslog.conf 实现的。通过设置该配置文件,可以实现将不同类型,不同级别的日志,记录到指定的日志文件中或者将其传递到远程日志服务器。Syslog.conf 中每个配置项是由两列构成,两列之间用tab 键隔开,格式为facility.level action;facility 代表日志消息来源设备,level 代表日志级别,action代表日志消息的去向。配置管理系统日志(续)logger 命令 利用logger 命令可以向日志文件中添加一条日志。我们利用动态显示命令tail 去验证:rootRHEL5#tail f/var/log/messagesrootRHEL5#logger f/var/log/messages testingpriority 提供的运算符Priority:代表等于高于 priority 例如,err 相当于 err+crit+alert+emerg=priority:代表恰好等于 priority例如,=err 就只是 err 本身!priority:代表除了 priority 之外的例如,!err 就是 debug+info+notice+warn+crit+alert+emerg除此之外,facility 和 priority 可以使用*代表所有*.*就表示所有的 facility 的所有的 priority 信息ACTIONACTION 字段则是用来定义如何处理接收到的信息你可以指定如下几项内容/path/filename将信息存储到/path/filename 文件中注意,如果要系统日志服务把信息存储到文件,则该文件必须以/开头的绝对路径命名username将信息传送给已登录的用户hostname代表将信息传送到 hostname 的系统日志服务器*将信息传送给所有已登录的用户例子cron.=alert/var/log/cron.log将 cron 传送来的 alert 信息存储到/var/log/cron.log 文件cron.!emerg root将 cron 传送来的 emerg 等级以外的信息转给 root 阅读*.emerg*将来自各种子系统的 emerg 等级信息传给所有已经登录的用户*.*logserver将所有信息传送给 logserver 计算机中的系统日志服务器/etc/syslog.conf/etc/syslog.conf 是以 ACTION 作为主键的所以,整个 syslog.conf 中的每一行的 ACTION 都必须是唯一值也就是说不能有两个相同的 ACTION 那若需对不同类型的信息,采用同一种 ACTION,该怎么设置呢?syslog.conf 允许使用分号连接多个信息Kern.=err;auth.err/var/log/caution.log把 kern 的 err 等级信息,以及 auth 的 err 以上的信息,全部存储到/var/log/caution.log 文件中日志文件根据默认的/etc/syslog.conf,系统日志服务会在/var/log/中存储所有的记录文件日志的格式在系统日志服务产生的记录文件中,每一行就是一条信息,每一行包含下列的字段date time hostname app(name)pid:messagesdate:信息发生的日期time:信息发生的时间hostname:信息发生的主机app:产生信息的软件name:软件或者软件组织的名称,可以省略pid:进程标识符,可以省略messages:信息的内容示例登录连接日志与进程统计日志n 登录连接日志与进程统计日志不由syslogd 进程管理,是由其他的进程负责写入的。n 日志文件不能用cat tail more 命令查看,只能使用who,last,lastlog 等命令查看1、登录连接日志登录连接日志存放在/var/log/wtmp,/var/run/utmp 和var/log/lastlog 中。utmp 文件已记录了登录的每个用户的信息。Wtmp 文件永久记录了每个用户登录、注销以及系统启动、停机等事件。Lastlog 记录了用户最后一次登录信息登录连接日志与进程统计日志(续)n users,w 和ac 命令users 显示当前登录的用户,如果该用户登录了多个会话,则显示多条记录。w 查询当前登录用户的用户名、登录终端、登录主机ip,在线时间以及运行的进程的信息ac 统计用户登录连接的总时间2、进程统计日志,利用该日志可以追踪每个用户所运行的每条命令。利用history命令即可查看,因此一般我们不使用该日志。集中式的日志服务要如何实现呢?依照下列的步骤操作即可(1)在作为日志客户端的计算机上设置适当的信息传送到日志服务器,需在 ACTION 字段中指定 LogServer 参数 LogServer 是日志服务器的计算机名称或 IP 地址示例*.*192.168.0.10(2)修改日志服务器的/etc/sysconfig/syslog 中的 SYSLOGD_OPTIONS 参数,加入-r 参数即可。(3)重新启动 LogClient 和 LogServer 的系统日志服务这样就可以实现集中式的日志服务系统了,帮助你更轻松地管理大规模的 Linux 服务器环境。