当前位置:首页 > 经验 >

log和日志是一回事吗(log日志在哪里找)

来源:原点资讯(www.yd166.com)时间:2022-10-30 21:54:00作者:YD166手机阅读>>

一、系统日志

日志在所有应用系统中都占有极其重要的位置,本文主要介绍Linux系统内核的日志,另外还介绍了一些日志分析工具。

1. 说明

看Linux系统信息日志主要的两种途径:

  • dmesg,用来检测和控制内核环缓冲。
  • /var/log 下的文件
2. dmesg

Linux将系统启动信息传到ring buffer中,内核产生的信息由printk()函数打印出来。printk()函数打出的信息用数字表示消息重要级别,高于一定级别会打印到屏幕。

sudo dmesg > message.txt

打印最近一次的信息

sudo dmesg | tail -f

Linux系统启动后,由/etc/init.d/sysklogd先后启动klogd,syslogd两个守护进程。

- klogd:kernel,记录内核相关的日志​ - syslogd:service,记录应用程序的日志

3. klogd

使用klogd读取内核信息有两种方式:

  1. syslog()函数
  2. 读取/proc/kmsg/得到内核printk()发出的信息。

klogd的输出结果会传送给syslogd进行处理,syslogd会根据/etc/syslog.conf的配置把log信息输出到/var/log/下的不同文件中.

4. 常用的系统日志文件/var/log/boot.log

记录本次开机时的启动信息,包括内核检测硬件、各种内核支持的功能等。

/var/log/cron 计划任务的日志/var/log/dmesg

系统启动时,内核检测过程中产生的信息。

/var/log/lastlog

记录账号最后一次登陆信息。

