如何对zabbix mysql做分区表

如何对zabbix mysql做分区表,第1张

关于zabbix和MySQL分区表

-

支持zabbix

2.0和2.2,mysql在有外键的表不支持分区表。在zabbix

2.0和2.2中history和trend表没有使用外键,因此是可以在这些表中做分区的。

Index

changes:

1.如果zabbix的数据库已经有了数据,更改索引可能需要一些时间,根据具体的数据量,需要的时间长短也不一样。

2.在某些版本的MySQL索引的改变会使整个表上读锁。貌似mysql

5.6没有这个限制。

所述第一步骤是修改几个索引以允许做分区,按照下面的命令:

mysql>

Alter

table

history_text

drop

primary

key,

add

index

(id),

drop

index

history_text_2,

add

index

history_text_2

(itemid,

id)

Query

OK,

0

rows

affected

(0.49

sec)

Records:

0

Duplicates:

0

Warnings:

0

mysql>

Alter

table

history_log

drop

primary

key,

add

index

(id),

drop

index

history_log_2,

add

index

history_log_2

(itemid,

id)

Query

OK,

0

rows

affected

(2.71

sec)

Records:

0

Duplicates:

0

Warnings:

0

Stored

Procedures:

下面开始填写存储过程,需要执行下面的几个存储过程语句,只要能看到"Query

OK,

0

rows

affected

(0.00

sec)"只能就没有什么问题了。

做过Zabbix的同学都知道,Zabbix通过专用的Agent或者SNMP收集相关的监控数据,然后存储到数据库里面实时在前台展示。Zabbix监控数据主要分为以下两类:

历史数据:history相关表,从history_uint表里面可以查询到设备监控项目的最大,最小和平均值,即存储监控数据的原始数据。

趋势数据:trends相关表,趋势数据是经过Zabbix计算的数据,数据是从history_uint里面汇总的,从trends_uint可以查看到监控数据每小时最大,最小和平均值,即存储监控数据的汇总数据。

Zabbix可以通过两种方式获取历史数据:

1.通过Zabbix前台获取历史数据

通过Zabbix前台查看历史数据非常简单,可以通过Monitoring->Lastest data的方式查看。也可以点击右上角的As plain test按钮保存成文本文件

2.通过前台获取的数据进行处理和二次查询有很多限制,因此可以通过SQL语句直接从后台DB查询数据。

首先大家应该熟悉SQL语句Select 常用用法:

SELECT [ALL | DISTINCT] Select_List [INTO [New_Table_name]

FROM { Table_name | View_name} [ [,{table2_name | view2_name}

[,…] ]

[ WHERE Serch_conditions ]

[ GROUP BY Group_by_list ]

[ HAVING Serch_conditions ]

[ ORDER BY Order_list [ASC| DEsC] ]

说明:

1)SELECT子句指定要查询的特定表中的列,它可以是*,表达式,列表等。

2)INTO子句指定要生成新的表。

3)FROM子句指定要查询的表或者视图。

4)WHERE子句用来限定查询的范围和条件。

5)GROUP BY子句指定分组查询子句。

6)HAVING子句用于指定分组子句的条件。

7)ORDER BY可以根据一个或者多个列来排序查询结果,在该子句中,既可以使用列名,也可以使用相对列号,ASC表示升序,DESC表示降序。

8)mysql聚合函数:sum(),count(),avg(),max(),avg()等都是聚合函数,当我们在用聚合函数的时候,一般都要用到GROUP BY 先进行分组,然后再进行聚合函数的运算。运算完后就要用到Having子句进行判断了,例如聚合函数的值是否大于某一个值等等。

Zabbix Advance - Linux log monitor 日志监控(/var/log/messages,/var/log/secure,其它程序日志皆可) 原创

2020-09-11 10:43:40

2点赞

Fei-Huang

码龄12年

关注

文章目录

日志监控原理

本文档示例版本与官方使用文档

配置过程

一,被监控的主机上配置zabbix_agentd.conf

二,修改日志文件的权限

修改前日志文件的权限:

修改日志文件的权限

查看修改后的文件权限

三,配置zabbix web item页面(监控root用户登陆)

root用户登陆测试

配置告警(trigger)

最终配置

再次测试root登陆

日志监控原理

zabbix 监控日志,主要是用于监控日志中的关键字,遇到关键字后,zabbix agent 将日志发送给server。日志监控必需是agent active的监控项目

本文档示例版本与官方使用文档

官方文档链接

配置过程

一,被监控的主机上配置zabbix_agentd.conf

[root@GuangGu_Zabbix_proxy ~]# egrep -v "#|^$" /etc/zabbix/zabbix_agent2.conf

PidFile=/var/run/zabbix/zabbix_agent2.pid

LogFile=/var/log/zabbix/zabbix_agent2.log

LogFileSize=0

