Loading [MathJax]/jax/output/CommonHTML/fonts/TeX/AMS-Regular.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【老金知道】Zabbix日志监控前传:rsyslog收集网络设备日志

【老金知道】Zabbix日志监控前传:rsyslog收集网络设备日志

作者头像
Zabbix
发布于 2021-02-03 02:45:29
发布于 2021-02-03 02:45:29
5.8K0
举报
文章被收录于专栏:Zabbix中国官方Zabbix中国官方

之前,可爱又迷人的“反派”角色

老金

给大家分享了

Zabbix监控日志文件

▼▼▼

1、Zabbix日志监控表达式描述

2、Zabbix监控linux日志举例

3、Zabbix监控windows日志举例

4、日志监控题外话

点击跳转原文

此篇对日志采集做了外延,特此分享:

rsyslog收集网络设备日志

安装rsyslog

安装rsyslog

1. rpm -qa rsyslog #CentOS7默认会安装rsyslog

2. yum install rsyslog-mysql -y #rsyslog使用此模块将数据传入MySQL数据库,必须安装

导入rsyslog-mysql 数据库文件

导入数据库

1. # cd /usr/share/doc/rsyslog-7.4.7/

2. # mysql -uroot -p<mysql-createDB.sql # Enter password: ``` 设置用户 ``` # mysql -uroot –p mysql> grant all on Syslog.* to rsyslog@localhost identified by '123456';

3. mysql> flush privileges;

4. mysql> exit

导入数据库操作创建了Syslog 库并在该库中创建了两张空表SystemEvents 和SystemEventsProperties。

设置文件

1.# vi /etc/rsyslog.conf #按如下进行更改

2.

3. #### MODULES ####

4.

5. $Modload ommysql

6. $template MySQLInsert,"insert into SystemEvents (Message, Facility, FromHost,Priority, DeviceReportedTime, ReceivedAt, InfoUnitID,

