当前位置: 首页 > 编程日记 > 正文

linux开发log示例,RH124-log Linux日志(示例代码)

课程笔记

#日志目录

[[email protected] log]$ ls /var/log/

amanda cron-20170531 glusterfs messages

#日志管理服务

[[email protected] log]$ systemctl is-active rsyslog.service

active

#日志服务配置文件

[[email protected] log]$ cat /etc/rsyslog.conf

# rsyslog configuration file

#### MODULES ####

#加载模块列表

#### GLOBAL DIRECTIVES ####

#全局指令

#### RULES ####

#规则

# The authpriv file has restricted access.

authpriv.* /var/log/secure

# 说明:authpriv.为事件名(系统内置的事件),authpriv.*的*为级别,/var/log/secure为事件对应的目录

#同步与非同步

# Log all the mail messages in one place.

mail.* -/var/log/maillog

#-/var/log/maillog的-表示非同步。没-是同步,有-是非同步(比较消耗内存)。

#emerg 严重级别,omusrmsg通告所有的用户

# Everybody gets emergency messages

*.emerg :omusrmsg:*

#journalctl 查看日志

[[email protected] yuq]# journalctl -f #查看最后10条

[[email protected] yuq]# journalctl -p emerg #查看emery级别日志

[[email protected] yuq]# journalctl -p err #查看err级别日志

[[email protected] yuq]# journalctl --since "18:00:00" #查看18点整以来的日志

[[email protected] yuq]# journalctl --since "17:00:00" --until "21:00:00" #查看17点整到19点整的日志

#日志同步到日志服务器

local5.info@192.168.26.140 # 192.168.26.200 配置

local5.info/var/log/yyy # 192.168.26.140 配置

[[email protected] yuq]# systemctl restart rsyslog.service #重启服务

#192.168.26.140配置开启远程日志接收:cat /etc/rsyslog.conf

# 远程UDP

# Provides UDP syslog reception

$ModLoad imudp

$UDPServerRun 514

# 远程TCP

# Provides TCP syslog reception

$ModLoad imtcp

$InputTCPServerRun 514

#不同服务器日志存进不同文件(192.168.26.140 配置)

:fromhost,isequal, "station1.rhce.cc" /var/log/station1

:fromhost,isequal, "station1.rhce.cc" ~ # ~:到此为止,不会在往下匹配,不加这行日志会匹配写入/var/log/messages

:fromhost,isequal, "station2.rhce.cc"/var/log/station2

*.info;mail.none;authpriv.none;cron.none /var/log/messages

#时间命令 date timedatectl

[[email protected] ~]$ timedatectl list-timezones | head 不同时区

[[email protected] ~]$ timedatectl set-timezone Asia/Shanghai 设置上海时间

[[email protected] ~]$ timedatectl set-time "2012-12-21 10:00:00"

[[email protected] ~]$ date

2012年 12月 21日 星期五 10:00:19 CST

#不同服务器时间同步

[[email protected] yuq]# cat /etc/ntp.conf

【Linux日志】系统日志及分析

Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并可以从中检索出我们需要的信息。

大部分Linux发行版默认的日志守护进程为 syslog,位于 /etc/syslog 或 /etc/syslogd 或/etc/rsyslog.d,默认配置文件为 /etc/syslog.conf 或 rsyslog.conf,任何希望生成日志的程序都可以向 syslog 发送信息。

Linux系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息,这些信息对管理员了解系统的运行状态是非常有用的,所以应该把它们写到日志文件中去。

完成这个过程的程序就是syslog。syslog可以根据日志的类别和优先级将日志保存到不同的文件中。

例如,为了方便查阅,可以把内核信息与其他信息分开,单独保存到一个独立的日志文件中。默认配置下,日志文件通常都保存在“/var/log”目录下。

日志类型

下面是常见的日志类型,但并不是所有的Linux发行版都包含这些类型:

类型说明

auth

用户认证时产生的日志,如login命令、su命令。

authpriv

与 auth 类似,但是只能被特定用户查看。

console

针对系统控制台的消息。

cron

系统定期执行计划任务时产生的日志。

daemon

某些守护进程产生的日志。

ftp

FTP服务。

kern

系统内核消息。

local0.local7

由自定义程序使用。

lpr

与打印机活动有关。

mail

邮件日志。

mark

产生时间戳。系统每隔一段时间向日志文件中输出当前时间,每行的格式类似于 May 26 11:17:09 rs2 -- MARK --,可以由此推断系统发生故障的大概时间。

news

网络新闻传输协议(nntp)产生的消息。

ntp

