一、日志系统

1、kernel ——>物理终端(/dev/console) ——> /var/log/dmesg(系统启动时信息(包括错误信息)记录到该文件)

或者:# dmesg 或 # cat /var/log/dmesg

2、系统日志

  • /var/log/messages:系统标准错误日志信息;非内核产生的引导信息;各子系统产生的信息
  • /var/log/maillog:邮件系统产生的日志信息
  • /var/log/secure:与安全相关的日志信息

3、日志详细程度:

  • 日志级别:级别越低越详细

4、系统日志服务

  • syslog:centos5
  • rsyslog:centos6,是syslog的升级版
    • 特性:

      • 多线程
      • 支持UDP,TCP,SSL,TLS协议
      • 支持使用MySQL、PGSQL和Oracle实现日志存储
        • 默认没启用此功能,需要加载rsyslog支持此类存储方式的模块,并配置其可使用mysql存储日志
      • 强大的过滤器,可实现过滤系统日志信息中的任何部分
      • 自定义输出格式

5、elasticsearch,logstash,kibana = elk

  • elasticsearch:存储,分析日志
  • logstash:日志收集工具
  • kibana:前端展示工具

二、日志服务(syslog/rsyslog)

1、syslog和rsyslog服务均有两个进程

  • syslogd:系统,非内核产生的日志信息
  • klogd:内核,专门负责记录内核产生的日志信息

2、日志服务的配置文件:

  • syslog服务的配置文件:/etc/syslog.conf
  • rsyslog服务的配置文件:/etc/rsyslog.conf

3、配置文件格式定义:

  • facility.priority action           //设备/来源/服务.日志级别     动作(日志记录到哪)
  • facility可以理解为日志的来源或设备,目前常用的facility有以下几种:
    • auth 认证相关的
      authpriv 权限、授权相关的
      cron 任务计划相关的
      daemon 守护进程相关的
      kern 内核相关的
      lpr 打印机关的
      mail 邮件相关的
      mark 标记相关的
      news 新闻相关的
      security 安全相关的,与auth类似
      syslog syslog自己的
      user 用户相关的
      uucp unix to unix cp相关的
      local0到local7 用户自定义使用
      * *表示所有的facility
  • priority(log level)日志的级别,一般有以下几种级别(从低到高),级别越低,信息越详细:
    • debug 程序或系统的调试信息
      info 一般信息
      notice 不影响正常功能,需要注意的消息
      warning/warn 可能影响系统功能,需要提醒用户的重要事件
      err/error 错误信息
      crit 紧急,比较严重的
      alert 必须马上处理的
      emerg/panic 会导致系统不可用的
      * *表示所有的日志级别
      none 跟*相反,表示啥也没有
  • action(动作)日志记录的位置:
    • 系统上的绝对路径 普通文件,如:/var/log/xxx
      | COMMAND 管道,通过管道送给其他的命令处理
      终端 终端,如:/dev/console
      @HOST 远程主机(远程主机必须要监听在tcp或udp协议514端口上提供服务),如:@10.0.0.1
      用户 系统用户,如:root
      * 登录到系统上的所有用户

4、格式定义的例子:

  • mail.info /var/log/maillog     表示将mail相关的,级别为infoinfo以上级别的信息同步记录到/var/log/maillog文件中
  • mail.* -/var/log/maillog         表示将mail相关的所有日志信息异步记录到/var/log/maillog文件中,路径前的“-”表示异步模式
  • auth.=info @10.0.0.1            表示将auth相关的,级别为info的信息记录到10.0.0.1主机上去。前提是10.0.0.1要能接收其他主机发来的日志信息
  • user.!=error                           表示记录user相关的,但不包括error级别的日志信息
  • user.!error                             与user.error相反
  • *.info                                      表示记录所有的日志信息的info级别
  • mail.*                                     表示记录mail相关的所有级别的信息
  • *.*                                           表示 记录所有级别的所有日志信息
  • cron.info;mail.info               多个日志来源可以用分号隔开
  • cron,mail.info                       与cron.info;mail.info是一个意思
  • mail.*;mail.!=info                 表示记录mail相关的所有级别的信息,但是不包括info级别的

5、文件记录(/var/log/message)的日志的格式:

  • 事件产生的日期时间        主机        进程(pid):        事件内容
  • 有些日志记录为二进制格式:/var/log/wtmp/var/log/btmp
    • /var/log/wtmp:当前系统成功登录的日志,可使用last命令查看其内容
    • /var/log/btmp:当前系统失败的登录尝试的日志,可使用lastb命令查看其内容

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