7. SysLogTag) values ('%msg%', %syslogfacility%, '%fromhost-ip%', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::d

8. ate-mysql%', %iut%, '%syslogtag%')",SQL

9. *.* :ommysql:localhost,Syslog,rsyslog,123456;MySQLInsert

10.##注意我使用了%fromhost-ip%,而不是%HOSTNAME%

11. #localhost 表示本地主机,Syslog 为数据库名,rsyslog 为数据库的用户,MyNewPass4!为该用户密码。

12. $ModLoad immark # immark是模块名,支持日志标记

13. $ModLoad imudp # imupd是模块名,支持udp协议

14. $UDPServerRun 514 #允许514端口接收使用UDP和TCP协议转发过来的日志

配置日志文件记录

1. #$template logFormat, "%rawmsg%\n"

2. templateDynaFile,"/var/log/MONTHDAY%/%fromhost-ip%-%YEARMONTH%-%

3. $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

4. #$ActionFileDefaultTemplate logFormat

5. :fromhost-ip, !isequal, "127.0.0.1" -?DynaFile;RSYSLOG_TraditionalFileFormat

/var/log/messages不写入local4.none

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

最终配置,不搜集本机日志

1. $Modload ommysql

2.

3.

4. $template MySQLInsert,"insert into SystemEvents (Message, Facility, FromHost,Priority, DeviceReportedTime, ReceivedAt, InfoUnitID, SysLogTag,processid) values (

5. '%msg%', %syslogfacility%, '%HOSTNAME%', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::date-mysql%', %iut%, '%syslogtag%', '%fromhost-ip%')

6. ",SQL

7. :fromhost-ip, !isequal, "127.0.0.1" :ommysql:localhost,Syslog,rsyslog,123456;MySQLInsert

8.

9. #$template logFormat, "%rawmsg%\n"

10. templateDynaFile,"/var/log/MONTHDAY%/%fromhost-ip%-%YEARMONTH%-%

11. $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

12. #$ActionFileDefaultTemplate logFormat

13. :fromhost-ip, !isequal, "127.0.0.1" -?DynaFile;RSYSLOG_TraditionalFileForma

14. :fromhost-ip, !isequal, "127.0.0.1" ~ #后面忽略

15. #&~ #全部不做后续处理

16. *.info;mail.none;authpriv.none;cron.none;local0.none;local1.none;local2.none;local3.none;local4.none;local5.none;local6.none;local7.none /var/log/messages

网络设备

配置

1. 服务端修改

2. $ModLoad ommysql

3.

4. local4.* :ommysql:localhost,Syslog,rsyslog,123456;MySQLInsert

5.

6. 注意我是local4来接受远程的syslog

7.

8. 在交换机上的配置:

9.

10. 华为的:

11.

12. info-center loghost 1.1.1.1 facility local4 //local4要和rsyslog.conf 里配置的一致,1.1.1.1为你的syslog服务器地址记得要改啊

13. info-center loghost source Vlan-interface 11//你的网管VLAN接口,要改的

14. info-center source SHELL channel loghost log level notifications//我只想要操作日志,其他的不关心,如果你想要更多,请更改

15.

16. 思科的:

17.

18. logging 1.1.1.1(配置 syslog服务器地址,可以定义多个)

19. service timestamps debug datetime localtime show-timezone msec

20. service timestamps log datetime localtime show-timezone msec (syslog 信息包含时间戳)

21. logging facility local4 (定义 facility 级别,缺省为local7,可以设置从 local0 到 local7)

22. logging trap warning (定义severity 级别缺省为 infor 级别)

到这里,一切基本ok了,

到你的mysql服务器是看看:

select * from SystemEvents

应该已经记录有日志了

服务器客户端

配置

1. 检查客户端有没有安装rsyslog

2. # rpm -qa rsyslog

3. 配置rsyslog客户端发送本地日志到服务端

4. # vi /etc/rsyslog.conf

5. *.* @192.168.253.160 #在文件结尾处增加此内容

6. 重启rsyslog服务

7. # systemctl restart rsyslog.service

8. 编辑/etc/bashrc,将客户端执行的所有命令写入系统日志/var/log/messages中

9. # vi /etc/bashrc

10. export PROMPT_COMMAND='{ msg=Extra open brace or missing close bracey; });logger "[euid=(whoami)]":

11. 设置使其生效

12. # source /etc/bashrc

配置 显示

host ,ip

1. $template MySQLInsert,"insert into SystemEvents (Message, Facility, FromHost,Priority, DeviceReportedTime, ReceivedAt, InfoUnitID,

2. SysLogTag,processid) values ('%msg%', %syslogfacility%, '%HOSTNAME%', %syslogpriority%, '%timereported:::date-mysql%', '%timegenera

3. ted:::date-mysql%', %iut%, '%syslogtag%', '%fromhost-ip%')",SQL

4. *.* :ommysql:localhost,Syslog,rsyslog,123456;MySQLInsert

用processid 显示ip 然后再Admin center->FIELD—>processid->displayname 修改为IP

安装

LogAnalyzer

1. wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.6.tar.gz

2. tar zxf loganalyzer-3.6.5.tar.gz

3. cd loganalyzer-3.6.5

4. mkdir -p /var/www/html/loganalyzer

5. cp -a src/* /var/www/html/loganalyzer/

6. cp -a contrib/* /var/www/html/loganalyzer/

浏览器安装向导中安装

LogAnalyzer

打开浏览器访问

http://192.168.1.107/loganalyzer/

提示没有配置文件,点击 here 利用向导生成。

第一步,测试系统环境

点击 “Next”,进入第二步。

提示错误:缺少config.php 文件,并且权限要设置为666,可以使用contrib目录下的configure.sh 脚本生成。

查看configure.sh 文件内容

需要在/var/www/html/loganalyzer/ 下创建config.php 文件,并设置其权限为666。

1. # touch /var/www/html/loganalyzer/config.php

2.

3. # chmod 666 /var/www/html/loganalyzer/config.php

做完上面的操作之后,执行 ReCheck 操作,config.php 文件可写,点击 Next 进入下一步。

第三步,基础配置

在User Database Options 中,填入上面设置的参数,然后点击 Next.

第四步,创建表

点击 Next 开始创建表。

第五步,检查SQL结果

第六步,创建管理用户

第七步,创建第一个系统日志source.

注意SystemEvents大小写

第八步,完成

测试

LogAnalyzer 首页

点击任何一条记录,查看详情。

查看Statistics

登录测试

在Admin Center 里可以进行一些系统设置。

日志级别

在配置前,我们先来了解下日志的level: local0~local7 16~23保留为本地使用

emerg 0 系统不可用 alert 1 必须马上采取行动的事件 crit 2 关键的事件 err 3 错误事件 warning 4 警告事件 notice 5 普通但重要的事件 info 6 有用的信息 debug 7 调试信息

去掉(Donate)按钮

1. vim /var/www/html/loganalyzer/include/functions_common.php

2. 将下行改为false

3. $content['SHOW_DONATEBUTTON'] = false; // Default = true!

更换分析页面首页图示(Logo)

1 首先将准备好的logo放至images/main目录下。

2 编辑include/functions_common.php

3 修改如下路径:

4 content['BASEPATH'] .

5 "images/main/Header-Logo.png";

中文乱码

1. 找到含有return htmlentities字段的行;

2.

3. return htmlentities(content['HeaderDefaultEncoding']);// "UTF-8");

4.

5. 修改为:

6.

7. return htmlentities(content['HeaderDefaultEncoding']), "UTF-8");

汉化

下载链接:

https://pan.baidu.com/s/1BrK8oLAhPS5tmpBvyXDKFw 密码: 2cfm

加压后copy 到lang下面,设置web为chinese

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Zabbix开源社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
使用ELK收集网络设备日志的案例
基于上述原因,在当前的网络环境中搭建一台用于日志集中管理的Rsyslog日志服务器就显得十分有必要了。
没有故事的陈师傅
2019/11/15
5.9K7
ELK 部署可视化网络日志分析监控平台
随着机房内的服务器和网络设备增加,日志管理和查询就成了让系统管理员头疼的事。系统管理员通常面临问题如下:
Kevin song
2020/02/19
4.2K0
[ELK入门到实践笔记] 一、通过rsyslog搭建集中日志服务器
ELK 是elastic公司提供的一套完整的日志收集以及展示的解决方案,这是我在ELK学习和实践过程写下的笔记,整理成了一个ELK入门到实践的系列文章,分享出来与大家共勉。本文为该系列文章的第一篇,通过rsyslog搭建集中日志服务器,收集linux和window系统日志。
Bypass
2019/11/07
2.9K0
rsyslog的安装、使用、详解
Rsyslogd的配置文件是/etc/rsyslog.conf,一般在/etc目录下,先看看rsyslog client的配置:
sunsky
2020/08/20
2.9K0
rsyslog的安装、使用、详解
rsyslog详解实战和避坑
目标是要把线上环境的debug日志及集中化收集起来,一方面是方便开发调试;一方面是避免直接到线上环境查看,存在安全隐患。
sunsky
2020/08/20
10.6K0
rsyslog详解实战和避坑
Linux下使用Rsyslog搭建集中日志服务器
ryslog 是一个快速处理收集系统日志的程序,提供了高性能、安全功能和模块化设计。rsyslog 是syslog 的升级版,它将多种来源输入输出转换结果到目的地。
星哥玩云
2022/07/13
3.2K0
Linux下使用Rsyslog搭建集中日志服务器
搭建rsyslog日志服务器_syslog服务器
  rsyslog 是一个快速处理收集系统日志的开源程序,提供了高性能、安全功能和模块化设计。rsyslog 是 syslog 的升级版,它将多种来源输入输出转换结果到目的地, rsyslog 被广泛用于 Linux 系统以通过 TCP/UDP 协议转发或接收日志消息。
全栈程序员站长
2022/11/08
2.2K0
搭建rsyslog日志服务器_syslog服务器
Linux下rsyslog日志收集服务环境部署记录
rsyslog 可以理解为多线程增强版的syslog。 在syslog的基础上扩展了很多其他功能,如数据库支持(MySQL、PostgreSQL、Oracle等)、日志内容筛选、定义日志格式模板等。目前大多数Linux发行版默认也是使用rsyslog进行日志记录。rsyslog提供了三种远程传输协议:
星哥玩云
2022/07/13
2K0
Linux 日志服务器搭建(rsyslog+loganalyzer)
环境:CentOS 5.3 x32 日志服务器环境:nginx php mysql rsyslog rsyslog-mysql loganalyzer 日志客户端环境:rsyslog 日志服务器        192.168.0.100 日志客户端服务器  192.168.0.101
星哥玩云
2022/06/30
1.7K0
rsyslog详解
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/08
1.8K0
Linux下的rsyslog系统日志梳理(用户操作记录审计)
rsyslog 可以理解为多线程增强版的syslog。 在syslog的基础上扩展了很多其他功能,如数据库支持(MySQL、PostgreSQL、Oracle等)、日志内容筛选、定义日志格式模板等。目前大多数Linux发行版默认也是使用rsyslog进行日志记录。rsyslog提供了三种远程传输协议: UDP 传输协议 基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议; 可靠性比较低,但性能损耗最少, 在网络情况比较差, 或者接收服务器压力比较高情况下, 可能存在丢日志情况。 在对日
洗尽了浮华
2018/01/22
11.9K3
CentOS7下使用TCP over TLS方式安全传输远程主机系统日志
之前有介绍CentOS7下搭建Rsyslog Server记录远程主机系统日志,但由于syslog是UDP 514端口明文传输,基于安全考虑,可以采用TCP over TLS(SSL)方式传输日志
yuanfan2012
2021/02/25
2.1K0
CentOS7下使用TCP over TLS方式安全传输远程主机系统日志
rsyslog+mysql+loganalyzer 环境搭建日志服务器
# mysql -u syslog -h 192.168.2.11 -p      # 输入密码123456,测试是否能正常访问
保持热爱奔赴山海
2019/09/18
1.2K0
rsyslog+mysql+loganalyzer 环境搭建日志服务器
非常详细的rsyslogd & logrotate配置文件解析[通俗易懂]
rsyslog服务和logrotate服务 ====================================================================== rsyslog 是一个 syslogd 的多线程增强版。 现在Fedora和Ubuntu, rhel6默认的日志系统都是rsyslog了
全栈程序员站长
2022/09/21
2.3K0
rsyslog接收远程日志_rsyslog接收远程日志
在另外一种环境中,让我们假定你已经在机器上安装了一个名为“foobar”的应用程序,它会在/var/log下生成foobar.log日志文件。现在,你想要将它的日志定向到rsyslog服务器,这可以通过像下面这样在rsyslog配置文
全栈程序员站长
2022/11/09
5.2K0
rsyslog配置_ssh host key verification fail
Rsyslog的全称是 rocket-fast system for log,它提供了高性能,高安全功能和模块化设计。rsyslog能够接受从各种各样的来源,将其输入,输出的结果到不同的目的地。rsyslog可以提供超过每秒一百万条消息给目标文件。
全栈程序员站长
2022/11/08
5040
构建可视化日志管理服务器
我们可以通过集中式日志服务器将多台机器的日志收集在一个日志服务器,然后通过脚本或者其他方式去分析,但是真正做过运维的小伙伴明白,日子收集在硬盘上,硬盘的空间有限且大文件分析起来IO压力超级大,分析日志需要高超的技术,一般运维人员分析起来会很困难,更无法实时的去查看某个机器的日志。这样的话我们的日志收集就变成了真正意义上的收集了,收集起来如何利用就变成了一个难题,总结一下主要的问题就是以下几点:
星哥玩云
2022/09/15
5480
构建可视化日志管理服务器
rsyslog 时区问题
官方提供的镜像rsyslog/syslog_appliance_alpine无法获取时区信息。宿主机是东八区时区,但是rsyslog接收远程syslog日志存储时给的时间是UTC时间。
奇门水镜
2024/03/26
4960
日志服务器(5)
创建schema 根据提供的脚本,要预先定义好 schema 和相应表结构 [root@h105 ~]# cd /usr/share/doc/rsyslog-mysql-5.8.10/ [root@h105 rsyslog-mysql-5.8.10]# ls createDB.sql [root@h105 rsyslog-mysql-5.8.10]# wc -l createDB.sql 37 createDB.sql [root@h105 rsyslog-mysql-5.8.10]# cat creat
franket
2021/10/19
7780
MySQL 8.0 数据库审计日志平台部署
数据库审计平台(简称DB Audit),实时记录用户操作数据库的行为,对数据库操作进行细粒度审计的合规性管理,对数据库遭受到的风险行为进行实时告警。通过对用户访问数据库行为记录、分析和汇报,来帮助DBA事后生成合规报告、事故追根溯源,同时通过搜索技术提供高效查询审计报告,定位事件原因,以便日后查询、分析、过滤,实现加强内外部数据库网络行为的监控与审计,提高数据资产安全。
贺春旸的技术博客
2023/11/13
1.5K0
MySQL 8.0 数据库审计日志平台部署
相关推荐
使用ELK收集网络设备日志的案例
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档