/var/log/maillog或/var/log/mail/*

邮件往来记录。

/var/log/messages

记录很多信息,系统有问题时的必查文件。

/var/log/secure

记录一些账号登陆信息,如pop3、ssh、telnet、ftp登陆信息。

/var/log/wtmp,/var/log/faillog

成功与失败登陆的记录。

/var/log/httpd/*,/var/log/samba/*

一些网络服务产生的日志。

5. syslogd

syslogd是一个分发器,它将接收到的所有日志按照/etc/syslog.conf的配置策略发送到这些日志应该去的地方,当然也包括从klogd接收到的日志。klogd首先接收内核的日志,然后将之发送给syslogd。syslog函数原型:

syslog(priority, "%s", string);二、Rsyslog服务收集日志1. Rsyslog服务说明

Rsyslog是Linux下强大而安全的日志处理系统。

Rsyslog可以单机运行,也可以C/S方式运行。

  • 单机模式下,日志信息发送到本机的Rsyslog服务中,Rsyslog服务将日志记录到本地存储中;
  • C/S模式下,服务端和客户端都启动Rsyslog进程,客户端向服务端指定的Rsyslog端口发送日志。
2. 在Deepin或Ubuntu系统上安装Rsyslog

# 安装 sudo apt install rsyslog rsyslogd -v # 查看状态 systemctl status rsyslog.service # 重启 systemctl restart rsyslog.service # 启动 systemctl start rsyslog.service

log和日志是一回事吗,log日志在哪里找(1)

3. rsyslog.service的配置文件
  • /etc/rsyslog.conf
2.3.1 配置C/S工作模式服务端

配置文件:

vim /etc/rsyslog.conf ################# #### MODULES #### ################# # 开启UDP端口 module(load="imudp") input(type="imudp" port="514") # 开启TCP端口 module(load="imtcp") input(type="imtcp" port="514") # 可选配置--用于限制特定子网、IP等的访问 $AllowedSender TCP, 127.0.0.1, 10.10.10.0/8, *.xiem.com

服务器端要配置放行指定的端口号。

客户端

vim /etc/rsyslog.conf $PreserveFQDN on # 允许主机名保留FQDN ##Enable sending of logs over UDP add the following line: # 配置使用UDP发送消息 *.* @服务器ip或域名:514 # 添加远程RSYSLOG服务器 ##Enable sending of logs over TCP add the following line: # 配置使用TCP发送消息 *.* @@服务器ip或域名:514 # 配置当服务端不在线时的处理方式:进行本地缓存 $ActionQueueFileName queue $ActionQueueMaxDiskSpace 1g $ActionQueueSaveOnShutdown on $ActionQueueType LinkedList $ActionResumeRetryCount -12.3.2 查看日志

ls /var/log/rsyslog-client/2.3.3 查看服务端监听的端口

netstat -4altunp | grep 514三、logrotate 日志管理工具1. logrotate说明

logrotate是一个Linux系统日志的管理工具。它可以切割、压缩等其他软件的日志文件软件。logrotate是基于crontab运行的,所以这个时间点是由crontab控制的,其脚本是/etc/cron.daily/logrotate。Logrotate会调用配置文件/etc/logrotate.conf。可以在/etc/logrotate.d目录里放置自定义好的配置文件,用来覆盖Logrotate的缺省值。

2. CentOS使用logrotate切分nginx日志示例:

yum -y install logrotate

查看配置文件位置:

rpm -ql logrotate

其中:

  • /etc/logrotate.conf logrotate的配置文件是
  • /etc/logrotate.d/ 是用于存储其他配置文件的目录

我们主要用它来切分nginx日志。

vim /etc/logrotate.d/nginx

/var/log/nginx/*.log { daily rotate 7 missingok notifempty dateext compress sharedscripts postrotate if [ -f /run/nginx.pid ]; then kill -USR1 `cat /run/nginx.pid` fi endscript }

其中 /var/log/nginx/*.log /run/nginx.pid要以 log位置和nginx.conf里 pid的实际位置为准。

  • 生产服务器 pid /var/run/nginx.pid;
  • 测试服务器 pid /run/nginx.pid

手工运行:

/usr/sbin/logrotate -f /etc/logrotate.d/nginx /usr/sbin/logrotate -d -f /etc/logrotate.d/nginx四、logwatch日志分析工具

logwatch 是一个Perl编写的开源日志分析器,可以对原始的日志文件进行解析并转换成结构化文档。

五、logger

在写bash时可以用来记录标准日志信息。

六、阿里云日志服务

阿里云日志服务给集中化日志管理提供了一个新的解决方案。其服务类似于ELK(Elasticsearch、Kibana 和 Logstash),支持多种数据数据的接入。

log和日志是一回事吗,log日志在哪里找(2)

使用此服务需要在客户机安装阿里的logtail客户端。支持正则表达式等多种查询方式,也支持API接入。

栏目热文

log和nolog怎么区别(怎么知道自己是log还是nolog)

log和nolog怎么区别(怎么知道自己是log还是nolog)

告别安卓,拥抱鸿蒙告别Magic UI, 拥抱HarmonyOS荣耀X10内测申请通过了。这次,鸿蒙真的要来了,可以体验...

2022-10-30 22:36:17查看全文 >>

log和on log有什么区别(log版本和非log版本怎么分)

log和on log有什么区别(log版本和非log版本怎么分)

如今,视频拍摄已经成为不少人记录和拍摄的一种全新形式。而如照片拍摄RAW格式的普及,随着更多设备开始支持,视频Log模式...

2022-10-30 22:34:39查看全文 >>

用log和不用log对比(带log版本和不带log版本)

用log和不用log对比(带log版本和不带log版本)

上周,《阿凡达》重映了,不少网友二刷后惊喜地发现,原来11年前的电影里就出现“vlog”了啊,片中男主角的台词里多次提到...

2022-10-30 22:34:22查看全文 >>

log在什么情况下用(log的功能在哪里)

log在什么情况下用(log的功能在哪里)

一、log日志级别分类日志记录器(Logger)是日志处理的核心组件。log4j具有5种正常级别(Level)。优先级从...

2022-10-30 22:34:38查看全文 >>

log版本与不带log版本的区分(带log和不带log哪个好)

log版本与不带log版本的区分(带log和不带log哪个好)

在荣耀Magic V带着MagicUI 6.0发布了快一个月的时间后,荣耀俱乐部终于传来消息:荣耀Magic3系列正式开...

2022-10-30 22:02:02查看全文 >>

nolog和log有什么区别(怎么知道自己是log还是nolog)

nolog和log有什么区别(怎么知道自己是log还是nolog)

OPPOFindX5Pro作为OPPO今年主打旗舰,OPPO对其倾尽了心血。性能、影像、续航等都是行业内顶尖存在。目前O...

2022-10-30 22:13:46查看全文 >>

log怎么理解(log值是什么)

log怎么理解(log值是什么)

人与人之间最直接的沟通方式就是语言,也正是因为语言,我们才能成为万物之灵。世界上被统计出的语言就有百种之多,而覆盖范围是...

2022-10-30 22:34:08查看全文 >>

log与nolog的区别(带log和不带log哪个好)

log与nolog的区别(带log和不带log哪个好)

近日,ColorOS官微旗下的@ColorOS小助手官宣了一加 10 Pro、OPPO Find X5两款机型开启And...

2022-10-30 21:59:49查看全文 >>

什么情况下要用log(log和不带log有啥区别)

什么情况下要用log(log和不带log有啥区别)

2022年10月24日,首先祝所有程序员们(会写、会看代码的都算)节日快乐!1024是2的十次方,二进制计数的基本计量单...

2022-10-30 22:43:02查看全文 >>

文档排行