网络时间协议(ntp)产生的消息。

user

用户进程。

uucp

UUCP子系统。

日志优先级

常见的日志优先级请见下标:

优先级说明

emerg

紧急情况,系统不可用(例如系统崩溃),一般会通知所有用户。

alert

需要立即修复,例如系统数据库损坏。

crit

危险情况,例如硬盘错误,可能会阻碍程序的部分功能。

err

一般错误消息。

warning

警告。

notice

不是错误,但是可能需要处理。

info

通用性消息,一般用来提供有用信息。

debug

调试程序产生的信息。

none

没有优先级,不记录任何日志消息。

/var/log/syslog 或 /var/log/messages 存储所有的全局系统活动数据,包括开机信息。基于 Debian 的系统如 Ubuntu 在 /var/log/syslog 中存储它们,而基于 RedHat 的系统如 RHEL 或 CentOS 则在 /var/log/messages 中存储它们。

/var/log/auth.log 或 /var/log/secure 存储来自可插拔认证模块(PAM)的日志,包括成功的登录,失败的登录尝试和认证方式。Ubuntu 和 Debian 在 /var/log/auth.log 中存储认证信息,而 RedHat 和 CentOS 则在 /var/log/secure 中存储该信息。

日志文件详细介绍:

/var/log/boot.log

该文件记录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息,如图1所示:

/var/log/syslog

默认Centos,Fedora不生成该日志文件,但可以配置/etc/syslog.conf让系统生成该日志文件。

它和/etc/log/messages日志文件不同,它只记录警告信息,常常是系统出问题的信息,所以更应该关注该文件。

要让系统生成该日志文件,在/etc/syslog.conf文件中加上:*.warning /var/log/syslog 该日志文件能记录当用户登录时login记录下的错误口令、Sendmail的问题、su命令执行失败等信息。

该日志文件记录最近成功登录的事件和最后一次不成功的登录事件,由login生成。在每次用户登录时被查询,该文件是二进制文件,需要使用lastlog命令查看,根据UID排序显示登录名、端口号和上次登录时间。如果某用户从来没有登录过,就显示为"**Never logged in**"。该命令只能以root权限执行。简单地输入lastlog命令后就会看到类似图4的信息:

/var/log/wtmp

该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大,增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录,last命令就通过访问这个文件获得这些信息,并以反序从后向前显示用户的登录记录,last也能根据用户、终端tty或时间显示相应的记录。

/var/run/utmp

该日志文件记录有关当前登录的每个用户的信息。因此这个文件会随着用户登录和注销系统而不断变化,它只保留当时联机的用户记录,不会为用户保留永久的记录。系统中需要查询当前用户状态的程序,如 who、w、users、finger等就需要访问这个文件。该日志文件并不能包括所有精确的信息,因为某些突发错误会终止用户登录会话,而系统没有及时更新 utmp记录,因此该日志文件的记录不是百分之百值得信赖的。

以上提及的3个文件(/var/log/wtmp、/var/run/utmp、/var/log/lastlog)是日志子系统的关键文件,都记录了用户登录的情况。这些文件的所有记录都包含了时间戳。这些文件是按二进制保存的,故不能用less、cat之类的命令直接查看这些文件,而是需要使用相关命令通过这些文件而查看。其中,utmp和wtmp文件的数据结构是一样的,而lastlog文件则使用另外的数据结构,关于它们的具体的数据结构可以使用man命令查询。

每次有一个用户登录时,login程序在文件lastlog中查看用户的UID。如果存在,则把用户上次登录、注销时间和主机名写到标准输出中,然后login程序在lastlog中记录新的登录时间,打开utmp文件并插入用户的utmp记录。该记录一直用到用户登录退出时删除。utmp文件被各种命令使用,包括who、w、users和finger。

下一步,login程序打开文件wtmp附加用户的utmp记录。当用户登录退出时,具有更新时间戳的同一utmp记录附加到文件中。wtmp文件被程序last使用。

相关文章:

xamarin 断点 不命中

Async Debugging Breakpoints not being hit breakpoint in Android library project not hit when disable fastdebug and linking sdk assemblies only https://bugzilla.xamarin.com/show_bug.cgi?id17512转载于:https://www.cnblogs.com/zjoch/p/4836883.html

2022-2028年中国饮水机市场投资分析及前景预测报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国饮水机行业市场行业相关概述、中国饮水机行业市场行业运行环境、分析了中国饮水机行业市场…

编辑模式下,控制对象移动