Linux_日志管理理论概述的更多相关文章

  1. Linux_权限管理理论概述

    一.权限定义 1.文件权限作用的对象 owner :属主 - u group :属组 - g other :其他人 - o 2.文件的三种权限 //针对文件的权限 r 可读 可以使用cat命令查看文件 ...

  2. Linux_磁盘管理理论概述

    一.磁盘阵列 1.什么是磁盘阵列? 1️⃣:磁盘整列就是将多块独立的磁盘组合到一起,形成容量大的磁盘组. 2️⃣:将相同的数据存放到不多个的磁盘的不同位置 2.RAID0 1️⃣:RAID0是磁盘整列 ...

  3. Java 日志框架概述(slf4j / log4j / JUL / Common-logging(JCL) / logback)

    一.简介 JAVA日志在初期可能官方并没有提供很好且实用的规范,导致各公司或OSS作者选择自行造轮子,这也导致了目前初学者觉得市面上 Java 日志库繁杂的局面. 现在市面流行以 slf4j(Simp ...

  4. Linux_源码安装包管理理论概述

    一.源码包基本概述 1️⃣:源码包的编译用到了linux系统里的编译器,通常源码包都是用C语言开发的,这也是因为C语言为linux上最标准的程序语言 2️⃣:Linux上的C语言编译器叫做gcc,利用 ...

  5. Linux_日志管理介绍(一)

    一.介绍 1.CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务,但是rsyslogd是和syslogd服务相兼容的 2.除了系统默认的日志之外,采用RPM方式安装的系 ...

  6. SQL Server中的事务日志管理(2/9):事务日志架构概述

    当一切正常时,没有必要特别留意什么是事务日志,它是如何工作的.你只要确保每个数据库都有正确的备份.当出现问题时,事务日志的理解对于采取修正操作是重要的,尤其在需要紧急恢复数据库到指定点时.这系列文章会 ...

  7. Linux_日志信息

    一.httpd日志:/var/log/httpd1.软件位置:whereis httpd2.配置文件位置:/etc/httpd/conf/httpd.conf 二.mysql日志:/var/log 查 ...

  8. JAVA日志框架概述

            日志用来记录应用的运行状态以及一些关键业务信息,其重要性不言而喻,通常我们借助于现有的日志框架完成日志输出.目前开源的日志框架很多,常见的有log4j.logback等,有时候我们还会 ...

  9. MySQL二进制日志分析-概述篇

    MySQL从3.23版本开始引入了二进制日志,用于的数据复制, 二进制日志根据MySQL的版本不同,目前有4个版本: https://dev.mysql.com/doc/internals/en/bi ...

随机推荐

  1. 【Azure 微服务】Service Fabric中微服务在升级时,遇见Warning - System.Collections.Generic.KeyNotFoundException 服务无法正常运行

    问题描述 使用.Net Framework 4.5.2为架构的Service Fabric微服务应用,在升级后发布到Azure Fabric中,服务无法运行.通过Service Fabric Expl ...

  2. 蒙特卡洛——使用CDF反函数生成非均匀随机数

    均匀随机数生成   先来说说均匀随机数生成,这是非均匀随机数的生成基础.   例如,我们现在有drand()函数,可以随机生成[0,1]范围内的均匀随机数. 要求一个drand2()函数,能够生成[0 ...

  3. leetcode 刷题(数组篇)26题 删除有序数组中的重复值 (双指针)

    题目描述 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度. 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额 ...

  4. 配置Jupyter环境:安装+补全+美化+常用库

    1 Jupyter简介 Jupyter Notebook是一个交互式笔记本,支持运行40多种编程语言,本质是一个Web应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和Markd ...

  5. 《C++编程思想》部分章节学习笔记整理

    简介 此笔记为<C++编程思想>中部分章节的学习笔记,主要是第15章--多态性和虚函数 的学习笔记,此外还有少量其他章节的内容. 目录 文档:<C++编程思想>

  6. Spring Cloud Alibaba(5)---Nacos(配置中心)

    Nacos(配置中心) 有关Spring Cloud Alibaba之前写过四篇文章,这篇也是在上面项目的基础上进行开发. Spring Cloud Alibaba(1)---入门篇 Spring C ...

  7. xPath,beautifulsoup和pyquery

    一.XPath from lxml import etree html = etree.parse('html源代码',etree.HTMLPaser()) 1.节点的获取 a.html.xpath( ...

  8. Weekly Contest 137

    1046. Last Stone Weight We have a collection of rocks, each rock has a positive integer weight. Each ...

  9. PHP laravel系列之Blade模版

    一.什么是Blade模版? Blade 是 Laravel 提供的一个既简单又强大的模板引擎. 和其他流行的 PHP 模板引擎不一样,Blade 并不限制你在视图中使用原生 PHP 代码.所有 Bla ...

  10. R3抹掉加载的DLL

    R3抹掉加载的DLL 原理类似于获取Kernel32.dll加载地址,知道这个东西也是在看获取Kernel32.dll地址的时候在网上搜索学习资料,无意中看到的这个东西.这个挺有用,结合着HiJack ...