Server=X.X.X.X

ServerActive=X.X.X.X

Hostname=Zabbix_lOG

Include=/etc/zabbix/zabbix_agent2.d/*.conf

ControlSocket=/tmp/agent.sock

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9

ServerActive=X.X.X.X

Hostname=Zabbix_lOG

以上两个参数配置对日志很重要,agent active 在发送数据给server端时,会将配置文件中的hostname的值做为一个值携带给服务端,zabbix_server收到发送过来的数据后会主动匹配这个值,是否与自己配置的主机的hostname一致,一致即接收数据,放置在数据库中。

二,修改日志文件的权限

通常情况下,/var/log/目录下的系统日志文件只有root用户有相应的读写权限,而zabbix对这些文件需要有读取的权限,否则无法监控,所以在不更改属主属组的情况下,使用==“facl”== 添加文件权限比较合适,以下为示例:

修改前日志文件的权限:

[hostname]# ls -l /var/log/messages

-rw------- 1 root root 138063 Sep 11 08:10 /var/log/messages

1

2

1

2

只有root用户有读写权限,其它的用户均没有权限

修改日志文件的权限

setfacl -m u:zabbix:r-- /var/log/messages

1

1

查看修改后的文件权限

[root@GuangGu_Zabbix_proxy ~]# ls -l /var/log/messages

-rw-r-----+ 1 root root 193670 Sep 11 09:10 /var/log/messages

1

2

1

2

[root@GuangGu_Zabbix_proxy ~]# getfacl /var/log/messages

getfacl: Removing leading '/' from absolute path names

# file: var/log/messages

# owner: root

# group: root

user::rw-

user:zabbix:r--

group::---

mask::r--

other::---

1

2

3

4

5

6

7

8

9

10

11

1

2

3

4

5

6

7

8

9

10

11

user:zabbix:r-- 可以看到zabbix用户有r的权限了

但是这条命令只设置了当前的/var/log/messages的文件的权限,这个日志文件是会随日期滚动的所以还需要设置一下日志滚动后的zabbix用户的权限,此时还需要修改另外一个文件的内容:

[root@hostname~]# vim /etc/logrotate.d/syslog

/var/log/cron

/var/log/maillog

/var/log/messages

/var/log/secure

/var/log/spooler

{

missingok

sharedscripts

postrotate

/bin/kill -HUP `cat /var/run/syslogd.pid 2>/dev/null` 2>/dev/null || true

/usr/bin/setfacl -m u:zabbix:r-- /var/log/messages

endscript

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

1

2

3

4

5

6

7

8

9

10

11

12

13

14

logrotate 不是守护进程的服务,所以不需要重启

三,配置zabbix web item页面(监控root用户登陆)

key : log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>]

/var/log/messages 中 root 用户登陆的日志记录如下:

Sep 11 09:30:01 LOGMONITOR systemd: Started Session 6787 of user root.

1

1

几个注意点:

类型必需是“zabbix agent active”的

信息类型必需是“日志”型的

log[/var/log/messages, Started Session .* of user root.$,skip,]

root用户登陆测试

Sep 11 09:44:47 LOGMONITOR systemd-logind: New session 6789 of user root.

Sep 11 09:44:47 LOGMONITOR systemd: Started Session 6789 of user root.

Sep 11 09:44:47 LOGMONITOR systemd: Starting Session 6789 of user root.

1

2

3

1

2

3

以上三条是登陆产生的日志

查看zabbix监控的消息记录

点击“历史记录查看”

zabbix已经收到相关日志

配置告警(trigger)

配置告警思路:

只要zabbix收到相应条目的日志一次,就触发一次告警

收到告警后,如果60s内没有再次触发告警就消失

最终配置

再次测试root登陆

此告警60S后消失

文章知识点与官方知识档案匹配

CS入门技能树Linux入门初识Linux

24650 人正在系统学习中

打开CSDN APP,看更多技术内容

zabbix监控Linux进程方法_lihuaichen的博客

利用zabbixproc.num方法监控Linux服务进程 proc.num[<name>,<user>,<state>,<cmdline>] 监控用户某些状态的进程的数量 name- 进程名称 (默认“all processes”)user- 用户名 (默认 “all users”)state- 可用值:all(默认),run,sl...

继续访问

zabbix监控远程linux服务器基础 *** 作_今天摘太阳的博客_linu...

查看添加的监控主机的最新数据是否监控到数据。4. 通过web页面配置linux监控,添加监控主机及套用模板设置。 zabbix监控Linux流程 m0_52091913的博客 312 zabbix监控Linux流程,邮件警告 远程监控 linux服务器软件,如何从Web浏览器远程监控...

继续访问

log_monitor日志监控

对qps以及接口的平均耗时进行统计 特点 (1)轻量: 共219KB(代码量约300行), 无需安装,解压即可使用 (2)低侵入: 基于日志文件进行统计,无需修改原程序 使用说明 (1) 二进制包:下载工具包 log_monitor.tar.gz,并解压 (2) 源码编译:make 之后进行参数配置,可以拷贝现有的,各个参数说明如下: log_file=/data/nginx_logs/access.log log_reg=

(.∗)\+0800

(.∗)\+0800

time_format=%d/%b/%Y:%H:%M:%S retain_seconds=3600 http_port=3344 log_level=INFO log_file: 需要监控的日志的路径 log_reg: 需要匹配的日期以及耗时信息的正则表达式(需要加括号) time_format: 日志中日期的格式 retain_seconds: 统计数据保留时间 http_port: 用来通过页面展示统计数据的端口 log_level: log monitor的日志级别 启动 ./bin/log_monitor [conf_file_path] 查看 (1) 在控制台就可以看到系统实时的qps以及每一秒中接口的平均耗时情况 (2) 通过浏览器访问 http://${ip}:{http_port}/show.html

Zabbix监控之Linux命令行/Shell脚本解析json

本文主要写了在Linux下如何用Shell脚本解析json数据,以便于在Zabbix中添加适合于业务应用的监控项。为什么要使用json?json作为一种文本化的数据格式(文本化协议),符合UNIX编程的哲学,既符合透明性(透明性:设计可见,便于审查和调试)又符合文本性(文本性:数据应该保存为文本文件)。关键在于json对Web程序或者java程序非常友好,对于开发人员来说,他们也喜欢使用json数...

继续访问

linux启动zabbix服务,zabbix监控Linux系统服务_邓琨腾的博客

Zabbix自动发现规则监控Linux系统的service units 项目要求:通过systemctl命令查看Linux系统的service units监控前提:zabbix环境已搭建好监控原理:通过shell脚本把systemctl命令返回的结果以json格式发送到zabbix...

继续访问

zabbix自动监控linux进程,zabbix远程命令-监控进程停掉后自动重启应用...

6.在验证远程命令的可用性之后,在zabbix前端页面添加监控项,设置触发器,并添加执行远程命令的动作。 7.添加监控项: 自定义名称,类型为zabbix客户端,键值为proc.num[,,,httpd],其他自定义,点击添加。

继续访问

zabbix监控日志

zabbix监控日志

继续访问

linux的数据清洗视频,Zabbix监控历史数据清理

Zabbix监控运行一段时间以后,会留下大量的历史监控数据,Zabbix数据库一直在增大;可能会造成系统性能下降,查看历史数据室查询速度缓慢。Zabbix里面最大的表就是history和history_uint两个表,而且zabbix里面的时间是使用的时间戳方式记录,所以可以根据时间戳来删除历史数据一、关闭zabbix、http服务pkill -9 zabbixservice httpd stop...

继续访问

zabbix3.4监控linux磁盘使用率_一文看懂Linux全能型监控命令--dstat...

在linux上有top、free、iostat、vmstat、netstat等诸多监控系统各项性能的工具,如top,可以实时监控到系统负载、内存等使用情况,iostat能监控系统I/O情况,而vmstat可以得到关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息。不过今天主...

继续访问

Zabbix监控Linux进程方法

利用zabbix proc.num方法监控Linux服务进程 proc.num[<name>,<user>,<state>,<cmdline>] 监控用户某些状态的进程的数量 name - 进程名称 (默认“all processes”) user - 用户名 (默认 “all users”) state - 可用值: all (默认), run,sleep, zomb cmdline - 命令行过滤(正则表达时) 一、首先新建一个模板,在监控项条目中新

继续访问

关于/var/log/messages文件

/var 包括系统运行时要改变的数据。其中包括每个系统是特定的,即不能够与其他计算机共享的目录,如/var/log,/var/lock,/var/run。有些目录还是可以与其他系统共享,如/var/mail, /var/cache/man, /var/cache/fonts,/var/spool/news。var目录存在的目的是把usr目录在运行过程中需要更改的文件或者临时生成的文件及目录提取出来

继续访问

@Zabbix常用的监控命令及监控分析

文章目录一、面试技巧1.面试常问二、单机监控命令1.CPU 监控命令2.内存监控命令3.磁盘监控命令4.网络监控命令5.TCP11种状态监控命令6.生产场景需求7.系统的oom(out of memory)8.使用脚本监控nginx三、zabbix数据库拆分1.环境准备2.导出原MySQL中的zabbix数据3.准备新的数据库环境4.关闭原来的数据库测试5.修改连接数据库代码 一、面试技巧 1.面试常问 #1.面试官:你们公司监控是如何做的? 你:用zabbix 面试官:.... #2.面试技

继续访问

最新发布 zabbix日志监控: *** 作系统、业务系统、文件大小、多行日志

(一)监控 *** 作系统日志 (二)监控业务系统日志 (三)监控日志文件大小 (四)多行日志监控- Python脚本优化

继续访问

zabbix 时间错误_使用Zabbix来监控系统日志

在Linux系统上,日志文件通常可以分为四类:System Logs(系统日志)Event Logs(事件日志)Application Logs(应用程序日志)Service Logs(服务日志)一、为什么要监控日志?Linux为了跟踪和监视系统(内核)各个组件及应用程序运行状态而将产生的相关事件存储到日志文件中,当系统或者应用程序出现问题时,系统管理员能根据日志定位到问题。而通过监控Linux的...

继续访问

【Docker学习】13、使用 Docker/Docker-Compose 部署 Prometheus 监控组件

文章目录1、Prometheus 监控组件(1)Prometheus 监控 Linux(2)Prometheus 监控 Docker(3)Prometheus 监控 MySQL 1、Prometheus 监控组件 从上面的构建可以发现,现在已经可以监控当前Linux主机了,实际上能监控的内容很多,可以在官网查看,监控内容或社区查找 搭建各种组件的监控,首先需要找到提供数据的数据源,当然,Prometheus已经给我们写好了配置,我们只需要在找到对应的配置进行安装即可,Prometheus GitHub,例如

继续访问

Linux从入门到放弃 zabbix常见的linux监控命令

cpu top htop uptime vmstat 内存 free 磁盘 df iotop 网卡 iftop nethogs 系统进程 ps pstree

继续访问

zabix监控linux进程名称,zabbix监控Linux进程方法

利用zabbixproc.num方法监控Linux服务进程proc.num[,,,]监控用户某些状态的进程的数量name- 进程名称 (默认“all processes”)user- 用户名 (默认 “all users”)state- 可用值:all(默认),run,sleep,zombcmdline-命令行过滤(正则表达时)具体监控某一服务进程的方法一、首先新建一个模板,在监控项条目中新建一...

继续访问

zabbix监控Linux流程

zabbix监控Linux流程,邮件警告

继续访问

zabbix监控linux文件目录,zabbix之日志文件监控

一、日志item介绍下面介绍zabbix另一个“重量级”的功能——日志文件监控,它最主要的是监控日志文件中有没有某个字符串的表达式,对应日志轮转与否,zabbix都支持。在配置Item的时候,Type选择Zabbix agent (active),这里主要需要配置的是Key。下面是监控日志的两种key——log和logtr。log[/path/to/some/file,,,,,]logtr[/pa...

继续访问

监控linux日志,Zabbix日志监控:Linux异常登录告警

本文利用zabbix的日志监控功能监控Linux的secure日志,当有用户登录失败或者用户在非常规时间登录成功时发出告警。这里我们使用zabbix提供的'log[file,,,,,]'来监控Linux的/var/log/secure文件。先介绍下这个log监控项:1)监控项类型是Zabbix agent (active),返回数据类型是Log。2)Zabbix agent要对监控的日志文件有可读...

继续访问

Zabbix监控日志

创建监控项 创建触发器 验证 问题定位 创建监控项 注意要选择客户端主动式,使用主动式的时候无法使用zabbix-get工具调试 键值示例:log[/home/moa/log/smapd/smapd.log,”info”,,,skip,,] 说明:1、/home/moa/log/smapd/smapd.log表示日志路径 2、”info”表示匹配的关键字...

继续访问

zabbix监控日志关键字(ERROR)

前言:对我我这种刚入职场不久的小运维来说其实这个对我来说真的挺难得,研究了好久也在朋友的帮助下终于成功了,在此多谢我的朋友(倪伟)。 公司没有zabbix监控,领导让搭建一套zabbix然后让监控错误日志(关键字error),其实据说牛掰的大神可以监控到具体报错信息是什么,如有大神能编写出来欢迎指教。 因为就是想让他提醒一次就不在提醒了,所以脚本我写了半天(不擅长啊) 我zabbix搭建的过...

继续访问

热门推荐 Linux实时查看文件/var/log/messages以及这个文件的问题

耐心看完说不定有你遇到的问题 1./var/log/messages 首先说一下这个文件的存在,在Ubuntu系统中,这个文件你访问可能提示找不到这个文件 //使用tail命令访问 name@name:~$ sudo tail /var/log/messages tail:无法打开'/var/log/messages' 读取数据: 没有那个文件或目录 tail:没有剩余文件 可能会出现...

继续访问

Zabbix使用总结

1. CentOS 7上启动zabbix-server失败,/var/log/messages中的报错信息如下: Feb 22 12:56:43 mysql-server1 systemd: Starting Zabbix Server with MySQL DB... Feb 22 12:56:43 mysql-server1 kernel: zabbix_server[1599]: s

继续访问

zabbix监控linux历史命令

zabbix

写评论

评论

3


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10839735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存