有时候我们可能会有这样的需求,就是在编辑模式下,控制移动场景中的物体,这里面有两个点要解决: (1)怎么在编辑模式下运行一个脚本; (2)怎么有效地响应鼠标按键。 第一个问…

2019.07.16

三次握手TCP报文指针内容: 1.URG:紧急指针,当URG1,表明紧急指针字段有效,告诉系统报文有紧急内容。 2.ACK: 确认指针,当ACK1,确认号字段有效。 3.PSH:推送指针,当两个应…

3Dmax+V-Ray学习建筑可视化教程

3DmaxV-Ray学习建筑可视化教程 视频:19201080,. mp4,25 fps |音频:AAC-LC,253 kb/s 2通道,48.0 KHz |流派:电子学习 软件:3Ds Max |时长:5小时 |语言:英语中英文字幕(机译)|文件大小:3.2 GB …

linux的自定义input,Linux Input子系统之第一篇(input_dev/input_handle/input_handler)

Input子系统是linux kernel中与部分外围器件驱动联系比较紧密的模块,常用于Sensor,TP(touch panel),power key等器件的驱动。这类模块有个共同特点:字符设备,且数据量都不大,比如sensor一般最多只有xyz三个…

为什么不记录慢速查询?

㈠ 底:2014/8/18 13点37分收到前端说反馈有玩家掉线情况,检查CPU、慢查询、DB请求量,并未发现异常,DB表现一如往常。㈡ 定位原因:INSERT INTO t (col1, col2, col3, col4, col5, col6, col7) VALUES (3532082239485507…

docker常用命令详解

docker常用命令详解 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来。 根据自己的理解,总的来说分为以下几种: Docker环境信息 — docker…

Unity3D脚本属性

Unity3D的脚本属性用法: // JavaScriptscript AddComponentMenu ("Transform/Follow Transform") // CSharp [AddComponentMenu("Transform/Follow Transform")] 以下是具体说明(部分无关紧要的不翻译): Add…

Linux下查看.so和可执行文件是否debug编译

如何判断一个.so是否是debug编译的? 如果用此方法:用file来查看一个.so, 根据是否包含”not stripped”来判断该.so是否是debug编译的。然而stripped/not stripped并不是debug/release编译的判断标准. 对debug和release的.so运行file后可得出几乎相同的输…

UE商城资源 Motion Symphony 运动匹配插件

UE商城资源 Motion Symphony 运动匹配插件 Unreal Engine虚幻游戏引擎素材资源 Unreal Engine Marketplace –Motion Symphony 1.05 4.26运动交响曲插件 插件大小解压后:346M 资源大小共 2G 含官方文档 和官方使用视频教程(共100分钟 1920X1080 mp4 中…

linux下出现重定义,Oracle Online Redefinition在线重定义

在线重定义特性进行数据表Online的结构变动操作。本篇我们从一个较复杂的案例出发,讨论复杂变化情况下如何进行Online Redefinition,以及dbms_redefinition包各个关键方法的作用。3、一个分区表的重定义动作我们定义一个数据表T。SQL> create table t…

Lr IP欺骗设置

IP欺骗设置IP工具:IP Wizard 开启IP欺骗时会关闭DHCP(也就是关闭IP自动获取 更改为手动设置IP) 注:添加IP欺骗,和释放IP,都要重启机器后才会生效,IP Wizard要管理员身份运行; 在con…

2022-2028年中国异戊二烯橡胶产业竞争现状及发展规模预测报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国异戊二烯橡胶行业市场行业相关概述、中国异戊二烯橡胶行业市场行业运行环境、分析了中国异…

Mysql新安装服务启动失败

#备注如果新安装的mysql启动报错,请检查my.cnf文件的innodb_buffer_pool_size设置的值,最好为内存的总大小的70%。转载于:https://blog.51cto.com/azhuang/1553167

js实现图片上传本地预览

演示地址&#xff1a;https://xibushijie.github.io/static/uploadImg.html <!DOCTYPE> <html><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title>图片上传本地预览</title><style…

Unity增强现实初学者指南视频教程 A Beginner’s Guide to Augmented Reality with Unity

Unity增强现实初学者指南视频教程 A Beginner’s Guide to Augmented Reality with Unity MP4 |视频:h264&#xff0c;1280720 &#xff08;部分1920X1080&#xff09; |音频:AAC&#xff0c;44100 Hz 语言&#xff1a;英语中英文字幕&#xff08;根据原英文字幕机译更准确&a…

c语言中变量有什么作用是什么,C语言里面局部变量和临时变量有什么区别?

typedefexternstatic_Thread_localregister其中&#xff0c;除了 typedef (放在这里仅仅是为了描述语法方便)&#xff0c;其它几个(配合变量声明的位置)描述了的变量的 linkage 和 storage duration。但是 storage class specifier 跟 linkage / storage duration 并不是一一对…

Android Acitivity 生命周期

Fragment 的生命周期&#xff1a; Android Fragment 生命周期及其API使用&#xff08;建议使用自定义View替换Fragment&#xff09; Activity的生命周期&#xff1a; (1)启动Activity&#xff1a;系统会先调用onCreate方法&#xff0c;然后调用onStart方法&#xff0c;最后调用…

Docker入门六部曲——基本引导

原文链接&#xff1a;http://www.dubby.cn/detail.html?id8733 预备知识 虽然我们接下来还是会介绍很多概念&#xff0c;但是最好还是提前了解什么是Docker&#xff0c;和为什么你会使用Docker。 我们假设你对下面这些知识比较熟悉&#xff1a; IP地址和端口虚拟机编辑配置…

fragment切换事件

2019独角兽企业重金招聘Python工程师标准>>> 我使用fragment fragmenttabhost的时候&#xff0c;如果切换tab&#xff0c;对应的Fragment就会执行onDestroyView &#xff0c;再切换回来又会执行onCreateView()&#xff0c;如此反反复复。destroyView &#xff0c;c…

quartz关闭DBUG日志

使用quartz调度任务&#xff0c;每次启动产生大量debug日志&#xff0c;机器都要被累死了。 试过很多方法都不好使&#xff0c;包括在log4j.properties里配置 quartz源代码&#xff0c;发现它的日志输出用的是slf4j&#xff0c;而不是log4j,所以想到用logback.xml来控制。 把他…

UE卡通风格游戏场景制作视频教程

UE卡通风格游戏场景制作视频教程 UE卡通风格游戏场景制作视频教程 教程大小&#xff1a;4.53G 含项目文件 3840X2160 mp4 语言&#xff1a;英语中英字幕&#xff08;机译&#xff09; 本教程是关于UE4卡通渲染游戏环境场景制作训练视频教程&#xff0c;时长&#xff1a;4小时…

c语言顺序表有效元素长度,用C语言描述的顺序表类型

2.2.1 顺序表用C语言描述的顺序表类型如下所示&#xff1a;// 存储结构const int MAXLISTSIZE80; // 预设的存储空间最大容量typedef struct {ElemType *elem;    // 存储空间基址int length;      // 当前长度int listsize;     //允许的最大存储容量(以sizeof(E…

css样式之边框和内外边距

1、css样式之边框&#xff1a;border 实心的边框&#xff1a; <!DOCTYPE html><html> <head> <meta http-equiv"content-type" content"text/html;charsetutf-8"> <title>页面一</title> </head> <body>…

2022-2028年中国乙烷行业投资分析及前景预测报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新&#xff08;交付时间约3个工作日&#xff09; 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国乙烷行业市场行业相关概述、中国乙烷行业市场行业运行环境、分析了中国乙烷行业市场行业的…

SQL Server 中master..spt_values的应用

今天在做数据分析报表的时候遇到一个这样的问题。表结构如下。部门编码、部门名称、部门人员ID&#xff08;中间用逗号分割&#xff09;我想通过和人员表链接&#xff0c;查询出一个新的数据集&#xff0c;查询出的结果集格式如下&#xff1a;人员信息&#xff08;ID或者姓名&a…

ora-1031解决一例

今天建立了一个测试环境&#xff0c;打算再次测试logical standby的建制。在建制物理standby时&#xff0c;发现archive log无法传递到standby,手工可以。察看log,发现如下错误&#xff1a; Errors in file c:\oracle\product\10.2.0\admin\it\bdump\it_arcp_2116.trc: ORA-010…

Revit:概念建模环境技能学习 Revit: Conceptual Modeling Environment

Revit:概念建模环境技能学习 Revit: Conceptual Modeling Environment MP4 |视频:h264&#xff0c;1280720 |音频:AAC&#xff0c;44.1 KHz&#xff0c;2 Ch 云桥网络 平台huo取 教程 技能水平:高级|语言&#xff1a;英语中英文字幕&#xff08;根据原英文字幕机译更准确&…

1 23 456c语言,2014年计算机二级考试C语言模拟题(1)

2014年计算机二级考试C语言模拟题(1)21.下列程序的运行结果为(  )。#includemain(){struct date{int year&#xff0c;month&#xff0c;day;}today;printf("%d\n"&#xff0c;sizeof(struct date));}A.8B.6C.10D.1222.有以下程序&#xff1a;#include<struct s…