各种日志目录及介绍

linux系统日志目录(ubuntu为例):/var/log

/var/log/alternatives.log-更新替代信息都记录在这个文件中

/var/log/apport.log -应用程序崩溃记录

/var/log/apt/   -用apt-get安装卸载软件的信息

/var/log/auth.log  -登录认证log

/var/log/boot.log  -包含系统启动时的日志。
/var/log/btmp    -记录所有失败启动信息

/var/log/Consolekit  - 记录控制台信息

/var/log/cpus     - 涉及所有打印信息的日志

/var/log/dist-upgrade  - dist-upgrade这种更新方式的信息

/var/log/dmesg    -包含内核缓冲信息(kernel ringbuffer)。在系统启动时,显示屏幕上的与硬件有关的信息

/var/log/dpkg.log   - 包括安装或dpkg命令清除软件包的日志。

/var/log/faillog    - 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。

/var/log/fontconfig.log -与字体配置有关的log。

/var/log/fsck     - 文件系统日志

/var/log/faillog   -包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。

/var/log/hp/

/var/log/install/

/var/log/jokey.log

/var/log/kern.log –包含内核产生的日志,有助于在定制内核时解决问题。

/var/log/lastlog —记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。

/var/log/faillog –包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。

/var/log/lightdm/

/var/log/mail/ – 这个子目录包含邮件服务器的额外日志。

/var/log/mail.err    -类似于上面的

/var/log/news/

/var/log/pm-powersave.log

/var/log/samba/ –包含由samba存储的信息。

/var/log/syss.log

/var/log/speech-dispacher/

/var/log/udev

/var/log/ufw.log

/var/log/upstart/

/var/log/uattended-upgrades/

/var/log/wtmp —包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。

/var/log/xorg.*.log— 来自X的日志信息。

windows系统日志路径:C:\Windows\System32\winevt\Logs或者快捷搜索事件查看器在这里插入图片描述

Windows事件日志中共有五种事件类型,所有的事件必须拥有五种事件类型中的一种,且只可以有一种。五种事件类型分为:

  • 信息(Information)
    信息事件指应用程序、驱动程序或服务的成功操作的事件。
  • 警告(Warning)
    警告事件指不是直接的、主要的,但是会导致将来问题发生的问题。例如,当磁盘空间不足或未找到打印机时,都会记录一个“警告”事件。
  • 错误(Error)
    错误事件指用户应该知道的重要的问题。错误事件通常指功能和数据的丢失。例如,如果一个服务不能作为系统引导被加载,那么它会产生一个错误事件。
  • 成功审核(Success audit)
    成功的审核安全访问尝试,主要是指安全性日志,这里记录着用户登录/注销、对象访问、特权使用、账户管理、策略更改、详细跟踪、目录服务访问、账户登录等事件,例如所有的成功登录系统都会被记录为“ 成功审核”事件。
  • 失败审核(Failure audit)
    失败的审核安全登录尝试,例如用户试图访问网络驱动器失败,则该尝试会被作为失败审核事件记录下来。
    事件日志文件存储位置(Vista/Win7/Win8/Win10/Server2008/Server 2012及之后的版本)
    在这里插入图片描述

Apache日志路径:集成环境下在www\server\Apache\logs\access.log 正常情况下在/var/log/apache2/access.log

Apache的配置文件(httpd.conf)中是存在着 两个可调配 的日志文件的,这两个日志文件分别是 访问日志access_log(在Windows上是access.log)和错误日志error_log(在Windows上是error.log)。如果使用 SSL 服务的话,还可能存在 ssl_access_log和ssl_error_log 和 ssl_request_log 三种日志文件

  1. 远程主机IP:表明访问网站的是谁
  2. 空白(E-mail):为了避免用户的邮箱被垃圾邮件骚扰,第二项就用“-”取代了
  3. 空白(登录名):用于记录浏览者进行身份验证时提供的名字。
  4. 请求时间:用方括号包围,而且采用“公用日志格式”或者“标准英文格式”。 时间信息最后的“+0800”表示服务器所处时区位于UTC之后的8小时。
  5. 方法+资源+协议:服务器收到的是一个什么样的请求。该项信息的典型格式是“METHOD RESOURCE PROTOCOL”,即“方法 资源 协议”。 METHOD: GET、POST、HEAD、…… RESOURCE:
    /、index.html、/default/index.php、……(请求的文件) PROTOCOL: HTTP+版本号
  6. 状态代码:请求是否成功,或者遇到了什么样的错误。大多数时候,这项值是200,它表示服务器已经成功地响应浏览器的请求,一切正常。
  7. 发送字节数:表示发送给客户端的总字节数。它告诉我们传输是否被打断(该数值是否和文件的大小相同)。把日志记录中的这些值加起来就可以得知服务器在一天、一周或者一月内发送了多少数据。

