zoukankan      html  css  js  c++  java
  • 日志管理

    其它的日志文件

    	/var/log/secure :	系统安装日志,文本格式,应周期性分析
    	/var/log/btmp :	当前系统上,用户的失败尝试登录相关的日志信息,二进制格式,lastb命令进行查看
    	/var/log/wtmp :	当前系统上,用户正常登录系统的相关日志信息,二进制格式,last命令可以查看
    	/var/log/lastlog : 	每一个用户最近一次的登录信息,二进制格式,lastlog 命令可以查看
    	/var/log/dmesg :	系统引导过程中的日志信息,文本格式,专用命令dmesg 查看
    	/var/log/messages :	系统中大部分的信息
    	/var/log/anaconda.* : 	anaconda的日志
    

    管理命令

    last,lastb

    		last, lastb - show listing of last logged in users
    		last,lastb [options] [name...] [tty...]
    			-f 	文件最后使用一个特定的文件来取代 /var/log/wtmp
    			-num   	指定最多显示多少行
    			-t YYYYMMDDHHMMSS 	显示指定时间的登陆状态
    			-f file 	指定要搜索的文件而不是 /var/log/wtmp.
    			-R     	取消主机名字段的显示
    			-a     	在最后一列中显示主机名,与下一标志结合使用
    			-d     	对于非本地登陆,Linux不仅存储远程主机的主机名,而且还保存其ip号码,此选项将ip号码转换回主机名。
    			-F     	显示全部的登陆和登出的时间和日期
    			-i     	此选项类似于-d,因为它显示远程主机的ip号,但它以数字和点数表示法显示ip号码
    			-o     	读取旧类型的wtmp文件 (written by linux-libc5 applications).
    			-w     	在输出上显示所有用户和域名
    			-x     	显示系统关机条目和运行级别更改
    

    lastlog

    		lastlog - reports the most recent login of all users or of a given user
    		lastlog [options]
    			-b, --before DAYS             	只打印比天数早的lastlog记录
    			-h, --help                    	显示帮助信息
    			-R, --root CHROOT_DIR         	directory to chroot into
    			-t, --time DAYS               	仅打印lastlog记录(最近几天)
    			-u, --user LOGIN              	打印指定登陆的lastlog记录
    

    journalctl

    		1》centos7上,Systemd有统一管理所有Unit的启动日志。带来的好处就是,可以只用journalctl一个命令,查看所有日志(内核日志和应用日志)。
    		2》日志的配置文件/etc/systemd/journald.conf
    		3》journalctl 用法
    			journalctl - Query the systemd journal
    			journalctl [OPTIONS...] [MATCHES...]
    				--system              	显示系统日志
    				--user                	显示当前用户的日志
    				-M --machine=CONTAINER   	在本地容器中操作
    				-S --since=DATE          	查看指定时间的日志
    				-U --until=DATE          	显示不比指定日期更新的条目
    				-c --cursor=CURSOR       	显示从指定游标开始的条目
    				--after-cursor=CURSOR 	显示指定光标后的条目
    				--show-cursor         	显示所有条目后的光标
    				-b --boot[=ID]           	查看系统本次启动的日志
    				--list-boots          	显示启动相关记录的简洁信息
    				-k --dmesg               	查看内核日志(不显示应用日志)
    				-u --unit=UNIT           	查看某个Unit的日志
    				-t --identifier=STRING   	显示具有指定的syslog标识符的条目
    				-p --priority=RANGE      	查看指定优先级(及其以上级别)的日志
    				-e --pager-end           	跳到页面结尾
    				-f --follow              	实时滚动显示最新日志
    				-n --lines[=INTEGER]     	显示尾部的最新几行日志,默认为10行。
    				--no-tail             	显示所有行,即使在接下来的模式中
    				-r --reverse             	首先显示最新的条目
    				-o --output=STRING       	更改日志输出的模式
    					(short, short-iso,short-precise, short-monotonic,verbose,export, json, json-pretty, json-sse, cat)
    				--utc                 	采用utc时间格式
    				-x --catalog             	添加可用的消息解释
    				--no-full             	Ellipsize 字段
    				-a --all                 	显示所有区域,包括长的和不可打印的
    				-q --quiet               	不显示私有告警
    				--no-pager            	日志默认分页输出,改为正常的标准输出
    				-m --merge               	从所有可用日志中显示条目
    				-D --directory=PATH      	从目录中显示日志文件
    				--file=PATH           	显示日志文件
    				--root=ROOT           	在根目录下对目录文件进行操作
    				--interval=TIME       	更改FSS密封密钥的时间间隔
    				--verify-key=KEY      	指定FSS核查密钥
    				--force               	使用设置键重写FSS密钥对
    				-h --help                	显示帮助
    				--version             	显示包版本
    				-F --field=FIELD         	列出指定字段所需的所有值
    				--new-id128           	Generate a new 128-bit ID
    				--disk-usage          	显示日志占据的硬盘空间
    				--vacuum-size=BYTES   	指定日志文件占据的最大空间
    				--vacuum-time=TIME    	指定日志文件保存多久
    				--flush               	从/run中刷新所有日志到/var
    				--header              	显示所有日志头部信息
    				--list-catalog        	在目录文件上显示所有信息ID
    				--dump-catalog        	在信息目录中显示所有条目
    				--update-catalog      	更新消息目录数据
    				--setup-keys          	产生新的FSS密钥对
    				--verify              	验证显示队列的一致性
    			示例:
    				查看所有日志(默认情况下  ,只保存本次启动的日志)
    					journalctl
    				查看内核日志(不显示应用日志)
    					journalctl -k
    				查看系统本次启动的日志
    					journalctl -b
    					journalctl -b -0
    				查看上一次启动的日志(需更改设置)
    					journalctl -b -1
    				查看指定时间的日志
    					journalctl --since="2017-10-30 18:10:30"
    					journalctl --since "20 min ago"
    					journalctl --since yesterday
    					journalctl --since "2017-01-10" --until "2017-01-11 03:00"
    					journalctl --since 09:00 --until "1 hour ago"
    				显示尾部的最新10 行日志
    					journalctl -n
    				显示尾部指定行数的日志
    					journalctl -n 20
    				实时滚动显示最新日志
    					journalctl -f
    				查看指定服务的日志
    					journalctl /usr/lib/systemd/systemd
    				查看指定进程的日志
    					journalctl _PID=1
    				查看某个路径的脚本的日志
    					journalctl /usr/bin/bash
    				查看指定用户的日志
    					journalctl _UID=33 --since today
    				查看某个 Unit  的日志
    					journalctl -u nginx.service
    					journalctl -u nginx.service --since today
    				实时滚动显示某个 Unit  的最新日志
    					journalctl -u nginx.service -f
    				合并显示多个 Unit  的日志
    					journalctl -u nginx.service -u php-fpm.service --since today
    				查看指定优先级(及其以上级别)的日志,共有8级 级
    					0: emerg
    					1: alert
    					2: crit
    					3: err
    					4: warning
    					5: notice
    					6: info
    					7: debug
    					journalctl -p err -b
    				日志默认分页输出,--no-pager  改为正常的标准输出
    					journalctl --no-pager
    				以 JSON  格式(单行)输出
    					journalctl -b -u nginx.service -o json
    				以 JSON  格式(多行)输出,可读性更好
    					journalctl -b -u nginx.serviceqq -o json-pretty
    				显示日志占据的硬盘空间
    					journalctl --disk-usage
    				指定日志文件占据的最大空间
    					journalctl --vacuum-size=1G
    				指定日志文件保存多久
    					journalctl --vacuum-time=1years
    

    logger

    		logger - a shell command interface to the syslog(3) system log module
    			logger makes entries in the system log.  It provides a shell command interface to the syslog(3) system log module.
    		logger [options] [message]
    			-T, --tcp             	仅使用tcp
    			-d, --udp             	仅使用udp
    			-i, --id              	记录进程id
    			-f, --file <file>     	记录指定文件内容
    			-h, --help            	显示帮助
    			-S, --size <num>      	单一信息的最大尺寸(default 1024)
    			-n, --server <name>   	写入到远程syslog服务上
    			-P, --port <port>     	使用端口来进行udp或tcp连接
    			-p, --priority <prio> 	使用此优先级来标记给定的信息
    			-s, --stderr          	按标准错误输出信息
    			-t, --tag <tag>       	用此标记标记每行
    			-u, --socket <socket> 	写入Unix socket
    
  • 相关阅读:
    看某视频开始做LINUX笔记的第一天
    shell作业01
    学习shell的第一天
    学python的第三天
    【安全】573- 大前端网络安全精简指南手册
    【JS】572- JS 经典实例收集整理
    【Vuejs】571- Vue 虚拟DOM和Diff算法源码解析
    【JS】570- 揭开 JavaScript 引擎的面纱
    【JS】569- 如何避免这4类 JavaScript 内存泄漏?
    【拓展】如何在Gihub上面精准搜索开源项目?
  • 原文地址:https://www.cnblogs.com/shenxm/p/8453973.html
Copyright © 2011-2022 走看看