mysql日志路径:/var/log/mysqld.log


MySQL有四种类型的日志:Error Log、General Query Log、Binary Log 和 Slow Query Log。

(1)第一种错误日志,记录MySQL运行过程ERROR,WARNING,NOTE等信息,系统出错或者某条记录出问题可以查看ERROR日志。

(2)第二种日常运行日志,记录MySQL运行中的每条请求数据。

(3)第三种二进制日志,包含了一些事件,这些事件描述了数据库的改动,如建表、数据改动等,也包括一些潜在改动,主要用于备份恢复、回滚等操作。

(4)第四种慢查询日志,用于MySQL性能调优。

--------------------------------------------------------------------------------
Error Log
MySQL错误日志默认以hostname.err存放在MySQL日志目录,如果不知道MySQL当前的错误日志目录可以使用查询语句:
mysql> show variables like 'log_error';
+---------------+--------------------------------------+
| Variable_name | Value                                |
+---------------+--------------------------------------+
| log_error     | /usr/local/var/mysql/mysql-error.log |
+---------------+--------------------------------------+
修改错误日志地址可以在/etc/my.cnf中添加--log-error[=file_name]选项来开启mysql错误日志。
错误日志记录了MySQL Server每次启动和关闭的详细信息以及运行过程中所有较为严重的警告和错误信息。
知道了MySQL错误日志地址,我们就可以查看MySQL错误日志:
2015-09-12 16:03:20 2624 [ERROR] InnoDB: Unable to lock ./ibdata1, error: 35
2015-09-12 16:03:20 2624 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.
2015-09-13 00:03:21 2183 [Note] InnoDB: Shutdown completed; log sequence number 426783897
InnoDB: Unable to lock ./ibdata1, error: 35 可以得出资源被抢占,有可能是开了多个MySQL线程。

--------------------------------------------------------------------------------
General Query Log
日常请求的SQL:
添加方式一样在 /etc/my.cnf 中添加 general-log-file[=file_name]。
在my.cnf中的mysqld下面添加:
general-log=on
general-log-file=/tmp/mysqlog

--------------------------------------------------------------------------------
Binary Log
启用Binlog
修改 /etc/my.cnf:
binlog_format = STATEMENT
binlog_cache_size = 2M
max_binlog_cache_size = 4M
max_binlog_size = 512M
log-bin = master-bin
log-bin-index = master-bin.index
log-bin-index 指向 master-bin 这个文件,记录有哪些分块的Binlog文件名。
log-bin 记录Binlog文件名前缀,后缀会用数字递增。
Binlog格式
Binlog有3种格式,STATMENT,ROW,MIXED。https://dev.mysql.com/doc/refman/5.1/en/binary-log-mixed.html
混合格式(mixed)会在适当时候切换row和statment格式,statment就是直接的SQL语句格式。
分析Binlog
通过MySQL自带的mysqlbinlog 命令,可以直接查看到Binlog转码数据:
mysqlbinlog /usr/local/var/mysql/master-bin.000117
得到:
# at 335
#150913  0:05:12 server id 1  end_log_pos 366 CRC32 0xa31b50db     Xid = 151
COMMIT/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
第一行包含日志文件偏移字节值(335)。
第二行包含:
  ● 事件的日期事件,MySQL会使用他们来产生SET TIMESTAMP
  ● 服务器的服务器id
  ● end_log_pos 下一个事件的偏移字节
  ● 事件类型,这里是Xid,常见的还有其他,例如:Intvar,Query,Stop,Format_desc
  ● 原服务器上执行语句的线程id,用于审计和CONNECTION_ID()
  ● exec_time对于master端的Binlog来说是执行这个event所花费的时间
  ● 原服务器产生的错误代码


  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值