当前位置: 首页 > article >正文

Zabbix企业级分布式监控系统

第一章:监控概念及Zabbix部署

监控概述

对于监控系统在企业架构中不是新的技术,但却是必不可少的重要组成部分,所谓无监控,不运维!

监控系统可以帮助运维、开发、测试等人员及时的发现服务器出现的故障,并及时的发送告警通知。

对于监控软件所应该具备的功能如下:

  • 指标数据采集(抓取)

  • 指标数据存储

  • 指标数据可视化

  • 故障告警功能

监控对象介绍

系统层监控

系统监控:CPU利用率、内存利用率、磁盘IO速度、进程数量、内核完整性等…

网络监控:网络设备进出口流量、工作负载、网络延迟、丢包率等…

服务软件监控

消息中间件:kafka、RocketMQ、RabbitMQ等…

Web服务容器:Nginx、Tomcat、httpd、docker、kubernetes等…

数据库及缓存系统:MySQL、PostgreSQL、MongoDB、Redis、ElasticSearch等…

存储系统:Ceph

业务层监控

例如电商网站销售量、转化率等

业务接口:登录数、注册数、订单量、支付数量等

Linux系统常用监控命令

以下命令是对系统的CPU、内存、硬盘、网络进行监控的命令

free #查看内存利用率

df #查看正在使用分区利用率

top # 查看系统健康状态(类似windows的任务管理器)

htop #与top相同,查看系统健康状态(系统不自带,在epel源提供)

uptime #查看cpu利用率

iftop #用于显示本机网络流量情况及相互通信的流量集合(默认系统不自带,需安装主包:iftop,依 赖包:flex byacc libpcap ncurses ncurses-devel libpcap-devel )

iostat # iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监 视 (默认系统不自带,需安装:sysstat)

iotop #与iostat类似, 用来监视磁盘I/O使用状况(默认系统不自带,需安装:iotop)

vmstat # 是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、 CPU活动进行监控 (默认系统不自带,需安装:sysstat)

netstat/ss # 用于显示各种网络相关信息,如网络连接,路由表,接口状态连接等

nethogs # 用来按进程或程序实时统计网络带宽使用率(默认系统不自带,epel源安装:nethogs)

ipmi #用于对服务器硬件进行监控(默认系统不自带,需安装:ipmitool)

常用的监控软件介绍

  • Nagios:本身只能做实时的数据监控,无法实现数据的持久化保存,致命缺点无法查询历史数据

  • Cacti:最初应用在机房做流量方面的监控,致命缺点没有故障告警功能

  • Ganglia:跟Cactii类似,致命缺点没有故障告警功能

  • Open-Falcon:小米公司开源的一款监控软件,目前还是比较冷门,很多中间件不支持监控(例如:httpd、Tomcat)

  • Zabbix:2012年诞生的一款分布式监控系统,功能完善(例如:数据存储、数据可视化、故障告警等)目前主要应用在传统的物理服务器、虚拟机、路由交换领域的监控

  • Promethues:2016年崛起的一款监控系统,功能完善(例如:数据存储、数据可视化、故障告警等)目前主要应用在容器领域的监控系统

付费的监控软件:

监控宝:https://www.jiankongbao.com/
博瑞:https://www.bonree.com/

Zabbix介绍

Zabbix 是C语言编写的企业级开源免费的分布式监控解决方案,可监控网络的众多参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的健康状况和完整性。

Zabbix 使用灵活的报警通知机制,允许用户为几乎任何事件配置基于电子邮件的警报。这允许对服务器问题做出快速反应。

Zabbix 可通过存储的数据提供出色的报告和数据可视化功能。

官网地址:https://www.zabbix.com/

Zabbix的版本介绍

  • zabbix稳定版:LTS代表稳定版,官方提供技术支持时间长达5年时间(免费)
  • zabbix标准版:不带LTS标签,官方提供技术支持时间7个月(免费)

Zabbix组件

zabbix agent:指标采集器,在被监控主机上采集指标数据,并将采集到的数据发送给zabbix server

zabbix server:负责接收agent发送的数据,统计数据、管理数据

zabbix database:用于存储所有zabbix的配置信息以及监控数据

zabbix web:管理员通过web界面管理、配置以及查看相关监控信息

zabbix-proxy:分布式监控,用来分担zabbix server的压力(不是必须)

Zabbix5.0安装步骤

主机名IP地址操作系统角色硬件环境
zbx-server自定义CentOS 7.6监控主机2C/4G
zbx-node01自定义CentOS 7.6被控主机2C/4G

平台选择

配置zabbix的仓库

提示:zbx-server主机操作

#安装zabbix5.0存储库(二进制安装方式)
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 

#安装zabbix软件包
yum install zabbix-server-mysql zabbix-agent -y
#下载CentOS的SCL仓库(提供zabbix前端所需的一些的软件包)
yum -y install centos-release-scl

#启用zabbix前端仓库
vim /etc/yum.repos.d/zabbix.repo
...
[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1   --启用仓库
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

#安装Zabbix前端软件包
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y
#zabbix-web-mysql-scl      用于连接数据库
#zabbix-apache-conf-scl    用于连接apache

#安装数据库软件(官方文档并没有提供安装数据库的部分)
yum -y install mariadb-server

#启动数据库服务并设置随机自启
systemctl start mariadb && systemctl enable mariadb


#进入数据库
mysql

#创建存储监控数据的库,并支持中文(库名:zabbix)
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;

#创建连接数据库的用户,并设置密码(用户名:zabbix)
MariaDB [(none)]> create user zabbix@localhost identified by '123456';

#数据库及用户授权
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost;


#在Zabbix服务器主机上,导入初始架构和数据。系统将提示您输入新创建的密码
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: 123456  --输入zabbix用户密码

#为Zabbix服务器配置连接数据库
vim /etc/zabbix/zabbix_server.conf
...
100 DBName=zabbix  	   #数据库名称(存储数据的仓库)
116 DBUser=zabbix  	   #连接数据库的用户(给zabbix程序用的一个身份)
124 DBPassword=123456  --设置zabbix用户密码

#为PHP配置正确的时区
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

...在文件的最后一行,删除注释,并改为正确的时区

 php_value[date.timezone] = Asia/Shanghai  --亚洲/上海

#启动所有服务并设置服务随机自启
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

Zabbix服务参数介绍

zabbix-server 端口:10051

zabbix-agent 端口:10050

zabbix server主配置文件:/etc/zabbix/zabbix_server.conf

zabbix agent主配置文件:/etc/zabbix/zabbix_agentd.conf

zabbix企业微信报警脚本路径:/usr/lib/zabbix/alertscripts

zabbix自定义监控项路径:/etc/zabbix/zabbix_agentd.d

zabbix日志文件路径:/var/log/zabbix/

登录ZABBIX WEB

从浏览器上访问Zabbix前端URL:http://server_ip/zabbix

环境检查

请确保这里的Check of pre-requisites必须全部项目OK后才能继续配置,如有提示fail,去server上检查是否安装这个包或配置是否按上述更改。

配置数据库连接

输入连接数据库所需的详细信息,Zabbix数据库必须先建立好。

Zabbix server服务器详情

请输入Zabbix服务器详情,可选的输入Zabbix服务器的名字,然而如果输入并提交了, Zabbix服务器的名字将会显示在菜单和页面的标题。

安装前总结回顾所有配置

完成安装

Zabbix前端已经安装完成! 超级用户名是 Admin, 密码 zabbix

为了防止暴力破解和词典攻击,如果发生连续五次尝试登陆失败,Zabbix接口将暂停30秒。

在下次成功登陆后,将会在界面上显示登录尝试失败的IP地址。

Web界面概览

侧边栏的垂直菜单可访问Zabbix前端各个部分。 菜单默认使用深蓝主题。

菜单可以整个折叠或隐藏:

  • 折叠, 单击Zabbix logo旁边的

  • 隐藏, 单击Zabbix logo旁边的

修改界面语言

左下角的用户基本资料

修改Admin密码

密码没有长度与复杂度要求,按照具体情况设置即可。

左下角的用户基本资料

创建组

zabbix并没有为单独用户设置主机管理权限,所有的权限都通过组进行统一分配,当用户加入到对应的组后,将权限分配到对应的组中即可继承组权限。

管理→用户群组→创建用户群组

增加用户

除了Admin超级管理员以外,还可以创建普通用户给公司其他员工使用。

管理(Administration) → 用户(Users)→创建用户(Create user)并指定群组

可以使用新用户登录验证。

添加监控主机

Zabbix对于主机的监控非常灵活,它可以是物理服务器、网络交换机、虚拟机、应用等。

提前准备好一台Linux主机,并安装zabbix-agent客户端程序。

#下载zabbix官方仓库
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

#安装zabbix agent
yum list zabbix-agent

#查询软件包安装到系统中文件
rpm -ql zabbix-agent
...
/etc/zabbix/zabbix_agentd.conf

#修改agent配置文件,定义zabbix server的地址
vim /etc/zabbix/zabbix_agentd.conf
...
117 Server=192.168.0.14  --指定zabbix server地址(谁可以监控我)

#启动服务并设置服务随机自启
systemctl start zabbix-agent && systemctl enable zabbix-agent

回到Zabbix server 的web界面,通过 配置(Configuration) → 主机(Hosts)→ 创建主机(Create host)以添加新的主机。

查看主机

检测→主机

灰色 表示主机状态尚未建立,尚未发生监控指标检查

icon_zbx_green.png 表示主机可用,监控指标检查已成功

icon_zbx_red.png 表示主机不可用,监控指标检查失败(将鼠标光标移动到图标上以查看错误消息)。可能是由于接口凭证不正确造成了通信问题。检查zabbix server是否正在运行,并稍后尝试刷新页面

模板概述

Zabbix为用户提供了很多开箱即用的模板,具体模板可通过配置 → 模板查看,模板大概分类如下:

网络设备的标准化模板):对交换机和路由器等网络设备进行监控, 网络设备本身(基本上是机框)和网络接口

  • 机框故障监控(电源,风扇和温度,总体状态)
  • 机框性能监控(CPU和内存项)
  • 机框资产收集(序列号,型号名称,固件版本)
  • 使用IF-MIB和EtherLike-MIB进行网络接口监控(接口状态,接口流量负载,以太网的双工状态)

HTTP模板:用于对很多服务的HTTP状态(UP/DOWN)进行监控,例如:Apache、Nginx等。

IPMI模板: 用于监视服务器硬件,如温度电压、风扇工作状态、电源状态等。

JMX模板: 用于监控Java应用程序。

ODBC: 用于数据库(MySQL、Oracle、PostgreSQL)的监控模板。

Zabbix agent 2:用于Ceph存储、Docker容器、Memcached、Mysql、Oracle、PostgreSQL、Redis等应用监控。

Zabbix agent:用于对Apache、HAProxy、Nginx、PHP-FPM、RabbitMQ、等应用监控。

除了上述模板外,Zabbix社区还提供了大量模板供用户免费下载

社区地址:https://share.zabbix.com/(也可通过界面左侧配置栏的Share直达)

友情提示:大部分监控模板已经在zabbix中提供,并且能够满足大部分监控需求。

新建模板

模版可以对监控项、触发器、图形等进行归类,当一个模版链接到一个主机后,主机会继承这个模版中的所有功能。

配置(Configuration) → 模版(Templates)创建模版(Create template)

模版名称:名称自定义,不支持中文。

群组:模版必须属于一个组,可以自建,可以使用zabbix提供的组。

新建应用集

模板中的应用集我们可以理解为监控项的分组,可以将相同类型的监控项分配到同一个应用集内。

配置 → 模板 找到对应的模板选择 应用集创建应用集

名称:自定义,支持中文。

新建监控项

监控项是Zabbix中获得数据的基础,没有监控项,就没有数据。

配置 → 模板 页面查找到我们自建的模板,点击模板中的 监控项然后 创建监控项

名称:名称自定义,支持中文。

CPU 1、5、15分钟平均负载监控项key

system.cpu.load[all,avg1]
system.cpu.load[all,avg5]
system.cpu.load[all,avg15]

完成后前往监测(Monitoring) → 最新数据(Latest data)查看具体细节。

模板导出

要导出模板,按照如下的操作:

配置(Configuration) → 模板(Templates)选中要导出模板的复选框,单击列表下面的 导出(Export) 按钮。

选中的模板被导出到本地的XML文件里,默认的名称是 zabbix_export_templates.xml

模板导入

要导入模板,按照如下的操作:配置(Configuration) → 模板(Templates)单击右上角的 导入(Import) 按钮,选择要导入的文件,标记导入规则里要求的选项,单击 导入(Import) 按钮

绑定模板

点击 配置 → 主机 找到你的主机,然后选择模板,选择好模板后,点击更新

监控数据

点击配置栏中的监测(Monitoring) →主机(host) →最新数据 (Latest data)以查看具体细节。

第一次获得的监控项值最多需要60秒才能到达。 默认情况下,这是服务器读取变化后的配置文件,获取并执行新的监控项的频率。 等待30秒以获得新的监控项值。

图表

当监控项运行了一段时间后,可以查看可视化图表,点击监控项后的图形(Graph)以查看图表。

解决Zabbix中文乱码

安装并更新字体

yum install -y wqy-microhei-fonts.noarch

update-alternatives --install /usr/share/zabbix/assets/fonts/graphfont.ttf zabbix-web-font /usr/share/fonts/wqy-microhei/wqy-microhei.ttc 10

update-alternatives --config zabbix-web-font

systemctl restart zabbix-server

刷新web界面即可

第二章:Zabbix故障告警

Zabbix故障告警概述

zabbix具备灵活的故障告警功能,允许用户几乎为任何的监控项配置基于电子邮件、短信、企业微信、钉钉等告警通知,这样管理员就可以快速响应服务器出现的问题。

E-mail报警

需要通过网页将邮箱的SMTP功能启动,然后新增授权码,然后获取到163邮箱SMTP服务器的地址。

前往管理(Administration) → 报警媒介类型(Media types)点击列表中的 Email 设置表单如下图:

解释:

  • 名称:Email为报警媒介类型名称

  • SMTP服务器:用于发送邮件的服务器

  • SMTP HELO:向服务器标识用户身份

  • SMTP电邮:用于发送邮件的账户

添加触发器

触发器会根据监控项的异常状态触发报警,而不需要我们直接在Zabbix前端进行查看,这就是通知的功能。

为监控项配置触发器,前往配置(Configuration) → 主机(Hosts)找到对应主机(New host)点击旁边的触发器(Triggers),然后点击创建触发器(Create trigger)

这个触发器,有下列必填项:

1)名称:自定义,可根据具体监控项名称作为名称。

2)表达式: 从 添加 按钮内选择具体的 监控项以及触发的条件。

3)严重性:根据具体情况定义即可。

完成后,点击添加(Add)。新的触发器将会显示在触发器列表中。

这个特定的表达式大致是说如果当前登录系统的用户数量超过2,就触发了问题的阈值。

测试触发器

随后我们可以在对应主机使用多个用户登录来验证该触发器,如果当前系统的用户数量超过了你在触发器中定义的阈值,这个问题将显示在监测(Monitoring) → 问题(Problems)中。

状态列如果闪烁意味着这个触发器状态最近30分钟内发生过变化。

在练习添加一个CPU的触发器,配置→ **主机 **点击 触发器 创建触发器

触发器的名称使用 CPU 1分钟负载过高

表达式具体写法

这个表达式的大致含义是说如果1分钟内,CPU负载的平均值超过10%,那么就触发了问题的阈值。

随后可以在对应主机模拟CPU忙碌来验证该触发器,具体问题将显示在监测(Monitoring) → 问题(Problems)中,也可在 监测最新数据 通过图形观察CPU状态

新建动作

为了建立一个报警通知,前往配置(Configuration) →动作(Actions),然后点击创建动作(Create action)

名称:动作的名称自定义且支持中文,一般设置成跟具体监控项或者触发器的名称含义一致即可,这样方便你清楚的知道具体是哪个监控项触发的告警。

条件:用于绑定对应的触发器

我们还需要定义这个动作具体做了什么 —即在 操作(Operations) 中配置具体的操作。

点击新建(New),将会打开一个操作表单。

先配置第一个操作,点击操作内的 添加

默认1小时情况下,例如:步骤1-3就是故障不恢复的的情况下一小时发送一次,发送三次停止,1-0是每隔一小时发一次,直到故障恢复。

下边是zabbix内置的用户自定义告警消息模板,用于指定发送告警的具体消息,将该内容复制到对应的参数内

故障告警:{EVENT.NAME}

告警主机: {HOST.NAME}
主机地址: {HOST.IP}
监控项目: {ITEM.NAME}
当前取值: {ITEM.LASTVALUE}
告警等级: {TRIGGER.SEVERITY}
告警时间: {EVENT.DATE}-{EVENT.TIME}
事件ID: {EVENT.ID}

接下来配置告警恢复操作,点击恢复操作内的 添加

下边是zabbix内置的用户自定义告警消息变量,用于指定故障恢复时,发送告警的具体消息,将该内容复制到对应的参数内

故障恢复:{EVENT.NAME}

主机地址: {HOST.IP}
告警名称: {EVENT.NAME}
持续时长: {EVENT.DURATION}
恢复时间: {EVENT.RECOVERY.DATE}-{EVENT.RECOVERY.TIME}
当前状态: {TRIGGER.STATUS}
当前取值: {ITEM.LASTVALUE}
事件ID: {EVENT.ID}

点击 添加(Add)动作就完成了。

检查对应的动作的状态为 已启用 状态

Report problems to Zabbix administrators(向zabbix管理员报告问题)状态无需启用,应为接下来我们会自定义收件人信息。

定义收件人

我们在定义一个外界的收件人邮箱,选择用户基本资料报警媒介 添加 收件人的邮箱,这个可以是实际工作中管理员的具体邮箱地址。

注意:该邮箱需开启邮件服务,开起方法可等录具体邮箱官网,从设置中开启。

一切准备就绪,点击更新即可。

小结:

1)E-mail:报警媒介类型,通过什么方式去发送报警消息;

2)触发器:用于为监控项内的指标数据定义阈值(条件);

3)动作:用于绑定具体触发器,当触发器被触发时,用于发送告警消息;

4)收件人:用于接收告警消息;

验证告警信息

接下来我们要在被控主机上模拟多个用户登录系统来触发这个告警动作。

监测(Monitoring) → 问题(Problems)中,可以看到闪烁 问题

验证是否会收到邮件通知!你的e-mail中,会收到一个问题通知。

常见问题分析:如果通知功能没有正常工作

  • 再次验证E-mail设置和动作设置已经被正确配置
  • 另外,你可以在报告(Reports) → 动作日志(Action log)中检查动作日志。

自定义触发器严重性

默认情况下,触发器的严重性以英文方式展示,可以在管理 → 一般 →触发器设置 中配置为中文。

点击 更新

动作日志

动作日志可以查看zabbix执行过的所有告警动作,通过报表动作日志查看

审计

审计用于记录我们在zabbix web上执行过的所有(造成改变)的行为,,通过报表审计查看

总结:

1.创建触发器(为监控项定义一个条件)

2.创建动作(跟触发器绑定,触发器一旦被触发,接下来就执行动作:可以是发送报警消息)

3.定义报警收件人

4.验证动作是否执行成功,通过动作日志查看

Zabbix企业微信报警

企业微信告警配置步骤:

  • 登录企业微信官网,准备zabbix企业微信的应用ID与密钥
  • 准备企业ID
  • 部门ID
  • 准备个人账号ID
  • 测试zabbix应用ID与企业微信接口是否可以正常建立连接
  • 准备企业微信报警脚本,并指定企业微信账号信息
  • 配置报警媒介
  • 测试告警

准备企业微信信息

登录企业微信:https://work.weixin.qq.com/

应用管理中查看zabbix应用ID及secret(密钥)

|

我的企业中查看企业ID

通讯录中查看部门ID及个人账号ID

登录微信企业接口调试网址测试zabbix应用能否访问企业微信:

https://open.work.weixin.qq.com/wwopen/devtool/interface/combine

zabbix应用ID:1000039

应用密钥:RdqTtbydSEoef5TxUEKbheHwoszwJklVNYCFpb7Rwes

企业ID:wwa78d6212da74fd51

个人账号ID: Yesir

部门ID:8

配置报警脚本

zabbix要求故障报警脚本必须放在指定路径,通过下边命令过滤配报警脚本的存放路径

egrep -v '^$|#' /etc/zabbix/zabbix_server.conf
...
AlertScriptsPath=/usr/lib/zabbix/alertscripts   //存放报警脚本路径

将脚本放至该路径添加执行权限

cd /usr/lib/zabbix/alertscripts/
chmod +x wechat.py  

修改脚本添加企业微信信息

vim wechat.py
...
 Data = {
        "touser": "User",          企业号中的用户帐号
        #"totag": Tagid,                                
        "toparty": Partyid,        部门ID                       
        "msgtype": "text",                             
        "agentid": "Agentid",      Zabbix应用ID
...

    Corpid = "wxaf"                 企业ID
    Secret = "aKDdCRT76"            Zabbix应用密钥
    #Tagid = "1"                                                               
    Agentid = "1000001"             Zabbix应用ID

安装python3.6

因为微信告警脚本是python写的,所以需要先安装python,系统预装python版本是2.7,实践会报错找不到模块,所以需要安装python3.6解决,但yum支持不了这么高版本的python,所以这里用源码安装python,然后装requests模块的时候也不要用系统预装的pip,用pip3。

yum -y install  python-requests zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

mkdir -p /usr/local/Python3
tar -xf Python-3.6.4.tgz
cd Python-3.6.4/
./configure --prefix=/usr/local/Python3 && make && make install

cd /usr/local/Python3
ln -s /usr/local/Python3/bin/python3.6 /usr/bin/python3
ln -s /usr/local/Python3/bin/pip3.6 /usr/bin/pip3
pip3 install requests

执行脚本测试:’收件人的微信账号‘ ‘信息标题’ ‘信息内容’

cd /usr/lib/zabbix/alertscripts/
./wechat.py Yesir test hello

测试时如果出现IP地址不信任的问题,例如下方提示:

ps://open.work.weixin.qq.com/devtool/query?e=60020'}
{u'errcode': 60020, u'errmsg': u'not allow to access from your ip, hint: [1660829875354963235117609], from ip: 111.164.201.247, more info at https://open.work.weixin.qq.com/devtool/query?e=60020'}

解决方法:

1)登录企业微信:https://work.weixin.qq.com/

2)点击应用管理找到zabbix应用

3)在页面最下方配置企业可信IP(把请求返回的ip设置到可信IP中,注意:IP每天都会变动,所以每天都要重新配置到企业可信IP里)

创建报警媒介

媒介是Zabbix中用于发送告警的方式,可以配置多种媒介类型,如:电子邮件、短信、自定义报警脚本、Webhook。

媒介类型在 管理媒介类型 中进行配置,点击 创建媒介类型 按钮来创建一个新的媒体类型。

下边三个脚本特定参数是zabbix内置,用于指定在发送消息时的收件人、消息主题、消息内容

{ALERT.SENDTO}        #收件人
{ALERT.SUBJECT}       #消息主题
{ALERT.MESSAGE}       #消息内容

自定义消息模板的步骤:

  • 消息模板 (Message template) 选项卡中,点击 添加 填写所需的 消息类型 主题 消息

下边是zabbix内置的问题消息模板,用于指定发送告警的具体消息。

告警信息:{EVENT.NAME}

告警主机: {HOST.NAME}
主机地址: {HOST.IP}
监控项目: {ITEM.NAME}
当前取值: {ITEM.LASTVALUE}
告警等级: {TRIGGER.SEVERITY}
告警时间: {EVENT.DATE}-{EVENT.TIME}
事件ID: {EVENT.ID}

完成后点击 添加 保存消息模板。

配置 问题恢复 消息

下边是zabbix内置的问题恢复消息模板,用于指定故障恢复时,发送告警的具体消息。

故障恢复:{EVENT.NAME}

主机地址: {HOST.IP}
告警名称: {EVENT.NAME}
持续时长: {EVENT.DURATION}
恢复时间: {EVENT.RECOVERY.DATE}-{EVENT.RECOVERY.TIME}
当前状态: {TRIGGER.STATUS}
当前取值: {ITEM.LASTVALUE}
事件ID: {EVENT.ID}

点击 添加 保存消息模板。

媒介类型测试

报警媒介类型 列表中找到企业微信报警 ,点击列表最后一栏中的 测试 (将打开一个测试窗口)测试配置好的媒介类型是否正常工作

获取通知

由于前边在学习邮件报警时已经配置过触发器及动作,可从 配置 → 主机 触发器页面查看前边配置的触发器。

可从 配置 → 动作 页面查看前边配置过的触发器动作

接下来添加微信收件人,点击 用户基本资料 → 报警媒介添加 企业微信收件人。

点击 更新

接下来我们使用多个终端同时登录来验证报警消息。

监测 → 最新数据 以查看具体值。

监测 → 问题 以查看具体问题通知。

报表 → 动作日志 以查看发送消息是否成功。

问题确认

Zabbix的问题事件可由用户确认,如果用户收到问题事件的通知,可以打开Zabbix的前端页面,从问题更新页面上找到对应的问题进行确认。当进行确认的时候,可以输入注释表明他们正在处理该问题,或者输入任何他们想表述的内容。

利用这种方式,如果有另一个系统管理员察觉到这个问题,就可以立刻知道该问题已经被确认过,并且看到之前留下的注释。

这样的问题处理工作流,可以让多个系统管理员协同工作。

提示: 要确认事件,用户必须至少具有相应触发器的读权限。

常见的问题确认方法:从左侧配置栏的 **监测 (Monitoring) → 仪表板 (Dashboard) → 问题 (Problems) **从确认小部件中确认状态。

配置CPU告警

由于前边已经配置了CPU 1分钟负载的触发器,在 配置→主机对应主机中的 触发器 查看。

新建动作

配置→动作中创建动作并绑定对应触发器。

操作 中,添加报警操作细节。

恢复操作 中,添加恢复操作细节。

配置完成后,点击 更新

验证告警信息

接下来在被控主机上模拟CPU负载来触发这个告警动作。

while :; do echo hello; done

第三章:Zabbix项目监控实战

本章学习部署LNMP架构并上线Discuz论坛项目,并通过Redis为论坛提供缓存服务,然后对论坛做网站数据统计,最后通过zabbix监控相关服务。

实现步骤:

  1. 部署LNMP架构

  2. 上线Discuz项目到LNMP架构

    Discuz!是一套通用的社区论坛软件系统

  3. redis为Discuz提供缓存

  4. 网站数据统计

    • 网站 IP: 1个IP是1台电脑

    • 网站 UV( unique visitor ): 是指浏览网站的实际用户, 如果以UV作为流量统计标准,可以更加准确的了解实际上有多少个访问者来访问了相应的页面。

    • 网站 PV( Page Views):即页面浏览量,用户24小时(0点到24点)内,每一次对网站中的网页访问均被记录一次,网站的PV从某种程度上已成为投资者衡量商业网站表现的最重要尺度,就像收视率之于电视。

    • 总结: 你可以这样想 1个IP是1台电脑,1个UV是1个人,假如在一个家庭里面,两口人使用自家电脑上网,老公访问了网站并注册了账号,从而被记录了一次IP,之后,老婆又访问了网站并注册了账号,这时,网站的流量统计系统将这样变化,IP不变、网站UV增加1、PV增加,通常网站UV数量是大于网站IP数量的。

部署LNMP架构

在zbx-client端部署LNMP架构

所需软件包:nginx php-fpm mariadb mariadb-server mariadb-devel php php-mysql

部署php-fpm与数据库

在zbx-client客户端主机部署

php-fpm 作为PHP进程管理程序。

#安装Mariadb-server及相关依赖
yum install mariadb mariadb-server php php-fpm php-mysql php-gd -y

修改 /etc/my.cnf 文件支持中文

vim /etc/my.cnf
[mysqld]
character-set-server=utf8  --手动添加

#启动服务并设置服务随机自启
systemctl start mariadb && systemctl enable mariadb

修改/etc/php-fpm.d/www.conf配置文件指定用户与组,并开启状态页面用于监控服务状态。

vim /etc/php-fpm.d/www.conf 
...
39 user = nginx
41 group = nginx

121 pm.status_path = /php_status    --取消注释(默认被注释)并改名为/php_status

修改配置/etc/php.ini 指定php时区

vim /etc/php.ini   
...
date.timezone ="Asia/shanghai"  --指定时区

部署Nginx

通过nginx官方仓库安装软件包,并开启nginx状态页面功能

#创建nginx仓库文件
vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true


#安装nginx
yum -y install nginx-1.22.0-1.el7.ngx.x86_64

修改 /etc/nginx/conf.d/default.conf 文件(提前做好配置文件备份)

cp /etc/nginx/conf.d/default.conf{,.bak}

#删除配置文件默认内容,替换为如下内容
cat /etc/nginx/conf.d/default.conf

server {
    listen       80;
    server_name  localhost;
    
    #开启nginx状态页面
    location = /status {    
    stub_status;
   }
   
    location / {
        root   /usr/share/nginx/html;
        index  index.php index.html index.htm;  
    }
    
    #配置nginx连接php
    location ~ \.php$ {
        root           /usr/share/nginx/html; 
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
    
    #开启php页面
    location /php_status {
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        include        fastcgi_params;
    }
}
#启动服务&设置服务随机自启
systemctl restart nginx php-fpm && systemctl enable nginx php-fpm

访问nginx状态页面:http://server_ip/status

访问php-fpm状态页面:http://server_ip/php_status

测试nginx与php之间的连接

vim /usr/share/nginx/html/phpinfo.php
<?php
phpinfo();
?>

访问:http://server_ip/phpinfo.php

测试php与mysql协同方式一:

vim /usr/share/nginx/html/mysql.php 
<?php
$con=mysql_connect("localhost","root","");
if(!$con){
        die("could not connect to the db:\n".mysql_error());
}
else{
        echo "success";
}
mysql_close($con);
?>

测试php与mysql协同方式二:

<?php
$con=mysql_connect("localhost","root","");
if(!$con) echo "error";
else echo "success";
?>

访问测试:http://server_ip/mysql.php

上线Discuz项目

上线Discuz项目到nginx网页目录:/usr/share/nginx/html/

#解压项目代码
cd /usr/share/nginx/html/

#解压项目
unzip Discuz_X3.3_SC_UTF8.zip 

#将项目文件移动至html
mv upload/* .

#修改项目文件归属为nginx
chown -R nginx:nginx .

访问Discuz:http://server_ip/

创建数据库并授权discuz用户

mysql
MariaDB [(none)]> create database discuz;
MariaDB [(none)]> grant all on discuz.* to discuz@localhost identified by '123456';

登录Discuz

使用管理员登录:用户名admin,密码123456

| 登陆后点击管理中心 |

| 输入管理员密码(密码:123456)后点击提交 |

| 点击 全局→性能优化→内存优化 |

默认不支持Redis缓存,Discuz是php语言开发,如需通过Redis加速,需要安装php连接Redis的扩展模块。

Redis为Discuz提供缓存

安装Redis(需要epel源)

yum -y install redis

安装php-pecl-redis扩展模块(该模块用于php连接redis)

可提前过滤对应软件包:yum list|grep php|grep redis

#安装(需要epel源)
yum -y install php-pecl-redis.x86_64

#重启php-fpm
systemctl restart php-fpm

查看模块

php -m 查看所有php模块,可结合grep过滤

php -m | grep redis
redis

再次刷新页面可看到以支持Redis

但是现在Discuz与Redis之间还没有建立连接,接下来配置Discuz连接Redis。

修改文件:/usr/share/nginx/html/config/config_global.php

vim /usr/share/nginx/html/config/config_global.php
...
19 $_config['memory']['redis']['server'] = '127.0.0.1';  #指定Redis服务器地址为本机
23 $_config['memory']['redis']['requirepass'] = '';      #如果Redis有密码需指定密码

启动Redis程序

systemctl start redis && systemctl enable redis

再次刷新页面可看到Discuz已经成功与Redis连接,并且已经利用Redis存储了数据。

当Redis为论坛加速后,用户在访问速度上会大大的提升。

如需查看Redis数据,可通过命令行进入数据库查看:

redis-cli
127.0.0.1:6379> keys *

网站数据统计

网站统计是对网站的访问信息记录并归类,例如:网站访问量、用户访问最高的时段、访问最多的网页、停留时间、用户使用的搜索引擎,主要关键词、来路、入口、浏览深度、所用语言、时区、所用浏览器种类、时段访问量统计分析、日段访问量统计分析以及周月访问量统计分析等,网站访问数据的基础分析。

网站统计为网站收集用户信息提高和改进网站建设具有重要意义,国内常用的统计网站有CNZZ、51la、百度统计、腾讯统计、站长统计、51yes、SiteFlow等。

Matomo介绍

不想用三方公司开发的统计系统,我们可以寻求自建统计系统,Piwik(后改名为:Matomo)就是一款知名度和美誉度比较高的免费开源的PHP统计系统,基本上可以满足中小型网站的日常统计需要。

Matomo采用PHP+MysqL构建,所以任何LNMP或者LAMP环境的Web服务器都可以运行。

Matomo官网: https://matomo.org/

Matomo部署

安装Matomo要求服务器至少满足以下条件:

支持 Apache、Nginx

PHP 版本至少是 5.5.9

MySQL\MariaDB版本至少是 5.5 或以上

检查nginx、php、MySQL版本是否符合安装条件

#zabbix agent端查看
mysql --version
php --version

默认情况下系统自带的php版本过低,需要对php进行升级, php高版本的yum源地址,有两部分,其中一部分是fedora源,另外一部分来自webtatic源。

#安装epel-release与webtaticy源
rpm  -Uvh   https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
 
rpm  -Uvh   https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

#为了防止centos上面发生php版本冲突,先清理以下本机自带的php相关软件
yum -y remove php*

#安装php72w及其它相关扩展(w表示软件来源于webtatic-release这个镜像源,安装上没什么需要注意的,哪个快用哪个,webtatic上php版本比较全)
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-pecl-redis php72w-xml

#重启php-fpm
systemctl restart php-fpm && systemctl enable php-fpm

#查看php版本
php --version

#查看php扩展模块(主要检查php连接MySQL与Redis模块)
php -m | egrep "redis|mysql"
...
mysqli
mysqlnd
pdo_mysql
redis

修改配置/etc/php.ini文件指定时区

vim /etc/php.ini   
...
date.timezone ="Asia/shanghai"   --在文件最后增加

修改/etc/php-fpm.d/www.conf文件指定用户与组,并开启状态页面。

vim /etc/php-fpm.d/www.conf
...
8 user = nginx
10 group = nginx
217 pm.status_path = /php_status    --取消注释(默认被注释)并改名为php_status

#重启php-fpm
systemctl restart php-fpm

配置matomo的站点

通过虚拟web主机方式部署matomo站点(基于域名)

创建nginx配置文件,可直接将下边内容复制到该文件:/etc/nginx/conf.d/matomo.conf

cat /etc/nginx/conf.d/matomo.conf

server {
    listen       80;
    server_name  web.matomo.com;       #配置访问域名

    location / {
       root /usr/share/nginx/matomo;  #指定站点目录
       index  index.php index.htm;     
    }

    location ~ \.php$ {
        root           /usr/share/nginx/matomo;  #指定站点根目录
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}


#重启服务
systemctl restart nginx

上线matomo项目

创建matomo站点目录并上传项目

mkdir /usr/share/nginx/matomo
cd /usr/share/nginx/matomo
unzip matomo-latest.zip
mv matomo/* .
chown -R nginx:nginx .

配置本地域名解析:C:\Windows\System32\drivers\etc

配置格式:server_ip web.matomo.com

Matomo页面初始化

浏览器访问测试:http://web.matomo.com/

登陆后可修改页面语言为:简体中文

Matomo将检查以确保您的服务器符合Matomo的要求。如果一切正常,您会看到一长串清单

按照提示删除多余文件后,点击下一步

为matomo创建数据库以及连接数据库用户

#创键库并授权用户
mysql 
MariaDB [(none)]> create database matomo;
MariaDB [(none)]> grant all on matomo.* to matomo@'localhost' identified by '123456';
填写表格后,单击下一步»

Matomo将必要的表添加到数据库中:

点击下一步»

超级用户是您在安装Matomo时创建的用户,该用户具有最高权限,选择您的用户名和密码:

填写信息,然后单击下一步»

输入您要跟踪的第一个网站的名称和URL。安装完成后,您可以添加更多网站。

网站名称:自定义

网站网址:网址填写自己搭建的Discuz论坛服务器地址!

点击下一步»

Matomo将向您发出一个JavaScript追踪标签,该代码必须出现在您要Matomo分析的每个页面上。

复制代码到Discuz论坛的第三方统计代码处。

管理中心→全局→站点信息,拉到最下边可看到网站第三方代码,复制代码,点击提交即可。

回到Matomo页面,请点击下一步»

单击继续到Matomo»,然后登录到仪表板!

首次登录会出现如上提示:

如果您的网站上正确安装了Matomo JavaScript跟踪标记,则您将收到实时分析数据。如果您没有收到任何数据,请确保已将Matomo Javascript代码复制并粘贴到您的网站页面上。

此时刷新论坛的浏览量后在查看Matomo页面会出现统计信息

到此为止,Matomo已经成功为Discuz做网站的数据统计。

自定义Nginx监控

自定义nginx访问量的监控项,首先要通过脚本将各种状态的值取出来,然后通过zabbix监控。

在zbx-client客户端主机操作

#创建目录,然后将脚本上传到该目录
mkdir /etc/zabbix/script/
cd /etc/zabbix/script
chmod +x ngx_status.sh 

#脚本内容主要是利用函数定义nginx状态页面的各个字段,然后结合awk进行取值,最后在通过case语句控制脚本输出
cat /etc/zabbix/script/ngx_status.sh 

#定义Nginx status页面
ngx_status="http://127.0.0.1/status"

#判断status页面是否存活
ngx_status_code() {
        http_code=`curl -o /dev/null -s -w %{http_code} ${ngx_status}`
        if [ ${http_code} == "200" ];then
                return 1
        else
                echo "Nginx status is not running."
        fi
}

#获取当前活动用户的连接数量
active() {
        ngx_status_code || curl -s ${ngx_status} | grep "Active" | awk '{print $NF}'
}

#获取接受的客户端连接数量
accepts() {
        ngx_status_code || curl -s ${ngx_status} | awk NR==3 | awk '{print $1}'
}

#获取处理的连接总数量
handled() {
        ngx_status_code || curl -s ${ngx_status} | awk NR==3 | awk '{print $2}'
}

#获取客户端请求的总数量
requests() {
        ngx_status_code || curl -s ${ngx_status} | awk NR==3 | awk '{print $3}'
}

#获取正在读取请求标头的当前连接数量
reading() {
        ngx_status_code || curl -s ${ngx_status} | grep "Reading" | awk '{print $2}'
}

#获取正在将响应写回到客户端的当前连接数量
writing() {
        ngx_status_code || curl -s ${ngx_status} | grep "Writing" | awk '{print $2}'
}

#获取当前正在等待响应的客户端连接数量
waiting() {
        ngx_status_code || curl -s ${ngx_status} | grep "Waiting" | awk '{print $2}'
}

#使用位置变量控制脚本输出
case $1 in
        active)
                active;;
        accepts)
                accepts;;
        handled)
                handled;;
        requests)
                requests;;
        reading)
                reading;;
        writing)
                writing;;
        waiting)
                waiting;;
        *)
                echo "Unknown options"
esac
#修改zabbix agent配置文件,开启自定义监控功能
vim /etc/zabbix/zabbix_agentd.conf 
...
311 Include=/etc/zabbix/zabbix_agentd.d/*.conf  --自定监控路径

330 UnsafeUserParameters=1    --改为1为开启自定义监控功能,默认该功能为关闭状态


#进入自定义监控路径
cd /etc/zabbix/zabbix_agentd.d/


#创建自定义监控文件(文件名要求以 .conf结尾)
vim nginx_status.conf

UserParameter=nginx.active,bash /etc/zabbix/script/ngx_status.sh active
UserParameter=nginx.accepts,bash /etc/zabbix/script/ngx_status.sh accepts
UserParameter=nginx.handled,bash /etc/zabbix/script/ngx_status.sh handled
UserParameter=nginx.requests,bash /etc/zabbix/script/ngx_status.sh requests
UserParameter=nginx.reading,bash /etc/zabbix/script/ngx_status.sh reading
UserParameter=nginx.writing,bash /etc/zabbix/script/ngx_status.sh writing
UserParameter=nginx.waiting,bash /etc/zabbix/script/ngx_status.sh waiting

#解释
UserParameter=   #自定义监控固定格式
nginx.active	 #监控项名称

#重启zabbix-agent服务
systemctl restart zabbix-agent

获取监控项数据

zabbix server端操作

#服务端下载zabbix-get软件包,用于在命令行获取客户端监控项的值
yum -y install zabbix-get

#获取客户端监控项(按照自己的环境修改IP)
zabbix_get -s 192.168.0.15 -k nginx.active	  --当前活动用户的连接数量
zabbix_get -s 192.168.0.15 -k nginx.accepts   --接收的客户端连接总数量
zabbix_get -s 192.168.0.15 -k nginx.handled   --处理的连接总数量
zabbix_get -s 192.168.0.15 -k nginx.requests  --客户端请求的总数量
zabbix_get -s 192.168.0.15 -k nginx.reading   --正在读取请求的连接数
zabbix_get -s 192.168.0.15 -k nginx.writing   --将响应反回客户端的连接数
zabbix_get -s 192.168.0.15 -k nginx.waiting   --客户端正在等待服务器的响应数量

接下来创建监控模板、应用集、监控项。

配置→模板 页面创建新的模板

| 配置 → 模板 页面找到我们自建的模板,点击模板中的 应用集 然后 创建应用集 |

| 点击模板中的 监控项 然后 创建监控项 |
|

当完成后,点击 添加(Add),新的监控项将出现在监控项列表中。

按照上述方法在将其余的监控项添加至模板中。最终的效果如下图:

绑定模板,转到 配置 → 主机 找到你的主机,把模板绑定到主机。

随后点击配置栏中的监测(Monitoring) → 最新数据 (Latest data)以查看具体细节。

自定义php-fpm监控

php-fpm 作为 PHP进程管理程序,我们也需要监控它的状态。

#查看php-fpm配置文件确保已经开启状态页面功能(搜索:status)
vim /etc/php-fpm.d/www.conf 
...
121 pm.status_path = /php_status    
#查看nginx配置文件确保可以访问php_status页面
vim /etc/nginx/conf.d/default.conf
...
    location /php_status {            #php状态页面     
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        include        fastcgi_params;
    }   

访问php状态页面:http://server_ip/php_status

pool:fpm池子名称,大多数为www
process manager:进程管理方式,值:static,dynamic or ondemand
start time:启动日期,如果reload了php-fpm,时间会更新
start since:运行时长
accepted conn:当前池子接受的请求数
listen queue:请求等待队列,如果这个值不为0,那么要增加FPM的进程数量
max listen queue:请求等待队列最高的数量
listen queue len:socket等待队列长度
idle processes:空闲进程数量
active processes:活跃进程数量
total processes:总进程数量
max active processes:最大的活跃进程数量(FPM启动开始算)
max children reached:进程最大数量限制的次数,如果这个数量不为0,那说明你的最大进程数量太小了,需要设置大点
slow requests 当启用了php-fpm slow-log功能时,如果出现php-fpm慢请求这个计数器会增加,一般不当的Mysql查询会触发这个值

自定义监控项方法与nginx类似

#上传脚本到/etc/zabbix/script路径并添加执行权限
chmod +x phpfpm_status.sh
#创建自定义监控项文件
cat /etc/zabbix/zabbix_agentd.d/phpfpm_status.conf
UserParameter=phpfpm_status[*],/bin/bash /etc/zabbix/script/phpfpm_status.sh "$1"
#重启zabbix agent服务
systemctl restart zabbix-agent

Zabbix Server获取监控项数据

#php-fpm运行时长
zabbix_get -s 192.168.0.15 -k phpfpm_status[start_since]

#当前接收的连接数
zabbix_get -s 192.168.0.15 -k phpfpm_status[accepted_conn]

#等待连接的请求数
zabbix_get -s 192.168.0.15 -k phpfpm_status[listen_queue]

#请求等待队列最高的数量
zabbix_get -s 192.168.0.15 -k phpfpm_status[max_listen_queue]

#socket等待队列长度
zabbix_get -s 192.168.0.15 -k phpfpm_status[listen_queue_len]

#空闲进程数量
zabbix_get -s 192.168.0.15 -k phpfpm_status[idle_processes]

#活跃进程数量
zabbix_get -s 192.168.0.15 -k phpfpm_status[active_processes]

#总进程数量
zabbix_get -s 192.168.0.15 -k phpfpm_status[total_processes]

#最大的活跃进程数量
zabbix_get -s 192.168.0.15 -k phpfpm_status[max_active_processes]

#进程最大数量限制的次数
zabbix_get -s 192.168.0.15 -k phpfpm_status[max_children_reached]

#php-fpm慢请求
zabbix_get -s 192.168.0.15 -k phpfpm_status[slow_requests]   

接下来创建模板、应用集、监控项、绑定模板与前边的nginx一样,此处不在重复演示,最终效果如下图:

自定义Redis监控

自定义监控项方法与nginx类似

#上传脚本到/etc/zabbix/script路径并添加执行权限
chmod +x redis_status.sh
#创建自定义监控项文件
vim /etc/zabbix/zabbix_agentd.d/custom_redis_status.conf
UserParameter=Redis.Info[*],/etc/zabbix/script/redis_status.sh $1 $2
UserParameter=Redis.Status,(redis-cli -h 127.0.0.1  -p 6379  ping)2>/dev/null |grep -c PONG
#重启zabbix agent服务
systemctl restart zabbix-agent

接下来创建模板、应用集、监控项、绑定模板与前边的nginx一样,此处不在重复演示,最终效果如下图:

自定义MySQL监控

percona官网: https://www.percona.com/

软件下载地址: wget https://www.percona.com/downloads/percona-monitoring-plugins/1.1.6/percona-zabbix-templates-1.1.6-1.noarch.rpm

安装percona

rpm -ivh percona-zabbix-templates-1.1.6-1.noarch.rpm 
...
Scripts are installed to /var/lib/zabbix/percona/scripts      --监控脚本安装路径
Templates are installed to /var/lib/zabbix/percona/templates  --监控模板安装路径

#查看监控模板路径
ls /var/lib/zabbix/percona/templates
userparameter_percona_mysql.conf       --监控项配置文件
zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml   --监控模板文件

#将自定义监控文件移动至/etc/zabbix/zabbix_agentd.d/自定义监控项目录
mv /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/

导入监控模板,验证模板是否可用,回到zabbix web界面通过 配置→模板→导入 将模板文件导入。

使用更高版本模板导入:

模板的规则默认即可,点击 导入 可看到已导入成功

通过配置→模板查看(搜索:mysql)具体信息

配置percona连接数据库

percona监控插件是php编写,通过php连接mysql数据库来获取相关的数据,需要为percona指定连接数据库的用户与密码。

#修改/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php文件指定用户与密码
ls /var/lib/zabbix/percona/scripts/
get_mysql_stats_wrapper.sh   --获取MySQL状态脚本
ss_get_mysql_stats.php       --php连接MySQL数据库脚本

#修改php脚本指定连接数据库用户与密码
vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
...
30 $mysql_user = 'root';       
31 $mysql_pass = '';        如果root用户没有密码,则留空即可
#重启zabbix agent服务
systemctl restart zabbix-agent

zabbix server 端命令行取值(具体值可从/etc/zabbix/zabbix_agentd.d/userparameter_percona_mysql.conf监控项文件中查看)

zabbix_get -s 192.168.0.15 -k MySQL.Sort-scan
0

所有的准备工作完毕以后,回到zabbix server的web界面就可以将模板绑定到具体的主机。

配置→主机 选择你希望绑定的主机后点击 **模板 **后进行更新。

具体监控项信息可通过检测→主机→最新数据中查看。

配置→主机→监控项找到MySQL的监控项,在第2页可看到一个不支持的提示,该监控项是监控MySQL主从同步状态,主要原因是zabbix用户在数据库中是不存在,所以无法获取具体的值。

如果需要监控主从同步状态,需要修改/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh脚本文件

将用户改为root即可(如果root用户没有设置密码,则不需要指定-p)。

回到web界面查看监控项状态。

具体取值数据可从 监测→最新数据 中查看

此时通过 监测→仪表板 查看时会发现一个问题通知,大致含义为主从状态为停止。

如果没有配置主从同步,通过 配置→主机→监控项,找到对应监控项关闭即可。

到此为止MySQL监控以完成。

有时间可以制作一个MySQL的监控模板(中文)只保留核心监控项目,没有必要的,停用掉!

第四章:Zabbix其他监控

Zabbix_Web监测

Web监测属于业务监测,模拟用户去访问网站,用来监测Web站点多方面的可用性,可以监控web站点的相关延迟,响应时间,下载时间等指标,从而判断网站Web服务的可用性。

案例需求:要求通过zabbix_web监测功能监控Discuz论坛的响应速度及下载速度。

1)创建web监测

通过左侧栏的 配置→主机 找到对应的主机点击 Web监测 后点击右上角的 创建Web场景

填写场景名称、应用集、更新间隔、尝试次数以及客户端,这些都可以自定义 。

2)配置步骤

随后点击步骤,配置第一步骤,配置如下图所示,步骤名称自定义,URL填写打开Discuz论坛时的网址链接
勾选 跟随跳转(不勾选会报301错误),超时时间默认15s,要求的状态码填200(多个状态码用英文逗号隔开即可,如:200,404,500),然后点击右下角 **添加 **添加步骤,再次点击 添加,成功添加新的Web场景。

3)查看Web监测

具体图形可通过 监测→主机,可以看到我们配置了WEB监测的主机,点击 Web监测1 ,稍等一分钟后可以看到有数据,说明配置无误。

Zabbix的SNMP监控

SNMP简单网络管理协议,是专门设计用于在 IP 网络管理、网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。

如果我们需要监控打印机、路由器、交换机、UPS等设备,肯定不能使用zabbix agentd,因为他们不能安装软件的,一般都支持SNMP协议,这样我可以使用SNMP来监控他们。

SNMP版本:

  • SNMP 版本 1 (SNMPv1) :第一个版本,不支持任何的认证功能。
  • SNMP 版本 2 (SNMPv2) :第二个版本,支持简单的认证口令(community)
  • SNMP 版本 3 (SNMPv3) : 此版本提高了安全性和隐私性

MIB介绍:

MIB(Management Information Base)信息管理库,通常与SNMP相关联,数据库是分层的(树形结构的),并且每个条目通过对象标识符(OID)来寻址,OID(Object IDentifiers)对象标识符,用来在MIB库中表示一个对象的指标。

MIB浏览器下载地址:http://www.ireasoning.com/download.shtml

通俗总结:

  • 想要通过Zabbix监控打印机、路由器、交换机等设备,需要通过SNMP协议获取数据
  • SNMP获取的数据来源需要从MIB信息管理库中进行获取
  • OID就是在MIB库中代表每一个可以监控的对象指标(例如:内存、CPU、网络等)

1)部署SNMP监控

本实验采用Linux系统模拟网络设备来演示SNMP监控,企业中需要网路工程师开启设备的SNMP功能即可。

准备一台新的虚拟机(或者node01)充当网络设备,安装SNMP服务

#安装net-snmp软件
yum -y install net-snmp

#修改配置文件
vim /etc/snmp/snmpd.conf
...
 40 #       sec.name  source          community
 41 com2sec notConfigUser  default       public      --认证口令(默认不需要修改)

 55 view    systemview    included   .1.3.6.1.2.1.1
 56 view    systemview    included   .1.3.6.1.2.1.25.1.1
 57 view    systemview    included   .1              --添加OID监控项(.1表示MIB库下所有监控项)

#启动SNMP服务
systemctl start snmpd

2)zabbix server安装工具取值

#安装net-snmp-utils客户端工具
yum -y install net-snmp-utils

#获取SNMP值格式:-v 指定SNMP版本,-c 指定口令(口令要求与配置文件一致)
snmpwalk -v 2c -c public 192.168.0.15

3)Web界面添加监控

配置→主机→创建主机

提示:指定IP地址后,其余参数默认即可,随后绑定监控模板。

配置后大约等待1m左右即可看到如下图状态,到此为止,zabbix监控SNMP配置完成。

Zabbix的Java监控

JMX监控可用于监控和管理Java应用程序,例如常见的Tomcat服务,从zabbix 2.0开始,JMX监视器Zabbix Java gateway专门用于监控Java程序,本实验已Tomcat程序为监控对象,来演示JMX监控。

1)部署Tomcat服务

准备一个新主机(或者使用现有的)部署tomcat

#安装jdk环境
yum -y install java-1.8.0-openjdk.x86_64

#将Tomcat解压
tar -xf apache-tomcat-8.0.30.tar -C /usr/local/
cd /usr/local/
mv apache-tomcat-8.0.30/ ./tomcat
cd tomcat

为Java应用程序启用远程JMX监控,Java应用程序不需要安装任何附加的软件,Tomcat应用需修改 catalina.sh 文件,添加如下参数,设置启动,以支持JMX监控

#catalina.sh文件文件位置在Tomcat项目中 bin/catalina.sh

vim /usr/local/tomcat/bin/catalina.sh
...
#搜索:Execute The Requested Command 在该行下添加上述参数(大约在250行左右)
# ----- Execute The Requested Command --------------------------------------
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Djava.rmi.server.hostname=192.168.0.15      --本机IP地址
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"

参数说明:

hostname:是监控tomcat所在服务器的ip地址

jmxremote.port:端口号,是要开启的监控端口号,12345为JMX默认端口

jmxremote.ssl:是否要开启ssl链接tomcat,false表示不开启

authenticate: false表示监控不须要用户和密码服务器

上述参数使得Java可以侦听来自本地主机12345端口上传入的JMX连接,并告知不需要身份验证或SSL,如过Tomcat开启SSL或身份验证,请参考下边地址进行配置:

JMX监控: https://www.zabbix.com/documentation/5.0/zh/manual/config/items/itemtypes/jmx_monitoring

启动Tomcat服务(Tomcat无需安装,直接启动服务)

#通过脚本启动服务
/usr/local/tomcat/bin/startup.sh 
netstat -ntlp | grep java

浏览器访问测试:http://server_ip:8080

2)zabbix server安装zabbix-java-gateway程序用于监控Java应用

yum -y install zabbix-java-gateway

zabbix-java-gateway服务参数:

  • 程序名:zabbix-java-gateway

  • 主配置文件路径:/etc/zabbix/zabbix_java_gateway.conf

  • 服务端口:10052

修改/etc/zabbix/zabbix_java_gateway.conf文件

vim /etc/zabbix/zabbix_java_gateway.conf
...
 35  START_POLLERS=5     --取消注释,定义开启的java_gateway工作线程数量(大于客户端数量)

修改zabbix server配置文件指定zabbix-java-gateway地址

vim /etc/zabbix/zabbix_server.conf 
...
296  JavaGateway=127.0.0.1   --取消注释,指定JavaGateway服务器地址(本机地址)
312  StartJavaPollers=5      --取消注释,定义zabbix server采集java_gateway数据的进程数量(大于java_gateway数量)

启动zabbix-java-gateway服务、重启zabbix server

systemctl restart zabbix-server && systemctl start zabbix-java-gateway && systemctl enable zabbix-java-gateway

3)zabbix添加JMX监控

配置→主机→创建主机
该模板为Java应用通用模板。点击更新

4)验证JMX监控,通过 **监测→最新数据 **中看到JMX的监控数据了

第五章:Zabbix监控方式

Zabbix自动发现

在企业集群环境中,当需要监控大量服务器时,zabbix提供的自动发现功能比手工的一台一台添加监控主机会更加的方便,自动发现可以自动扫描网络中的主机,并把满足条件的主机自动添加到监控中,并自动绑定监控模板,实现自动监控 。

环境准备:

主机名IP地址角色
zbx-node02自定义被控主机
zbx-node03自定义被控主机

在node02、node03主机安装zabbix agent程序(需做简单的环境初始化,例如:关闭防火墙与SELinux)

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 

yum -y install  zabbix-agent

在node02、node03主机分别修改配置文件指定zabbix server地址

vi /etc/zabbix/zabbix_agentd.conf
...
Server=server_ip          #指定zabbix server地址

启动zabbix agent服务

systemctl start zabbix-agent
systemctl enable zabbix-agent

创建发现规则 配置→自动发现创建发现规则,具体配置

| 发现规则用于指定目标主机的细节信息已方便zabbix server进行认证,规则配置 |


提示:system.uname键值是zabbix agent获取主机的基本常规数据。例如:主机名、内核版本、系统时间等。

可在zabbix server端通过 zabbix_get 进行查看:zabbix_get -s 192.168.0.113 -k system.uname


点击 添加 完成配置,上边配置项默认即可。

创建发现动作来发现主机,配置(Configuration)→动作(Action)

稍等片刻后,即可在检测→主机中查看到zabbix server已成功发现目标主机

如想查看具体自动发现的设备信息,可通过监测→自动发现查看

Zabbix自动注册

自动注册(Active agent auto-registration)与自动发现相反,自动注册是Zabbix Agent端主动向Zabbix Server发送被监控的请求,这样在对大量服务器进行监控的场景下可以降低Zabbix Server端的压力。

案例:通过自动注册添加监控主机。

本案例仍使用前边自动发现实验中的主机演示,需先将zabbix server自动发现与动作关闭,配置→自动发现 从状态选项中关闭自动发现

关闭自动发现动作,配置→动作 从状态选项中关闭动作

随后从 配置→主机 界面删除前边自动发现的主机。


node02修改zabbix agent配置文件开启自动注册模式

vi /etc/zabbix/zabbix_agentd.conf
...
#指定自动注册的主机IP
160 ServerActive=192.168.0.14

#该参数用于让zabbix server区分每一个agent节点(显示在监控列表中的名称)
171 Hostname=node02

#可选参数:主机源数据方便zabbix server在注册时进行认证(名称自定义)
190 # HostMetadata=linux     #取消注释
#重启zabbix agent服务
systemctl restart zabbix-agent

node03修改zabbix agent配置文件开启主动模式

vi /etc/zabbix/zabbix_agentd.conf
...
#指定自动注册的主机IP
160 ServerActive=192.168.0.14     

#该参数用于让zabbix server区分每一个agent节点(显示在监控列表中的名称)
171 Hostname=node03

#可选参数:主机源数据方便zabbix server在注册时进行认证(名称自定义)
190 # HostMetadata=linux     #取消注释
#重启zabbix agent服务
systemctl restart zabbix-agent

接下来在web界面配置自动注册功能:配置→动作→自动注册( Autoregistration actions )→创建动作

添加后,在 检测→主机 可查看到该主机是否被监控:

Zabbix Proxy分布式监控

当监控的服务器成千上万时,对于Zabbix Server的压力会很大,所以就有了分布式Zabbix Proxy代理监控来分担Zabbix Server的压力,代理服务器统一收集Agent端数据后返回给Zabbix Server。

主机名IP地址
zbx-proxy代理
zbx-proxy-node01被控主机

部署zbx Proxy

#修改主机名
hostnamectl set-hostname zbx-proxy

#准备zabbix仓库
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

#安装zabbix proxy软件(需要连接数据库)
yum -y install zabbix-proxy-mysql

#部署数据库(用于存储agent指标)
yum -y install mariadb-server && systemctl start mariadb && systemctl enable mariadb

#授权数据库
mysql
create database zabbix_proxy;
grant all on zabbix_proxy.* to zabbix_proxy@localhost identified by '123456';

#查询初始数据结构表
rpm -ql zabbix-proxy-mysql
...
/usr/share/doc/zabbix-proxy-mysql-5.0.27/schema.sql.gz

#导入初始数据结构表
zcat /usr/share/doc/zabbix-proxy-mysql-5.0.27/schema.sql.gz | mysql -uzabbix_proxy -p123456 zabbix_proxy

#配置zabbix proxy连接数据库
vim /etc/zabbix/zabbix_proxy.conf
...
30 Server=192.168.0.14   --指定zabbix server地址
49 Hostname=zbx-proxy    --指定本机名称(自定义),用于zabbix server区分每一个proxy节点
173 DBName=zabbix_proxy  --指定数据库名(与数据库创建的库名保持一致)
188 DBUser=zabbix_proxy  --指定连接数据库用户名(与数据库授权用户名称保持一致)
196 DBPassword=123456    --指定用户密码

#启动zabbix proxy服务
systemctl start zabbix-proxy && systemctl enable zabbix-proxy

#查看服务端口
netstat -ntlp
tcp    0  0 0.0.0.0:10051   0.0.0.0:*    LISTEN      18235/zabbix_proxy 

到此为止 zabbix proxy配置完毕。

部署zbx-proxy-node01

#修改主机名
hostnamectl set-hostname zbx-proxy-node01

#安装zabbix agent程序
rpm -ivh zabbix-agent-5.0.0-1.el7.x86_64.rpm

#修改配置文件指定zabbix proxy地址
vim /etc/zabbix/zabbix_agentd.conf
...
119 Server=192.168.0.33       --指定zabbix proxy地址
171 Hostname=zbx-proxy-node01 --本机名称,用于zabbix proxy区分每一个agent节点

#启动zabbix agent
systemctl start zabbix-agent  && systemctl enable zabbix-agent

Zabbix server添加代理:管理 → agent代理程序 →创建代理

添加代理后,如果出现从未 红色提示信息,是zabbix server还没识别到代理节点,可稍等片刻。

接下来Zabbix Proxy添加Agent 配置→主机→创建主机 指定Agent节点信息,如下图:

绑定模板后,点击 添加

验证:到此为止,Zabbix Proxy分布式监控已配置完成。

第六章:Zabbix可视化

简单图表

Zabbix提供了简单的数据图表,用户无需进行任何配置即可查看指标数据,在监控 → 主机→最新数据,然后单击相应监控项目的图形即可查看:

自定义图表

顾名思义,自定义图表提供自定义功能,如果你想更改图表样式或线条的显示方式或比较多个项目,你需要一个自定义图表。

要创建自定义图表,转到 配置→主机(或模板)单击所需主机或模板旁边的行中的 图形在图表屏幕中单击 创建图表

范围描述
名称唯一的图形名称,为了见名之意,通常按照具体监控类型命名。
图形宽度(仅用于预览和饼图/分解图)
图形高度
查看图例以显示图形
查看工作时间非工作时间将以灰色背景显示(不适用于饼图和分解饼图)
查看触发器如果监控项设置了触发器,会在图形中以黑色线条显示触发器(不适用于饼图和分解饼图)

每次的调试都可以通过图形里的预览进行查看

当配置完成后点击添加/更新以完成创建。

查看图形数据方式可通过 监测→主机 在主机信息内的图形页面查看

创建nginx状态图形

通过检测→主机→图形查看

Ad-hoc 临时图

一个简单的图表适合查看一个指标数据,而自定义图表提供了可以按照自己的需求去自建图形,但两者都不允许快速创建多个项目的比较图表,为了解决这个问题,从 Zabbix 2.4 开始,可以以非常快速的方式为多个项目创建临时图。

要创建临时图,请执行以下操作:

  • 转到 监测→最新数据
  • 勾选需要进行比较的监控项
  • 最下方通过 **显示堆叠图 **或 **显示图 **绘图

提示:Ad-hoc可以快速为项目创建临时的对比图,无法永久保存。

聚合图形

聚合图形的用途是可以将多个图形聚合在一个图形中展示,在 监测 → 聚合图形 可以配置、管理、查看Zabbix 聚合图形,如果要创建新的聚合图形,点击屏幕右上角的 创建聚合图形(Create screen)也可从XML文件导入现成的局和图形。

Zabbix拓扑图

在很多时候,特别是在被监控对象所处的网络结构比较复杂的时候,我们非常希望有一张能反映当前整个网络状态的拓扑图供我们查看。

这样,不但能非常直观和清晰地监控整个网络的当前状态,而且,一旦网络出现故障,也能快速地发现和定位故障所发生的节点,从而大大提高工作效率。

监测→ 拓扑图 部分,可以配置、管理、查看网络拓扑图,要配置新的拓扑图点击右上角的 创建拓扑图 按钮,也可从XML文件导入拓扑图。

表单项含义解释

表单项描述
所有者拓扑图拥有者
名称拓扑图名称
宽/高用于定义网络拓扑图的宽度/高度
背景图片(Backgroundimage)用于指定网络拓扑图所使用的背景。如果选择背景图片,需要提前通过“管理”→“一般”→“图片”页面添加到系统中。需要说明的是,系统不会自动调整背景图片的大小,所以,当要为一张网络拓扑图选择背景图片时,所选择的背景图片大小最好与网络拓扑图定义的大小相一致,否则,要么图片显示不完整,要么图片只能显示在网络拓扑图的一部分区域内【无需勾选】
自动图标映射(Automaticiconmapping)图标自动映射,可以根据主机资产中所指定的字段内容,自动映射到指定的一个图标。图标自动映射是通过“管理”→“一般”→“图标映射”页面添加到系统中的【无需勾选】
图标高亮(Iconhighlighting)当拓扑图中主机关联的触发器处于“问题”状态时,会有加亮效果【可勾选】
触发器状态改变时标记元素(Markelementsontriggerstatuschange)当拓扑图中主机相关联的触发器状态发生改变时,包括从“问题”状态转变为“正常”状态,或者从“正常”状态转变为“问题”状态,主机图标周围用红色的三角形来标识,之后30分内持续地显示在相关的主机图标上【可勾选】
显示问题(Expandsingleproblem)当有与拓扑图中主机相关联的触发器处于“问题”状态时,系统是显示该触发器的名称还是显示处于“问题”状态下的触发器数量。当选中这个复选框时,系统会显示触发器的名称;否则,系统就会显示触发器的数量【默认即可】
高级标签(Advancedlabels)当选中这个复选框时,系统会在当前表单页面上自动增加“主机组标签类型”、“主机标签类型”、“触发器标签类型”和“拓扑图标签类型”等表单项,它们是用于指定不同种类的元素所使用的标签类型【无需勾选】
图标标签类型(Iconlabeltype)用于指定系统使用哪类信息作为图标的标签显示在拓扑图上。可用的选项有:标签、IP地址、元素的名称、状态以及不显示标签等【默认即可】
图标标签位置(Iconlabellocation)用于指定标签位置【默认即可】
问题显示(Problemdisplay)用于指定用何种方式显示“问题”个数【默认即可】
URLs用于针对不同类型的元素,配置额外的URL连接。这里所配置的URL,在用户通过“状态统计”→“拓扑图”菜单项查看拓扑图时,可以显示在用户的右键弹出菜单中。当用户单击对应的菜单项时,可以打开指定的页面。在这里定义的URL是针对元素类型的,所以它会在所有同一类型元素的右键菜单中出现。这个表单项可以支持{MAP.ID}、{HOSTGROUP.ID}、{HOST.ID}和{TRIGGER.ID}

刚创建的拓扑图里边没有拓扑,需要进到拓扑后,点击右上角编辑拓扑图添加具体设备

通过配置按钮创建拓扑

创建拓扑后,点击右上角更新 再次通过监测→拓扑图验证。

Zabbix仪表板

zabbix仪表板是由多个小模块组成,可以有服务器信息、拓扑图、摘要、告警项、图形、时钟等模块进行组合展示,访问方式 监测 → 仪表板 这里是监控信息的一个汇总,方便你快速总览当前全局监控状态。

点击编辑仪表盘可以对仪表板进行个性化添加构件

可以添加构件也可以在仪表板下方看到有一些空白的构件可以直接使用

你可以通过以下方式添加小构件到仪表板,点击添加构件

调整模板的格局后,右上方点击 保存设置

添加常用拓扑图到仪表板:监测→拓扑图,进入拓扑图内部,然后右上角会看到一个⭐图标:

点击图标后,回到仪表板,可以在下方看到拓扑图

添加局和图形到仪表板:监测→局和图形,进入图形内部,然后右上角会看到一个⭐图标:

点击图标后,回到仪表板,添加一个聚合图形小构件:

某云平台监控仪表板展示。

第七章:Zabbix 性能优化

1.Zabbix监控项优化

zabbix自带模板里面涉及各种监控项,实际情况并不需要用到所有的,关掉无用监控项,仅监控重要的指标,最好可以自己按照需要自建监控模板。

2.增加监控项的取值间隔

这个调整的原则是,在满足需求的情况下,尽量将频率调低,也就是间隔调大,举个例子:

磁盘空间变化不会太剧烈,它的监控就可以时间间隔调大一些,磁盘总量改变的可能性更小了,所以间隔为一天也没关系。

3.减少历史数据保存周期

有些监控主要是为了报警,历史数据并没有那么重要,详细的历史记录可将时间调小,多留一些趋势记录,趋势记录里面的数据虽然不够详细但也能作为大概的参考。

4.调整监控模式

大量主机监控环境下, 由Server端去收集数据会出现严重的性能问题,例如: web操作很卡,容易出现502, 图层断裂等问题。优化方向:

  • 添加proxy节点做分布式监控

  • 采用被动监控方式来减轻zabbix server压力

5.zabbix数据库优化

针对数据库写多读少的表,如果使用InnoDB存储引擎,zabbix的运行效率至少要快1.5倍(与MyISAM相比),InnoDB存储引擎采用行级锁更适合写多读少的场景,但是InnoDB需要更多的CPU性能。

**Zabbix数据库表结构说明:**mysql数据库中各zabbix个表及其中字段的详细解释。

重点关注:history表,所有的监控项历史数据都存放在(history、history_str、history_text、history_uint)四个表中,如果数据库压力过大,可通过对该四张表进行分库分表优化。

  1. acknowledges表(空)

当trigger发生状态变化后,即产生某个事件(event)后,管理人员需要对这些状态变化进行确认,记录告警的确认信息。

PKNameTypeNot NullUniqueLenNotes
TrueacknowledgeidBIGINTTrueTrue20确认的唯一标识
FalseuseridBIGINTTrueFalse20用户ID
FalseeventidBIGINTTrueFalse20事件ID,外键
FalseclockINTEGERTrueFalse11管理员确认的时间
FalsemessageVARCHARTrueFalse255管理员确认的备注或留言
FalseactionINTTrueFalse11管理员确认的事件
  1. actions表

产生event后,会执行指定的动作(action),该表记录动作相关属性。

关键字段: 1)eventsource:同events表中的sources字段

2)status:0代表OK,1代表Problem

PKNameTypeNot NullUniqueLenNotes
TrueactionidBIGINTTrueTrue20动作的唯一标识
FalsenameVARCHARTrueFalse255动作的名称
FalseeventsourceINTTrueFalse11动作所关联的事件ID:0指来源为触发器trigger;1指来源为自动发现descover;2指来源为自动登记auto_register;3为网络发现产生的事件源
FalseevaltypeINTTrueFalse11表示执行action的前提条件的逻辑关系:0表示and/or1表示and 2表示or
FalsestatusINTTrueFalse11是否enable
Falseesc_periodVARCHARTrueFalse255默认的步骤时间间隔
Falsedef_shortdataVARCHARTrueFalse255action的标题定义
Falsedef_longdataTEXTTrueFalse0action内容的定义
Falser_shortdataVARCHARTrueFalse255恢复提醒的内容标题
Falser_longdataTEXTTrueFalse0恢复提醒的内容,默认与提醒一样
FalseformulaVARCHARTrueFalse255公式
Falsemaintenance_modeINTTrueFalse11维护模式
Falseack_shortdataVARCHARTrueFalse255ack的标题定义
Falseack_longdataTEXTTrueFalse0ack的内容定义

该表的相关数据查询语句:

  1. 查询所有已创建的动作:select name from actions;
  2. 查询某个动作的详细信息:select * from actions where name=’action_name’\G;
  3. alerts表

告警相关的表,与action、event、user关联,用于记录通过媒介(邮件、短信、微信等方式)发送的告警信息。

PKNameTypeNot NullUniqueLenNotes
TruealertidBIGINTTrueTrue20告警ID
FalseactionidBIGINTTrueFalse20关联的动作ID
FalseeventidBIGINTTrueFalse20关联的事件ID
FalseuseridBIGINTFalseFalse20关联的用户ID
FalseclockINTTrueFalse11产生告警的时间
FalsemediatypeidBIGINTFalseFalse媒介的类型
FalsesendtoVARCHARTrueFalse100告警发送的地址
FalsesubjectVARCHARTrueFalse255标题
FalsemessageTEXTTrueFalse0信息内容
FalsestatusINTTrueFalse11状态成功与否:define(‘ALERT_STATUS_NOT_SENT’, 0);define(‘ALERT_STATUS_SENT’,1);define(‘ALERT_STATUS_FAILED’,2);
FalseretriesINTTrueFalse11尝试次数,默认3次
FalseerrorVARCHARTrueFalse2048错误信息
Falseesc_stepINTTrueFalse11执行到operation的第几步
FalsealerttypeINTEGERTrueFalse11告警类型,包含远程命令define(‘ALERT_TYPE_MESSAGE’,0);define(‘ALERT_TYPE_COMMAND’,1);
Falsep_eventidBIGINTFalseFalse20
FalseactionidBIGINTFalseFalse20关连告警确认信息ID

该表的相关数据查询语句:

  1. 查询某个actions下的所有告警信息:select messsage from alerts where actionid=’actionid’;(需要从actions表中查询对应id并填入)
  2. applications_discovery表(空)

应用自动发现表,与applications、applications_prototype表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueapplication_discoveryidBIGINTTrueTrue20应用自动发现ID
FalseapplicationidBIGINTTrueFalse20应用ID
Falseapplication_prototypeidBIGINTTrueFalse11应用模型ID
FalsenameVARCHARTrueFalse11应用自动发现名称
FalseLastcheckINTTrueFalse11最后检查时间
Falsets_deleteINTTrueFalse11删除时间
  1. applications_prototype表

应用模型表,与item表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueapplication_prototypeidBIGINTTrueFalse20应用模型ID
FalseitemidBIGINTTrueFalse20监控项ID
FalsetemplateidBIGINTFalseFalse20模板ID
FalsenameVARCHARTrueFalse20应用模型名称
  1. applications_template表

应用模板表,与applications表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueapplication_templateidBIGINTTrueFalse20应用模板ID
FalseApplicationidBIGINTTrueFalse20应用ID
FalsetemplateidBIGINTFalseFalse20模板ID
  1. applications表

应用实体表,表示一系列item的集合,与host关联。

PKNameTypeNot NullUniqueLenNotes
TrueapplicationidBIGINTTrueTrue20应用ID
FalsehostidBIGINTTrueFalse20主机ID
FalsenameVARCHARTrueFalse255应用名称
FalsetemplateidBIGINTFalseFalse11关联的模板

该表的相关数据查询语句:

  1. 查询已创建的应用总数:select count(distinct name) from applications;
  2. auditlog表

记录对配置变更的日志,与auditlog、users表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueauditidBIGINTTrueTrue20audit日志的ID,对应一个变更操作
FalseuseridBIGINTTrueFalse20执行操作的用户ID
FalseclockINTTrueFalse11操作时间
FalseactionINTTrueFalse11动作
FalseresourcetypeINTTrueFalse11资源类型
FalsedetailsVARCHARTrueFalse128具体操作内容
FalseipVARCHARTrueFalse39ip地址
FalseresourceidBIGINTTrueFalse20资源id
FalseresourcenameVARCHARTrueFalse255资源名称
  1. auditlog_details表

审计日志详情表,与auditlog表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueauditdetailidBIGINTTrueTrue20审计日志详情ID,一个变更操作包含一个或者多个字段变更的子操作
FalseauditidBIGINTTrueFalse20关联的审计ID
Falsetable_nameVARCHARTrueFalse64表名
Falsefield_nameVARCHARTrueFalse64字段名
FalseoldvalueTEXTTrueFalse0原值
FalsenewvalueTEXTTrueFalse0新值
  1. autoreg_host表

自动登记主机。

PKNameTypeNot NullUniqueLenNotes
Trueautoreg_hostidBIGINTTrueTrue20自动登记的主机ID
Falseproxy_hostidBIGINTFalseFalse20代理ID
FalsehostVARCHARTrueFalse64主机名称
Falselisten_ipVARCHARTrueFalse39监听ID
Falselisten_portINTEGERTrueFalse11监听端口
Falselisten_dnsVARCHARTrueFalse64监听DNS
Falsehost_metadataVARCHARTrueFalse255主机元数据
  1. conditions表

动作触发条件表,用于保存Action触发的动作,与actions表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueconditionidBIGINTTrueTrue20条件ID
FalseactionidBIGINTTrueFalse20动作ID
FalseconditiontypeINTTrueFalse11详见如下:
FalseoperatorINTTrueFalse11详见如下:
FalsevalueVARCHARTrueFalse255
FalseValue2VARCHARTrueFalse255

conditiontype

支持共10种条件类型

define(‘CONDITION_TYPE_HOST_GROUP’, 0);

define(‘CONDITION_TYPE_HOST’,1);

define(‘CONDITION_TYPE_TRIGGER’,2);

define(‘CONDITION_TYPE_TRIGGER_NAME’,3);

define(‘CONDITION_TYPE_TRIGGER_SEVERITY’,4);

define(‘CONDITION_TYPE_TRIGGER_VALUE’,5);

define(‘CONDITION_TYPE_TIME_PERIOD’,6);

define(‘CONDITION_TYPE_DHOST_IP’,7);

define(‘CONDITION_TYPE_DSERVICE_TYPE’,8);

define(‘CONDITION_TYPE_DSERVICE_PORT’,9);

define(‘CONDITION_TYPE_DSTATUS’,10);

define(‘CONDITION_TYPE_DUPTIME’,11);

define(‘CONDITION_TYPE_DVALUE’,12);

define(‘CONDITION_TYPE_HOST_TEMPLATE’,13);

define(‘CONDITION_TYPE_EVENT_ACKNOWLEDGED’,14);

define(‘CONDITION_TYPE_APPLICATION’,15);

define(‘CONDITION_TYPE_MAINTENANCE’,16);

define(‘CONDITION_TYPE_NODE’,17);

define(‘CONDITION_TYPE_DRULE’,18);

define(‘CONDITION_TYPE_DCHECK’,19);

define(‘CONDITION_TYPE_PROXY’,20);

define(‘CONDITION_TYPE_DOBJECT’,21);

define(‘CONDITION_TYPE_HOST_NAME’,22);

Operator

支持7种逻辑表达

define(‘CONDITION_OPERATOR_EQUAL’,0);

define(‘CONDITION_OPERATOR_NOT_EQUAL’,1);

define(‘CONDITION_OPERATOR_LIKE’,2);

define(‘CONDITION_OPERATOR_NOT_LIKE’,3);

define(‘CONDITION_OPERATOR_IN’,4);

define(‘CONDITION_OPERATOR_MORE_EQUAL’,5);

define(‘CONDITION_OPERATOR_LESS_EQUAL’,6);

define(‘CONDITION_OPERATOR_NOT_IN’,7);

  1. config

系统配置表

PKNameTypeNot NullUniqueLenNotes
TrueconfigidBIGINTTrueTrue20系统配置ID,一般只有1
Falserefresh_unsupportedINTTrueFalse20不支持的更新时常
Falsework_periodVARCHARTrueFalse255工作时间段
Falsealert_usrgrpidBIGINTFalseFalse20告警的用户标识
Falseevent_expireVARCHARTrueFalse32事件有效期限
Falseevent_show_maxINTTrueFalse11事件最大的显示长度
Falsedefault_themeVARCHARTrueFalse128默认主题
Falseauthentication_typeINTTrueFalse11支持内部认证,LADP认证,HTTP认证
Falseldap_hostVARCHARTrueFalse255Ldap主机名
Falseldap_portINTEGERTrueFalse11Ldap端口
Falseldap_base_dnVARCHARTrueFalse255Ldap基本dns
Falseldap_bind_dnVARCHARTrueFalse255Ldap绑定的dns
Falseldap_bind_passwordVARCHARTrueFalse128Ldap绑定密码
Falseldap_search_attributeVARCHARTrueFalse128Ldap查找属性
Falsedropdown_first_entryINTEGERTrueFalse11下拉入口
Falsedropdown_first_rememberINTEGERTrueFalse11下拉记录
Falsediscovery_groupidBIGINTTrueFalse20自动发现组id
Falsemax_in_tableINTTrueFalse11表最大长度
Falsesearch_limitINTTrueFalse11查找限制长度
Falseseverity_color_0VARCHARTrueFalse6严重程度颜色
Falseseverity_color_1VARCHARTrueFalse6严重程度颜色
Falseseverity_color_2VARCHARTrueFalse6严重程度颜色
Falseseverity_color_3VARCHARTrueFalse6严重程度颜色
Falseseverity_color_4VARCHARTrueFalse6严重程度颜色
Falseseverity_color_5VARCHARTrueFalse6严重程度颜色
Falseseverity_name_0VARCHARTrueFalse32严重程度名称
Falseseverity_name_1VARCHARTrueFalse32严重程度名称
Falseseverity_name_2VARCHARTrueFalse32严重程度名称
Falseseverity_name_3VARCHARTrueFalse32严重程度名称
Falseseverity_name_4VARCHARTrueFalse32严重程度名称
Falseseverity_name_5VARCHARTrueFalse32严重程度名称
Falseok_periodVARCHARTrueFalse32周期
Falseblink_periodINTEGERTrueFalse11闪烁周期
Falseproblem_unack_colorVARCHARTrueFalse6非确认问题颜色
Falseproblem_ack_colorVARCHARTrueFalse6确认问题颜色
Falseok_unack_colorVARCHARTrueFalse6
Falseok_ack_colorVARCHARTrueFalse6
Falseproblem_unack_styleINTEGERTrueFalse11非确认的问题风格
Falseproblem_ack_styleINTEGERTrueFalse11确认的问题风格
Falseok_unack_styleINTEGERTrueFalse11
Falseok_ack_styleINTEGERTrueFalse11
Falsesnmptrap_loggingINTEGERTrueFalse11Snmp日志
Falseserver_check_intervalINTEGERTrueFalse11服务内部检查
Falsehk_events_modeINTTrueFalse11事件模式
Falsehk_events_triggerVARCHARTrueFalse32事件内部触发器
Falsehk_events_internalVARCHARTrueFalse32内部事件
Falsehk_events_discoveryVARCHARTrueFalse32自动发现事件
Falsehk_events_autoregINTTrueFalse32事件自动调整
Falsehk_events_modeINTTrueFalse11服务模式
Falsehk_servicesVARCHARTrueFalse32服务
Falsehk_audit_modeINTTrueFalse11审计模式
Falsehk_auditINTTrueFalse11审计
Falsehk_sessions_modeINTTrueFalse11sessions模式
Falsehk_sessionsINTTrueFalse11sessions
Falsehk_history_modeINTTrueFalse11历史模式
Falsehk_history_globalINTTrueFalse11全局历史变量
Falsehk_historyINTTrueFalse11历史变量
Falsehk_trends_modeINTTrueFalse11动态模式
Falsehk_trends_globalINTTrueFalse11全局动态变量
Falsehk_trendsINTTrueFalse11动态变量
FalseDefault_inventory_modeINTTrueFalse11默认存放模式
  1. corr_condition表(空)
PKNameTypeNot NullUniqueLenNotes
Truecorr_conditionidBIGINTTrueTrue20
FalsecorrelationidBIGINTTrueFalse20
FalsetypeINTTrueFalse11
  1. corr_condition_group表(空)
PKNameTypeNot NullUniqueLenNotes
Truecorr_conditionidBIGINTTrueTrue20
FalseoperatorINTTrueFalse11
FalsegroupidBIGINTTrueFalse20
  1. corr_condition_tag表(空)
PKNameTypeNot NullUniqueLenNotes
Truecorr_conditionidBIGINTTrueTrue20
FalsetagVARCHARTrueFalse255
  1. corr_condition_tagpair表(空)
PKNameTypeNot NullUniqueLenNotes
Truecorr_conditionidBIGINTTrueTrue20
FalseoldtagVARCHARTrueFalse255
FalsenewtagVARCHARTrueFalse255
  1. corr_condition_tagvalue表(空)
PKNameTypeNot NullUniqueLenNotes
Truecorr_conditionidBIGINTTrueTrue20
FalsetagVARCHARTrueFalse255
FalseoperatorINTTrueFalse11
FalsevalueVARCHARTrueFalse255
  1. Corr_operation表(空)
PKNameTypeNot NullUniqueLenNotes
Truecorr_conditionidBIGINTTrueTrue20
FalsecorrelationidBIGINTTrueFalse20
FalsetypeINTTrueFalse11
  1. correlation表(空)
PKNameTypeNot NullUniqueLenNotes
TruecorrelationidBIGINTTrueTrue20
FalsenameVARCHARTrueFalse255
FalsedescriptionTEXTTrueFalse0
FalseevaltypeINTTrueFalse11
FalsestatusINTTrueFalse11
FalseformulaVARCHARTrueFalse255
  1. dashboard表

仪表板信息记录表。与users表相关联

PKNameTypeNot NullUniqueLenNotes
TruedashboardidBIGINTTrueTrue20仪表盘ID
FalsenameVARCHARTrueFalse255仪表盘名称
FalseuseridBIGINTTrueFalse20用户ID
FalseprivateINTTrueFalse11私人配置
  1. Dashboard_user表

仪表板用户信息记录表。与dashboard、users表相关联

PKNameTypeNot NullUniqueLenNotes
Truedashboard_useridBIGINTTrueTrue20仪表盘用户ID
FalseDashboardidBIGINTTrueFalse20仪表盘ID
FalseuseridBIGINTTrueFalse20用户ID
FalsepermissionINTTrueFalse11权限
  1. Dashboard_usrgrp表

仪表板用户信息记录表。与dashboard、users表相关联

PKNameTypeNot NullUniqueLenNotes
Truedashboard_usrgrpidBIGINTTrueTrue20
FalseDashboardidBIGINTTrueFalse20仪表盘ID
FalseuseridBIGINTTrueFalse20用户ID
FalsepermissionINTTrueFalse11权限
  1. dbversion表

数据库版本信息记录表。

PKNameTypeNot NullUniqueLenNotes
FalsemandatoryINTTrueTrue11指示标志
FalseoptionalINTTrueFalse11选项
  1. dchecks表

自动发现的检查项表。自动发现规则配置的每一个的检查项(如FTP等服务)都会生成一个检查实例。程序会根据检查项进行自动发现。

PKNameTypeNot NullUniqueLenNotes
TruedcheckidBIGINTTrueTrue20自动发现检查ID
FalsedruleidBIGINTTrueFalse20规则ID
FalsetypeINTTrueFalse11详见如下:
Falsekey_VARCHARTrueFalse512若有agent类型,则需要填写key,以获取信息(一般为10050端口)
Falsesnmp_communityVARCHARTrueFalse255snmp相关配置
FalseportsVARCHARTrueFalse255检查的传输层端口
Falsesnmpv3_securitynameVARCHARTrueFalse64snmp安全名称
Falsesnmpv3_securitylevelINTTrueFalse11snmp安全级别
Falsesnmpv3_authpassphraseVARCHARTrueFalse64snmp认证密码
Falsesnmpv3_privpassphraseVARCHARTrueFalse64snmp私有密码
FalseuniqINTEGERTrueFalse区分host的标识0:ip地址1:system.name
Falsesnmpv3_authprotocolVARCHARTrueFalse64snmp认证协议
Falsesnmpv3_privprotocolVARCHARTrueFalse64Snmp私有协议

Type:

define(‘SVC_SSH’, 0);

define(‘SVC_LDAP’, 1);

define(‘SVC_SMTP’, 2);

define(‘SVC_FTP’, 3);

define(‘SVC_HTTP’, 4);

define(‘SVC_POP’, 5);

define(‘SVC_NNTP’, 6);

define(‘SVC_IMAP’, 7);

define(‘SVC_TCP’, 8);

define(‘SVC_AGENT’, 9);

define(‘SVC_SNMPv1’, 10);

define(‘SVC_SNMPv2c’, 11);

define(‘SVC_ICMPPING’, 12);

define(‘SVC_SNMPv3’, 13);

define(‘SVC_HTTPS’, 14);

define(‘SVC_TELNET’, 15);

  1. dhosts表(空)

自动发现后的主机,会被保存到这张表,与drules表相关联。

PKNameTypeNot NullUniqueLenNotes
TruedhostidBIGINTTrueTrue20主机ID
FalsedruleidBIGINTTrueFalse20规则ID,drule表
FalsestatusINTTrueFalse11当前主机状态
FalselastupINTTrueFalse11状态正常的最后时间,unix时间戳
FalselastdownINTTrueFalse11状态不正常的最后时间,unix时间戳
  1. drules表

自动发现规则表,用于配置在一定网络范围内自动发现主机和服务。

PKNameTypeNot NullUniqueLenNotes
TruedruleidBIGINTTrueTrue20规则ID
Falseproxy_hostidBIGINTFalseFalse20代理ID
FalsenameVARCHARTrueFalse255规则名称
FalseiprangeVARCHARTrueFalse2048IP地址范围,支持三种格式:Single IP: 192.168.1.33Range of IP addresses: 192.168.1.1-255IP mask: 192.168.4.0/24
FalsedelayINTEGERTrueFalse255自动发现操作的执行间隔
FalsenextcheckINTEGERTrueFalse11下个检查ID
FalsestatusINTEGERTrueFalse11是否启用:1:未启用0:启用
  1. dservices表(空)

自动发现服务实例表,用于记录自动发现服务实例,与dhost类似。与dhosts、dchecks表相关联。

PKNameTypeNot NullUniqueLenNotes
TruedserviceidBIGINTTrueTrue20服务实例ID
FalsedhostidBIGINTTrueFalse20关联的dhostid
FalsevalueVARCHARTrueFalse255返回的值
FalseportINTTrueFalse11被发现的服务端口
FalsestatusINTTrueFalse11网络服务状态
FalselastupINTTrueFalse11最后正常状态时间
FalselastdownINTTrueFalse11最后不正常状态时间
FalsedcheckidBIGINTTrueFalse20关联的检查实例ID
FalseipVARCHARTrueFalse39该网络服务实例的IP地址
FalsednsVARCHARTrueFalse64dns地址
  1. escalations表(空)

在一个动作(action)中,一系列的执行操作场景,包括通知或者执行远程命令。与actions、triggers、events、items表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueescalationidBIGINTTrueTrue20升级操作ID
FalseactionidBIGINTTrueFalse20动作ID
FalsetriggeridBIGINTFalseFalse20触发器ID
FalseeventidBIGINTFalseFalse20事件ID
Falser_eventidBIGINTFalseFalse20
FalsenextcheckINTTrueFalse11下一个检查的事件,unix事件戳
Falseesc_stepINTTrueFalse11升级步骤
FalsestatusINTTrueFalse11状态:是否启用
FalseitemidBIGINTFalseFalse20监控项ID
FalseacknowledgeidBIGINTFalseFalse20告警状态确认ID
  1. event_recovery表

该表记录了事件恢复的全部数据信息,与user、correlation、events表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueeventidBIGINTTrueTrue20事件ID
Falser_eventidBIGINTTrueFalse20
Falsec_eventidBIGINTFalseFalse20
FalsecorrelationidBIGINTFalseFalse20数据统计ID
FalseuseridBIGINTFalseFalse20用户ID
  1. event_tag表(空)

该表记录了事件的唯一标识信息,与events表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueeventtagidBIGINTTrueTrue20事件标识ID
FalseeventidBIGINTTrueFalse20事件ID
FalsetagVARCHARFalseFalse255唯一标识
FalsevalueVARCHARFalseFalse255
  1. events表

事件表,与acknowledge表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueeventidBIGINTTrueTrue20事件ID
FalsesourceINTTrueFalse11详情如下:
FalseobjectINTTrueFalse11
FalseobjectidBIGINTTrueFalse20对应不同的object类型的ID
FalseclockINTTrueFalse11事件产生的时间
FalsevalueINTTrueFalse11
FalseacknowledgeidINTTrueFalse11是否已经确认0为未确认1为确认
FalsensINTTrueFalse11

Object:

表示事件来源,有三个:

define(‘EVENT_SOURCE_TRIGGERS’,0);

define(‘EVENT_SOURCE_DISCOVERY’,1);

define(‘EVENT_SOURCE_AUTO_REGISTRATION’,2);

  1. expressions表

表达式相关信息表,与regexps表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueexpressionidBIGINTTrueTrue20表示式ID
FalseregexpidBIGINTTrueFalse20正则表达式ID
FalseexpressionVARCHARTrueFalse255表达式
Falseexpression_typeINTEGERTrueFalse11详情如下:
Falseexp_delimiterVARCHARTrueFalse1表达式分隔符
Falsecase_sensitiveINTEGERTrueFalse11是否大小写敏感

expression_type:

表达式类型:

define(‘EXPRESSION_TYPE_INCLUDED’,0);

define(‘EXPRESSION_TYPE_ANY_INCLUDED’,1);

define(‘EXPRESSION_TYPE_NOT_INCLUDED’,2);

define(‘EXPRESSION_TYPE_TRUE’,3);

define(‘EXPRESSION_TYPE_FALSE’,4);

  1. functions表

对trigger的表达式进行分解。与items、triggers表相关联。

PKNameTypeNot NullUniqueLenNotes
TruefunctionidBIGINTTrueTrue20函数ID
FalseitemidBIGINTTrueFalse20监控项ID
FalsetriggeridBIGINTTrueFalse20触发器ID
FalsefunctionVARCHARTrueFalse12函数名称,包括diff,last,min等
FalseparameterVARCHARTrueFalse255函数参数
  1. globalmacro表

全局宏定义信息记录表。

PKNameTypeNot NullUniqueLenNotes
TrueglobalmacroidBIGINTTrueTrue20全局宏ID
FalsemacroVARCHARTrueFalse255
FalsevalueVARCHARTrueFalse255
  1. globalvars表(空)

全局变量(与snmp相关)信息记录表。

PKNameTypeNot NullUniqueLenNotes
TrueglobalvaridBIGINTTrueTrue20全局变量ID
Falsesnmp_lastsizeINTTrueFalse20Snmp最后的大小
  1. graph_discovery表

图形发现信息保存表。与graphs表相关联。

PKNameTypeNot NullUniqueLenNotes
TruegraphidBIGINTTrueFalse20图形ID
Falseparent_graphidBIGINTTrueFalse20上级图形ID
  1. graph_theme表

图形样式设置表,每种样式一条记录,目前有4种。

PKNameTypeNot NullUniqueLenNotes
TruegraphthemeidBIGINTTrueTrue20图形样式ID
FalsethemeVARCHARTrueFalse64主题名称
FalsebackgroundcolorVARCHARTrueFalse6背景颜色
FalsegraphcolorVARCHARTrueFalse6图形颜色
FalsegridcolorVARCHARTrueFalse6网格颜色
FalsemaingridcolorVARCHARTrueFalse6主要网格颜色
FalsegridbordercolorVARCHARTrueFalse6网格边界颜色
FalsetextcolorVARCHARTrueFalse6文字颜色
FalsehighlightcolorVARCHARTrueFalse6高亮颜色
FalseleftpercentilecolorVARCHARTrueFalse6左边百分比颜色
FalserightpercentilecolorVARCHARTrueFalse6右边百分比颜色
FalsenonworktimecolorVARCHARTrueFalse6非工作时间块颜色
  1. graphs表

图形实例表,用于保存图形实例的配置。

PKNameTypeNot NullUniqueLenNotes
TruegraphidBIGINTTrueTrue20图形实例表
FalsenameVARCHARTrueFalse128图形名称
FalsewidthINTTrueFalse11
FalseheightINTTrueFalse11
FalseyaxisminDOUBLETrueFalse16Y轴最小值
FalseyaxismaxDOUBLETrueFalse16Y轴最大值
FalsetemplateidBIGINTFalseFalse20模板ID
Falseshow_work_periodINTTrueFalse11是否显示工作时间1:是0:否
Falseshow_triggersINTEGERTrueFalse11是否显示触发器1:是0:否
FalsegraphtypeINTTrueFalse11详情如下:
Falseshow_legendINTTrueFalse11是否显示图例
Falseshow_3dINTTrueFalse11是否显示3D1:是0:否
Falsepercent_leftDOUBLETrueFalse16向左的百分比
Falsepercent_rightDOUBLETrueFalse16向右的百分比
Falseymin_typeINTTrueFalse11详情如下:
Falseymax_typeINTTrueFalse11详情如下:
Falseymin_itemidBIGINTFalseFalse20Y轴最小监控项ID
Falseymax_itemidBIGINTFalseFalse20Y轴最大监控项ID
FalseflagsINTTrueFalse11标识

graphtype

图像类型,目前支持以下几种:

define(‘GRAPH_TYPE_NORMAL’, 0);

define(‘GRAPH_TYPE_STACKED’,1);

define(‘GRAPH_TYPE_PIE’,2);

define(‘GRAPH_TYPE_EXPLODED’,3);

define(‘GRAPH_TYPE_3D’,4);

define(‘GRAPH_TYPE_3D_EXPLODED’,5);

define(‘GRAPH_TYPE_BAR’,6);

define(‘GRAPH_TYPE_COLUMN’,7);

define(‘GRAPH_TYPE_BAR_STACKED’,8);

define(‘GRAPH_TYPE_COLUM N_STACKED’,9);

ymin_type

Y轴最小值类型:

define(‘GRAPH_YAXIS_TYPE_CALCULATED’, 0);

define(‘GRAPH_YAXIS_TYPE_FIXED’, 1);

define(‘GRAPH_YAXIS_TYPE_ITEM_VALUE’, 2);

ymax_type

Y轴最大值类型:

define(‘GRAPH_YAXIS_TYPE_CALCULATED’, 0);

define(‘GRAPH_YAXIS_TYPE_FIXED’, 1);

define(‘GRAPH_YAXIS_TYPE_ITEM_VALUE’, 2);

  1. graphs_items表

图形-监控项关联表,一个图形包含多个监控项,在此表记录关联关系,

与graphs、items表相关联。

PKNameTypeNot NullUniqueLenNotes
TruegitemidBIGINTTrueTrue20图形-监控项关联ID
FalsegraphidBIGINTTrueFalse20图形ID
FalseitemidBIGINTTrueFalse20监控项ID
FalsedrawtypeINTTrueFalse11详情如下:
FalsesortorderINTTrueFalse11排序
FalsecolorVARCHARTrueFalse6颜色
FalseyaxissideINTTrueFalse11Y轴边界起点
Falsecalc_fncINTTrueFalse11详情如下:
FalsetypeINTTrueFalse11类型

drawtype

绘画类型:

define(‘GRAPH_ITEM_DRAWTYPE_LINE’, 0);

define(‘GRAPH_ITEM_DRAWTYPE_FILLED_REGION’, 1);

define(‘GRAPH_ITEM_DRAWTYPE_BOLD_LINE’, 2);

define(‘GRAPH_ITEM_DRAWTYPE_DOT’, 3);

define(‘GRAPH_ITEM_DRAWTYPE_DASHED_LINE’,4);

define(‘GRAPH_ITEM_DRAWTYPE_GRADIENT_LINE’, 5);

define(‘GRAPH_ITEM_DRAWTYPE_BOLD_DOT’, 6);

calc_fnc

计算函数,支持以下几种:

define(‘CALC_FNC_MIN’, 1);

define(‘CALC_FNC_AVG’, 2);

define(‘CALC_FNC_MAX’, 4);

define(‘CALC_FNC_ALL’, 7);

define(‘CALC_FNC_LST’, 9);

  1. group_discovery表(空)

组自动发现表,与graphs、groups表相关联。

PKNameTypeNot NullUniqueLenNotes
TruegroupidBIGINTTrueTrue20组ID
Falseparent_group_prototypeidBIGINTTrueFalse20上级组模型ID
FalsenameVARCHARTrueFalse64名称
FalselastcheckINTTrueFalse11最后检查时间:
Falsets_deleteINTTrueFalse11删除时间
  1. group_prototype表

组模型表,与hosts、groups表相关联。。

PKNameTypeNot NullUniqueLenNotes
Truegroup_prototypeidBIGINTTrueTrue20组模型ID
FalsehostidBIGINTTrueFalse20主机ID
FalsenameVARCHARTrueFalse255名称
FalsegroupidBIGINTTrueFalse20组ID
FalsetemplateidBIGINTTrueFalse20模板ID
  1. groups表

主机组表

PKNameTypeNot NullUniqueLenNotes
TruegroupidBIGINTTrueTrue20主机组ID
FalsenameVARCHARTrueFalse255主机组名称
FalseinternalINTEGERTrueFalse11是否内部配置,若是外部发现,则为非内部define(‘ZBX_NOT_INTERNAL_GROUP’, 0);define(‘ZBX_INTERNAL_GROUP’, 1);
FalseflagsINTTrueFalse11唯一标识

该表的相关数据查询语句:

  1. 查询所有监控组的数量:select count(name) from groups;
  2. history表

浮点历史数据表。与items表相关联。

PKNameTypeNot NullUniqueLenNotes
FalseitemidBIGINTTrueFalse20监控项ID
FalseclockINTTrueFalse11收集时间,UNIX时间戳+
FalsevalueValueTrueFalse16
FalsensINTTrueFalse11
  1. history_log表

历史日志表,与itmes表相关联。

PKNameTypeNot NullUniqueLenNotes
FalseitemidBIGINTTrueFalse20监控项ID
FalseclockINTTrueFalse11收集时间
FalsetimestampINTEGERTrueFalse11时间戳
FalsesourceVARCHARTrueFalse64数据源
FalseseverityINTTrueFalse11严重度
FalsevalueTEXTTrueFalse0
FalselogeventidINTEGERTrueFalse11只作关联windows的事件日志ID
FalsensINTEGERTrueFalse11
  1. history_str表

字符串的历史数据表。

PKNameTypeNot NullUniqueLenNotes
FalseitemidBIGINTTrueFalse20监控项ID
FalseclockINTTrueFalse11unix时间戳,监控数据采集时间
FalsevalueVARCHARTrueFalse255监控的值,不能超过255个字符
FalsensINTTrueFalse11
  1. history_text表(空)

长文本历史数据表,支持255字符以上的文本,与items表相关联。

PKNameTypeNot NullUniqueLenNotes
FalseitemidBIGINTTrueFalse20监控项ID
FalseclockINTTrueFalse11时间戳
FalsevalueTEXTTrueFalse0字符串值
FalsensINTEGERTrueFalse11
  1. history_uint表

长整型历史数据表,与items表相关联。

PKNameTypeNot NullUniqueLenNotes
FalseitemidBIGINTTrueFalse20监控项ID
FalseclockINTTrueFalse11时间戳
FalsevalueTEXTTrueFalse0字符串值
FalsensINTEGERTrueFalse11
  1. host_discovery表

主机自动发现表,与items表相关联。

PKNameTypeNot NullUniqueLenNotes
FalsehostidBIGINTTrueFalse20主机ID
Falseparent_hostidBIGINTFalseFalse20父主机ID
Falseparent_itemidBIGINTFalseFalse20父监控项ID
FalsehostVARCHARTrueFalse64主机
FalselastcheckINTTrueFalse11最后检查时间:
Falsets_deleteINTTrueFalse11删除时间
  1. host_inventory表(空)

主机资产表,很少用到(分为自动发现和手工填写两种方式)

PKNameTypeNot NullUniqueLenNotes
TruehostidBIGINTTrueTrue20主机ID
Falseinventory_modeINTTrueFalse11资产模式
FalsetypeVARCHARTrueFalse64类型
Falsetype_fullVARCHARTrueFalse64类型全名
FalsenameVARCHARTrueFalse64名称
FalsealiasVARCHARTrueFalse64别名
FalseosVARCHARTrueFalse64系统
Falseos_fullVARCHARTrueFalse255系统全名
Falseos_shortVARCHARTrueFalse64系统简称
Falseserialno_aVARCHARTrueFalse64序列号
Falseserialno_bVARCHARTrueFalse64序列号
FalsetagVARCHARTrueFalse64标签
Falseasset_tagVARCHARTrueFalse64资产标签
Falsemacaddress_aVARCHARTrueFalse64MAC地址
Falsemacaddress_bVARCHARTrueFalse64MAC地址
FalsehardwareVARCHARTrueFalse255硬件
Falsehardware_fullTEXTTrueFalse0硬件全称
FalsesoftwareVARCHARTrueFalse255软件
Falsesoftware_fullTEXTTrueFalse0软件全称
Falsesoftware_app_aVARCHARTrueFalse64软件应用
Falsesoftware_app_bVARCHARTrueFalse64软件应用
Falsesoftware_app_cVARCHARTrueFalse64软件应用
Falsesoftware_app_dVARCHARTrueFalse64软件应用
Falsesoftware_app_eVARCHARTrueFalse64软件应用
FalsecontactTEXTTrueFalse0关联
FalselocationTEXTTrueFalse0位置
Falselocation_latVARCHARTrueFalse16起始位置
Falselocation_lonVARCHARTrueFalse16终止位置
FalsenotesTEXTTrueFalse0注释
FalsechassisVARCHARTrueFalse64底盘号
FalsemodelVARCHARTrueFalse64模式
Falsehw_archVARCHARTrueFalse32硬件信息
FalsevendorVARCHARTrueFalse64供应商
Falsecontract_numberVARCHARTrueFalse64合同编号
Falseinstaller_nameVARCHARTrueFalse64安装者名称
Falsedeployment_statusVARCHARTrueFalse64调度状态
Falseurl_aVARCHARTrueFalse255url
Falseurl_bVARCHARTrueFalse255url
Falseurl_cVARCHARTrueFalse255url
Falsehost_networksTEXTTrueFalse0主机网络
Falsehost_netmaskVARCHARTrueFalse39主机网络掩码
Falsehost_routerVARCHARTrueFalse39主机路由
Falseoob_ipVARCHARTrueFalse39Oob ip地址
Falseoob_netmaskVARCHARTrueFalse39Oob 网络掩码
Falseoob_routerVARCHARTrueFalse39Oob 路由
Falsedate_hw_purchaseVARCHARTrueFalse64硬件维保日期
Falsedate_hw_installVARCHARTrueFalse64硬件安装日期
Falsedate_hw_expiryVARCHARTrueFalse64硬件保修到期日期
Falsedate_hw_decommVARCHARTrueFalse64硬件报废日期
Falsesite_address_aVARCHARTrueFalse128地址
Falsesite_address_bVARCHARTrueFalse128地址
Falsesite_address_cVARCHARTrueFalse128地址
Falsesite_cityVARCHARTrueFalse128城市
Falsesite_stateVARCHARTrueFalse64国家
Falsesite_countryVARCHARTrueFalse64城镇
Falsesite_zipVARCHARTrueFalse64邮政编码
Falsesite_rackVARCHARTrueFalse128Rack
Falsesite_notesTEXTTrueFalse0注释
Falsepoc_1_nameVARCHARTrueFalse128名字
Falsepoc_1_emailVARCHARTrueFalse128邮箱
Falsepoc_1_phone_aVARCHARTrueFalse64电话号码
Falsepoc_1_phone_bVARCHARTrueFalse64电话号码
Falsepoc_1_cellVARCHARTrueFalse64移动电话
Falsepoc_1_screenVARCHARTrueFalse64Poc屏幕
Falsepoc_1_notesTEXTTrueFalse0Poc 注释
Falsepoc_2_nameVARCHARTrueFalse128Poc名字
Falsepoc_2_emailVARCHARTrueFalse128Poc 邮箱地址
Falsepoc_2_phone_aVARCHARTrueFalse64Poc 电话号码
Falsepoc_2_phone_bVARCHARTrueFalse64Poc 电话号码
Falsepoc_2_cellVARCHARTrueFalse64Poc 移动电话
Falsepoc_2_screenVARCHARTrueFalse64Poc屏幕
Falsepoc_2_notesTEXTTrueFalse0Poc 注释
  1. hostmacro表

主机宏定义表,与globalmacro一起在common.macro.php中被转化,与hosts表相关联。

PKNameTypeNot NullUniqueLenNotes
TruehostmacroidBIGINTTrueTrue20主机宏定义ID
FalsehostidBIGINTTrueFalse20主机ID
FalsemacroVARCHARTrueFalse255宏名称
FalsevalueVARCHARTrueFalse255宏值
  1. hosts表

用于保存主机实例(包含模板等)。

PKNameTypeNot NullUniqueLenNotes
TruehostidBIGINTTrueTrue20主机ID,zabbix中,主机、模板都使用该表记录,唯一区别是status字段
Falseproxy_hostidBIGINTFalseFalse20该主机的代理的ID
FalsehostVARCHARTrueFalse128host的名称
FalsestatusINTTrueFalse11host的状态,用以区分主机、模板、代理0:正在被监控的主机1:未被监控的主机3:模板4:启用代理模式的主机5:未启用代理模式的主机
Falsedisable_untilINTTrueFalse11禁止主机监控到什么时候
FalseerrorVARCHARTrueFalse2048主机错误信息
FalseavailableINTTrueFalse111为可用0为不可用
Falseerrors_fromINTTrueFalse11主机监控发生错误的时间戳
FalselastaccessINTTrueFalse11最后访问时间
Falseipmi_authtypeINTTrueFalse11IPMI的认证方式:-1:默认的认证方式0:无认证方式1:MD2认证2:MD5加密认证4:直接认证5:OEM认证6:RMCP_PLUS认证方式
Falseipmi_privilegeINTTrueFalse11IPMI的授权1:回调权限2:用户权限3:操作权限4:管理权限5:OEM权限
Falseipmi_usernameVARCHARTrueFalse16IPMI认证的用户名
Falseipmi_passwordVARCHARTrueFalse20IPMI认证的密码
Falseipmi_disable_untilINTTrueFalse11IPMI不可用直到什么时间
Falseipmi_availableINTTrueFalse11IPMI什么时间可用
Falsesnmp_disable_untilINTTrueFalse11SNMP不可用直到什么时间
Falsesnmp_availableINTTrueFalse11SNMP可用时间
FalsemaintenanceidBIGINTFalseFalse20维护状态ID,表示该主机进入维护状态,监控停止
Falsemaintenance_statusINTTrueFalse11维护状态0:正常1:维护
Falsemaintenance_typeINTTrueFalse11维护类型:0:继续收集数据1:不在收集数据
Falsemaintenance_fromINTTrueFalse11维护开始时间
Falseipmi_errors_fromINTTrueFalse11IPMI错误开始时间
Falsesnmp_errors_fromINTTrueFalse11SNMP错误开始时间
Falseipmi_errorVARCHARTrueFalse2048IPMI错误信息
Falsesnmp_errorVARCHARTrueFalse2048SNMP错误信息
Falsejmx_disable_untilINTTrueFalse11java扩展功能开启
Falsejmx_availableINTTrueFalse11java扩展功能是够可用
Falsejmx_errors_fromINTTrueFalse11java扩展功能的错误来源
Falsejmx_errorVARCHARTrueFalse2048Javaz错误信息
FalsenameVARCHARTrueFalse128host的名称
FalseflagesINTTrueFalse11标识
FalsetemplateidBIGINTFalseFalse20模板ID
FalsedescriptionTEXTTrueFalse0描述
Falsetls_connectINTTRUEFalse11tls连接
Falsetls_acceptINTTRUEFalse11tls许可
Falsetls_issuerVARCHARTRUEFalse1024tls发行人
Falsetls_subjectVARCHARTRUEFalse1024tls 项目名
Falsetls_psk_identityVARCHARTRUEFalse128tls_psk身份认证
Falsetls_pskVARCHARTRUEFalse512tls _psk

该表的相关数据查询语句:

  1. 查询所有主机的数量:select count(host) from hosts;
  2. 查询所有正在被监控的主机的数量:select count(host) from hosts where status=’0’;
  3. 查询所有未被监控的主机的数量:select count(host) from hosts where status=’1’;
  4. 查询所有模板的数量:select count(host) from hosts where status=’3’;
  5. hosts_groups表

将主机host表与主机组group表进行关联。

PKNameTypeNot NullUniqueLenNotes
TruehostgroupidBIGINTTrueTrue20主机-主机组关联ID
FalsehostidBIGINTTrueFalse20主机ID
FalsegroupidBIGINTTrueFalse20组ID
  1. hosts_templates表

主机-模板关联表,主机和模板都保存在host表里面,用status区分。

PKNameTypeNot NullUniqueLenNotes
TruehosttemplateidBIGINTTrueTrue20主机-模板关联ID
FalsehostidBIGINTTrueFalse20主机ID
FalsetemplateidBIGINTTrueFalse20模板ID,也是关联到HOST主机上
  1. housekeeper表(空)

数据清除管理设置表。

PKNameTypeNot NullUniqueLenNotes
TruehousekeeperidBIGINTTrueTrue20管理ID
FalsetablenameVARCHARTrueFalse64表名
FalsefieldVARCHARTrueFalse64
FalsevalueBIGINTTrueFalse20
  1. httpstep表(空)

http监控步骤记录表

PKNameTypeNot NullUniqueLenNotes
TruehttpstepidBIGINTTrueTrue20http监控步骤ID
FalsehttptestidVARCHARTrueFalse64http测试ID
FalsenameVARCHARTrueFalse64名称
FalsenoINTTrueFalse11序号
FalseurlVARCHARTrueFalse2048url
FalsetimeoutVARCHARTrueFalse255超时时间
FalsepostsVARCHARTrueFalse0传输方式post
FalserequiredVARCHARTrueFalse255需求
Falsestatus_codesVARCHARTrueFalse255状态码
Falsefollow_redirectsINTTrueFalse11重定向
Falseretrieve_modeINTTrueFalse11恢复模式
Falsepost_typeINTTrueFalse11传输类型
  1. httpstep_field表(空)

http监控步骤-域记录表。与httpstep表相关联。

PKNameTypeNot NullUniqueLenNotes
Truehttpstep_fieldidBIGINTTrueTrue20http监控步骤域ID
FalsehttpstepidBIGINTTrueFalse20http监控步骤ID
FalsetypeINTTrueFalse11类型
FalsenameVARCHARTrueFalse255名称
FalsevalueTEXTTrueFalse0
  1. httpstepitem表(空)

WEB步骤-监控项关联表,每新建一个web步骤,都会在items表中新建Download ,与httpstep、items表相关联。

PKNameTypeNot NullUniqueLenNotes
TruehttpstepitemidBIGINTTrueTrue20web监控-监控项的关联ID
FalsehttpstepidBIGINTTrueFalse20http监控步骤ID
FalseitemidBIGINTTrueFalse20对应items表的itemsID
FalsetypeINTEGERTrueFalse11详情如下:

Type

监控项类型,0,1,2,3,4

define(‘HTTPSTEP_ITEM_TYPE_RSPCODE’,0);

define(‘HTTPSTEP_ITEM_TYPE_TIME’,1);

define(‘HTTPSTEP_ITEM_TYPE_IN’,2);

define(‘HTTPSTEP_ITEM_TYPE_LASTSTEP’,3);

define(‘HTTPSTEP_ITEM_TYPE_LASTERROR’,4);

  1. httptest表(空)

HTTP监控场景配置表,对每一个WEB监控的场景新增一条httptest的记录。

与applications表相关联。

PKNameTypeNot NullUniqueLenNotes
TruehttptestidBIGINTTrueTrue20WEB监控场景ID
FalsenameVARCHARTrueFalse64WEB监控场景的名称
FalseapplicationidBIGINTTrueFalse20应用的ID,关联application表的ID
FalsenextcheckINTTrueFalse11下次检查时间
FalsedelayINTEGERTrueFalse255检查间隔,秒
FalsestatusINTEGERTrueFalse11状态:1:开启0:关闭
FalseagentVARCHARTrueFalse255使用的浏览器,基本支持所有类型
FalseauthenticationINTTrueFalse11详情如下:
Falsehttp_userVARCHARTrueFalse64认证的用户名
Falsehttp_passwordVARCHARTrueFalse64认证的密码
FalsetemplateidBIGINTTrueFalse20模板ID
Falsehttp_proxyVARCHARTrueFalse255http代理
FalseretriesINTTrueFalse11再次尝试间隔
Falsessl_cert_fileVARCHARTrueFalse255Ssl认证文件
Falsessl_key_fileVARCHARTrueFalse255Ssl密钥文件
Falsessl_key_passwordVARCHARTrueFalse64Ssl密钥密码
Falseverify_peerINTTrueFalse11逐一认证
Falseverify_hostINTTrueFalse11认证主机

**Authentication:**是否认证需要认证,或认证类型:

0:不需要认证

1:基本认证

2:NTML认证

define(‘HTTPTEST_AUTH_NONE’,0);

define(‘HTTPTEST_AUTH_BASIC’,1);

define(‘HTTPTEST_AUTH_NTLM’,2);

  1. httptest_field表(空)

http监控测试-域记录表。与httpstep表相关联。

PKNameTypeNot NullUniqueLenNotes
Truehttptest_fieldidBIGINTTrueTrue20http监控测试域ID
FalsehttptestidBIGINTTrueFalse20http监控测试ID
FalsetypeINTTrueFalse11类型
FalsenameVARCHARTrueFalse255名称
FalsevalueTEXTTrueFalse0
  1. httptestitem表(空)

HTTP场景-监控项关联表。与httptest、items表相关联。

PKNameTypeNot NullUniqueLenNotes
TruehttptestitemidBIGINTTrueTrue20HTTP监控场景-监控项关联ID
FalsehttptestidBIGINTTrueFalse20HTTP监控场景ID,httptest表
FalseitemidBIGINTTrueFalse20监控项ID,关联items表
FalsetypeINTTrueFalse11详情如下:

Type

监控项类型,0,1,2,3,4

define(‘HTTPSTEP_ITEM_TYPE_RSPCODE’,0);

define(‘HTTPSTEP_ITEM_TYPE_TIME’,1);

define(‘HTTPSTEP_ITEM_TYPE_IN’, 2);

define(‘HTTPSTEP_ITEM_TYPE_LASTSTEP’, 3);

define(‘HTTPSTEP_ITEM_TYPE_LASTERROR’,4);

  1. icon_map表(空)

图标映射表,用于映射图标和图像(images)之间的关系。

PKNameTypeNot NullUniqueLenNotes
TrueiconmapidBIGINTTrueTrue20映射ID
FalsenameVARCHARTrueFalse64映射名称
Falsedefault_iconidBIGINTTrueFalse20默认的图标ID,关联到images表的ID,即实际使用还是images
  1. icon_mapping表(空)

图标映射表。与iconmap表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueiconmappingidBIGINTTrueTrue20图形映射ID
FalseiconmapidBIGINTTrueFalse20映射ID
FalseiconidBIGINTTrueFalse20图形ID
Falseinventory_linkINTEGERTrueFalse11资产链接
FalseexpressionVARCHARTrueFalse64表达式
FalsesortorderINTEGERTrueFalse11次序排序
  1. ids表

索引表,标识表名的主键下一个值,或者说主键最大值+1。

PKNameTypeNot NullUniqueLenNotes
Truetable_nameVARCHARTrueTrue64表名
Truefield_nameVARCHARTrueTrue64该表的主键的字段名称
FalsenextidBIGINTTrueFalse20主键最大值+1,即主键下一个值
  1. images表

该表保存图像,使用BLOB类型保存,该表在安装zabbix的时候会自动导入

PKNameTypeNot NullUniqueLenNotes
TrueimageidBIGINTTrueTrue20图形ID
FalseimagetypeINTEGERTrueFalse11详情如下:
FalsenameVARCHARTrueFalse64图像名称
FalseimageBLOBTrueFalse0图像,使用二进制存储

Imagetype:图像的类型

define(‘IMAGE_TYPE_UNKNOWN’, 0);

define(‘IMAGE_TYPE_ICON’, 1);

define(‘IMAGE_TYPE_BACKGROUND’, 2);

  1. interface表

主机监控接口表,用于标示被监控主机的IP和端口,与hosts表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueinterfaceidBIGINTTrueTrue20主机接口ID
FalsehostidBIGINTTrueFalse20主机ID,关联hosts
FalsemainINTTrueFalse11详情如下:
FalsetypeINTTrueFalse11详情如下:
FalseuseipINTTrueFalse11详情如下:
FalseipVARCHARTrueFalse39IP地址
FalsednsVARCHARTrueFalse64域名字符串
FalseportVARCHARTrueFalse64服务端口,TCP端口
FalsebulkINTTrueFalse11大小

Main:是否主要端口:

1为主要,0为次要

define(‘INTERFACE_SECONDARY’,0);

define(‘INTERFACE_PRIMARY’,1);

type:每个主机的服务端口/接口可以分几种类型:

define(‘INTERFACE_TYPE_ANY’,-1);

define(‘INTERFACE_TYPE_UNKNOWN’,0);

define(‘INTERFACE_TYPE_AGENT’,1);

define(‘INTERFACE_TYPE_SNMP’,2);

define(‘INTERFACE_TYPE_IPMI’,3);

define(‘INTERFACE_TYPE_JMX’,4);

**useip:**使用IP或者DNS方式定位:

define(‘INTERFACE_USE_DNS’, 0);

define(‘INTERFACE_USE_IP’,1);

  1. interface_discovery表(空)

主机监控接口自动发现信息记录表,用于自动发现接口,与interface表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueinterfaceidBIGINTTrueTrue20主机接口ID
Falseparent_interfaceidBIGINTTrueFalse20父级接口
  1. item_application_prototype表(空)

监控项应用模型信息记录表。

PKNameTypeNot NullUniqueLenNotes
Trueitem_application_prototypeidBIGINTTrueTrue20监控项接口ID
Falseparent_interfaceidBIGINTTrueFalse20父级接口
  1. item_condition表

监控项条件记录表。与items表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueitem_conditionidBIGINTTrueTrue20监控项条件ID
FalseitemidBIGINTTrueFalse20监控项ID
FalseoperatorINTTrueFalse11操作人
FalsemacroVARCHARTrueFalse64
FalsevalueVARCHARTrueFalse255
  1. item_discovery表

监控项自动发现表,根据模板的自动发现规则,创建自动发现的监控项。

与items表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueitemdiscoveryidBIGINTTrueTrue20监控项自动发现ID
FalseitemidBIGINTTrueFalse20对应的监控项ID
Falseparent_itemidBIGINTTrueFalse20父监控项
Falsekey_VARCHARTrueFalse255监控项关键字
FalselastcheckINTTrueFalse11最后检查时间
Falsets_deleteINTTrueFalse11删除时间
  1. item_preproc表

预处理监控项表,与items表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueitem_preprocidBIGINTTrueTrue20预处理监控项ID
FalseitemidBIGINTTrueFalse20对应的监控项ID
FalsestepINTTrueFalse11步骤
Falsetype_INTTrueFalse11类型
FalseparamsVARCHARTrueFalse255参数
  1. items表

监控项表,保存所有监控项。

PKNameTypeNot NullUniqueLenNotes
TrueitemidBIGINTTrueTrue20监控项ID
FalsetypeINTTrueFalse11详情如下:
Falsesnmp_communityVARCHARTrueFalse64snmp相关
Falsesnmp_oidVARCHARTrueFalse512snmp相关
FalsehostidBIGINTTrueFalse20关联的主机ID
FalsenameVARCHARTrueFalse255监控项名称
Falsekey_VARCHARTrueFalse255监控项关键字表达式
FalsedelayVARCHARTrueFalse1024监控时间间隔,单位为秒
FalsehistoryVARCHARTrueFalse255详细监控数据保留的时间,单位为天
FalsetrendsVARCHARTrueFalse255趋势保存的默认时长,单位为天
FalsestatusINTTrueFalse11详情如下:
Falsevalue_typeINTTrueFalse11详情如下:
Falsetrapper_hostsVARCHARTrueFalse255主机捕获
FalseunitsVARCHARTrueFalse255单位,字符串
Falsesnmpv3_securitynameVARCHARTrueFalse64snmp相关配置
Falsesnmpv3_securitylevelINTTrueFalse11snmp相关配置
Falsesnmpv3_authpassphraseVARCHARTrueFalse64snmp相关配置
Falsesnmpv3_privpassphraseVARCHARTrueFalse64snmp相关配置
FalseformulaVARCHARTrueFalse255公式,和multipler一起使用,比如乘倍
FalseerrorVARCHARTrueFalse128错误信息
FalselastlogsizeBIGINTTrueFalse64最大日志容量
FalselogtimefmtVARCHARTrueFalse64日志日期格式化
FalsetemplateidBIGINTFalseFalse20模板ID,与host表关联
FalsevaluemapidBIGINTFalseFalse20监控项的值映射值的ID,与valuemap表关联
FalseparamsTEXTTrueFalse0参数
Falseipmi_sensorVARCHARTrueFalse128Ipmi传感器
FalseauthtypeINTTrueFalse11认证类型:define(‘ITEM_AUTHTYPE_PASSWORD’, 0);define(‘ITEM_AUTHTYPE_PUBLICKEY’, 1);
FalseusernameVARCHARTrueFalse64用户名
FalsepasswordVARCHARTrueFalse64密码
FalsepublickeyVARCHARTrueFalse64认证类型使用publickey的时候,该字段有效
FalseprivatekeyVARCHARTrueFalse64私钥
FalsemtimeINTTrueFalse11
FalseflagsINTEGERTrueFalse11标识
FalseinterfaceidBIGINTFalseFalse20服务接口ID,与interface表关联
FalseportVARCHARTrueFalse64端口
FalsedescriptionTEXTTrueFalse0监控项描述
Falseinventory_linkINTTrueFalse11资产链接Populates host inventory field
FalselifetimeVARCHARTrueFalse255使用周期
Falsesnmpv3_authprotocolINTTrueFalse11snmp相关配置
Falsesnmpv3_privprotocolINTTrueFalse11snmp相关配置
FalsestateINTTrueFalse11报表
Falsesnmpv3_contextnameVARCHARTrueFalse255snmp相关配置
FalseevaltypeINTTrueFalse11评估类型
Falsejmx_endpoindVARCHARTrueFalse255Jmx终止点
Falsemaster_itemidBIGINTTrueFalse20主监控项ID

Type:监控项类型。

define(‘ITEM_TYPE_ZABBIX’, 0);

define(‘ITEM_TYPE_SNMPV1’, 1);

define(‘ITEM_TYPE_TRAPPER’, 2);

define(‘ITEM_TYPE_SIMPLE’, 3);

define(‘ITEM_TYPE_SNMPV2C’, 4);

define(‘ITEM_TYPE_INTERNAL’, 5);

define(‘ITEM_TYPE_SNMPV3’, 6);

define(‘ITEM_TYPE_ZABBIX_ACTIVE’, 7);

define(‘ITEM_TYPE_AGGREGATE’, 8);

define(‘ITEM_TYPE_HTTPTEST’, 9);

define(‘ITEM_TYPE_EXTERNAL’, 10);

define(‘ITEM_TYPE_DB_MONITOR’, 11);

define(‘ITEM_TYPE_IPMI’, 12);

define(‘ITEM_TYPE_SSH’, 13);

define(‘ITEM_TYPE_TELNET’, 14);

define(‘ITEM_TYPE_CALCULATED’,15);

define(‘ITEM_TYPE_JMX’, 16);

status:当前状态,分为可用,不可用,和不支持三种:

define(‘ITEM_STATUS_ACTIVE’,0);

define(‘ITEM_STATUS_DISABLED’,1);

define(‘ITEM_STATUS_NOTSUPPORTED’,3);

value_type:监控项的数据格式:

define(‘ITEM_VALUE_TYPE_FLOAT’,0);

define(‘ITEM_VALUE_TYPE_STR’,1);

define(‘ITEM_VALUE_TYPE_LOG’,2);

define(‘ITEM_VALUE_TYPE_UINT64’,3);

define(‘ITEM_VALUE_TYPE_TEXT’,4);

  1. items_applications表

监控项-应用关联表,与items、applications表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueitemappidBIGINTTrueTrue20监控项应用的关联ID
FalseapplicationidBIGINTTrueFalse20应用ID
FalseitemidBIGINTTrueFalse20监控项ID
  1. maintenances表(空)

该表记录维护策略,与maintance_host,maintance_windows,maintance_group关联.

PKNameTypeNot NullUniqueLenNotes
TruemaintenanceidBIGINTTrueTrue20维护ID
FalsenameVARCHARTrueFalse128维护说明的标题
Falsemaintenance_typeINTTrueFalse0维护类型:0:正常模式,继续收集监控数据1:期间不再收集监控数据
FalsedescriptionTEXTTrueFalse11维护的描述
Falseactive_sinceINTTrueFalse11维护策略启用时间
Falseactive_tillINTTrueFalse11维护策略生效时间
  1. maintenances_groups表(空)

维护-主机组关联表,与maintenances、groups表相关联。

PKNameTypeNot NullUniqueLenNotes
Truemaintenance_groupidBIGINTTrueTrue20维护策略与主机组的关联ID
FalsemaintenanceidBIGINTTrueFalse20维护策略ID
FalsegroupidBIGINTTrueFalse20主机组ID
  1. maintenances_hosts表(空)

该表将维护策略与主机关联起来,关联表为maintances和hosts。

PKNameTypeNot NullUniqueLenNotes
Truemaintenance_hostidBIGINTTrueTrue20维护策略与主机的关联ID
FalsemaintenanceidBIGINTTrueFalse20维护策略ID
FalsehostidBIGINTTrueFalse20主机ID
  1. maintenances_windows表(空)

维护-时间窗口关联表,将maintances与timepreriod关联起来。

PKNameTypeNot NullUniqueLenNotes
Truemaintenance_timeperiodidBIGINTTrueTrue20维护–时间窗口的关联ID
FalsemaintenanceidBIGINTTrueFalse20维护策略ID
FalsetimeperiodidBIGINTTrueFalse20时间窗口ID
  1. mappings表

映射值表,与valuemap表关联,是valuemap表的具体值表。

PKNameTypeNot NullUniqueLenNotes
TruemappingidBIGINTTrueTrue20单个映射关联ID
FalsevaluemapidBIGINTTrueFalse20与valuemap的ID关联,即表示valuemap的具体值
FalsevalueVARCHARTrueFalse64需要被映射的值
FalsenewvalueVARCHARTrueFalse64映射后的新值
  1. media表

通知方式实例表,记录每个用户所有的通知方式。

PKNameTypeNot NullUniqueLenNotes
TruemediaidBIGINTTrueTrue20通知发送的实例ID,每个用户的每个通知方式作为一条记录
FalseuseridBIGINTTrueFalse20用户ID
FalsemediatypeidBIGINTTrueFalse20详情如下:
FalsesendtoVARCHARTrueFalse100发送到的地址,比如电子邮箱
FalseactiveINTEGERTrueFalse11是否启用,0表示启用:define(‘MEDIA_TYPE_STATUS_ACTIVE’, 0);define(‘MEDIA_TYPE_STATUS_DISABLED’, 1);
FalseseverityINTEGERTrueFalse11接受的告警等级,使用累加方式
FalseperiodVARCHARTrueFalse1024通知方式的发送时间段,形式例如:1-7,00:00-24:00

Mediatypeid:媒体类型,支持以下几种:

define(‘MEDIA_TYPE_EMAIL’,0);

define(‘MEDIA_TYPE_EXEC’,1);

define(‘MEDIA_TYPE_SMS’,2);

define(‘MEDIA_TYPE_JABBER’,3);

define(‘MEDIA_TYPE_EZ_TEXTING’,100);

  1. media_type表

通知媒介配置表,包含短信、邮件等

PKNameTypeNot NullUniqueLenNotes
TruemediatypeidBIGINTTrueTrue20媒介类型ID
FalsetypeINTTrueFalse11通知媒介类型
FalsedescriptionVARCHARTrueFalse100描述
Falsesmtp_serverVARCHARTrueFalse255邮箱专用:smtp服务器
Falsesmtp_heloVARCHARTrueFalse255邮件专用helo
Falsesmtp_emailVARCHARTrueFalse255邮件专用配置,邮件地址(发送者)
Falseexec_pathVARCHARTrueFalse255脚本方式的执行路径
Falsegsm_modemVARCHARTrueFalse255短信猫的设备路径
FalseusernameVARCHARTrueFalse255jabber的用户名
FalsepasswdVARCHARTrueFalse255jabber的密码
FalsestatusINTEGERTrueFalse是否启用,0表示启用,1表示未启用
Falsesmtp_portINTTrueFalse11smtp端口
Falsesmtp_securityINTTrueFalse11smtp安全协议
Falsesmtp_verify_peerINTTrueFalse11smtp平级验证
Falsesmtp_verify_hostINTTrueFalse11smtp主机验证
Falsesmtp_authenticationINTTrueFalse11smtp认证
Falseexec_paramsVARCHARTrueFalse255执行参数
FalsemaxsessionsINTTrueFalse11最大sessions值
FalsemaxattemptsINTTrueFalse11最多尝试次数
Falseattempt_intervalVARCHARTrueFalse32每次尝试的间隔
  1. opcommand表(空)

操作命令实例表,记录某个action场景下面的操作。

PKNameTypeNot NullUniqueLenNotes
TrueoperationidBIGINTTrueTrue20操作ID
FalsetypeINTTrueFalse11详情如下:
FalsescriptidBIGINTFalseFalse20脚本ID
Falseexecute_onINTTrueFalse11在server还是agent上执行,1表示server
FalseportVARCHARTrueFalse64执行端口
FalseauthtypeINTTrueFalse11认证类型:publickey or password
FalseusernameVARCHARTrueFalse64当认证类型为password时有用
FalsepasswordVARCHARTrueFalse64当认证类型为password时有用
FalsepublickeyVARCHARTrueFalse64当认证类型为publickey时有用
FalseprivatekeyVARCHARTrueFalse64当认证类型为publickey时有用
FalsecommandTEXTTrueFalse0远程执行的命令串

Type:支持的操作类型:

define(‘OPERATION_TYPE_MESSAGE’,0);

define(‘OPERATION_TYPE_COMMAND’,1);

define(‘OPERATION_TYPE_HOST_ADD’,2);

define(‘OPERATION_TYPE_HOST_REMOVE’,3);

define(‘OPERATION_TYPE_GROUP_ADD’,4);

define(‘OPERATION_TYPE_GROUP_REMOVE’,5);

define(‘OPERATION_TYPE_TEMPLATE_ADD’, 6);

define(‘OPERATION_TYPE_TEMPLATE_REMOVE’,7);

define(‘OPERATION_TYPE_HOST_ENABLE’,8);

define(‘OPERATION_TYPE_HOST_DISABLE’,9);

  1. opcommand_grp表(空)

远程命令-主机组关联表,以主机组为粒度,确定执行范围。与groups表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueopcommand_grpidBIGINTTrueTrue20关联主机组ID
FalseoperationidBIGINTTrueFalse20操作ID,与opcommand表ID关联
FalsegroupidBIGINTTrueFalse20主机组ID,与group表ID关联
  1. opcommand_hst表(空)

远程命令-主机关联表,以主机为粒度,确定执行范围。与hosts表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueopcommand_hstidBIGINTTrueTrue20关联主机ID
FalseoperationidBIGINTTrueFalse20操作ID,与opcommand表ID关联
FalsehostidBIGINTTrueFalse20主机ID,与host表ID关联
  1. opconditions表

操作条件表。主要用来用来记录操作类型及操作符。与conditions表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueopconditionidBIGINTTrueTrue20操作条件主键ID
FalseoperationidBIGINTTrueFalse20操作ID
FalseconditiontypeINTTrueFalse11详情如下:
FalseoperatorINTTrueFalse11详情如下:
FalsevalueVARCHARTrueFalse255条件值

Conditiontype**:条件类型,目前支持以下几种:**

define(‘CONDITION_TYPE_HOST_GROUP’, 0);

define(‘CONDITION_TYPE_HOST’, 1);

define(‘CONDITION_TYPE_TRIGGER’, 2);

define(‘CONDITION_TYPE_TRIGGER_NAME’, 3);

define(‘CONDITION_TYPE_TRIGGER_SEVERITY’, 4);

define(‘CONDITION_TYPE_TRIGGER_VALUE’, 5);

define(‘CONDITION_TYPE_TIME_PERIOD’, 6);

define(‘CONDITION_TYPE_DHOST_IP’,7);

define(‘CONDITION_TYPE_DSERVICE_TYPE’,8);

define(‘CONDITION_TYPE_DSERVICE_PORT’,9);

define(‘CONDITION_TYPE_DSTATUS’,10);

define(‘CONDITION_TYPE_DUPTIME’,11);

define(‘CONDITION_TYPE_DVALUE’,12);

define(‘CONDITION_TYPE_HOST_TEMPLATE’,13);

define(‘CONDITION_TYPE_EVENT_ACKNOWLEDGED’,14);

define(‘CONDITION_TYPE_APPLICATION’,15);

define(‘CONDITION_TYPE_MAINTENANCE’,16);

define(‘CONDITION_TYPE_NODE’,17);

define(‘CONDITION_TYPE_DRULE’,18);

define(‘CONDITION_TYPE_DCHECK’,19);

define(‘CONDITION_TYPE_PROXY’,20);

define(‘CONDITION_TYPE_DOBJECT’,21);

define(‘CONDITION_TYPE_HOST_NAME’,22);

operator**:操作符,支持以下几种:**

define(‘CONDITION_OPERATOR_EQUAL’, 0);

define(‘CONDITION_OPERATOR_NOT_EQUAL’,1);

define(‘CONDITION_OPERATOR_LIKE’,2);

define(‘CONDITION_OPERATOR_NOT_LIKE’,3);

define(‘CONDITION_OPERATOR_IN’,4);

define(‘CONDITION_OPERATOR_MORE_EQUAL’,5);

define(‘CONDITION_OPERATOR_LESS_EQUAL’,6);

define(‘CONDITION_OPERATOR_NOT_IN’,7);

  1. operations表

用来记录操作对应的动作关联表。与actions表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueoperationidBIGINTTrueTrue20操作ID
FalseactionidBIGINTTrueFalse20动作场景ID
FalseoperationtypeINTTrueFalse11详情如下
Falseesc_periodINTTrueFalse255执行时间
Falseesc_step_fromINTTrueFalse11从第几步开始
Falseesc_step_toINTTrueFalse11到第几步(step)
FalseevaltypeINTTrueFalse11执行类型,远程命令还是发送消息
FalserecoveryINTTrueFalse11恢复

Operationtype:操作类型,支持以下几种:

define(‘OPERATION_TYPE_MESSAGE’,0);

define(‘OPERATION_TYPE_COMMAND’,1);

define(‘OPERATION_TYPE_HOST_ADD’,2);

define(‘OPERATION_TYPE_HOST_REMOVE’,3);

define(‘OPERATION_TYPE_GROUP_ADD’,4);

define(‘OPERATION_TYPE_GROUP_R EMOVE’,5);

define(‘OPERATION_TYPE_TEMPLATE_ADD’,6);

define(‘OPERATION_TYPE_TEMPLATE_REMOVE’,7);

define(‘OPERATION_TYPE_HOST_ENABLE’,8);

define(‘OPERATION_TYPE_HOST_DISABLE’,9);

  1. opgroup表

操作-主机组关联表,与operations、groups表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueopgroupidBIGINTTrueTrue20操作-主机组关联ID
FalseoperationidBIGINTTrueFalse20操作ID,关联operation表ID
FalsegroupidBIGINTTrueFalse20主机组ID
  1. opinventory表(空)

操作记录表,用来存放详细的操作记录。与operations表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueoperationidBIGINTTrueFalse20操作ID,关联operation表ID
Falseinventory_modeINTTrueFalse11记录模式
  1. opmessage表

发送消息操作表。

PKNameTypeNot NullUniqueLenNotes
TrueoperationidBIGINTTrueTrue20操作ID,与operation表的ID关联-
Falsedefault_msgINTTrueFalse11默认的短信
FalsesubjectVARCHARTrueFalse255标题
FalsemessageTEXTTrueFalse0短信内容
FalsemediatypeidBIGINTFalseFalse20通知媒介类型
  1. opmessage_grp表

发送消息操作-用户组关联表,用于以用户组为单位发送消息。与operations、usrgrp表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueopmessage_grpidBIGINTTrueTrue20发送消息操作-用户组关联ID
FalseoperationidBIGINTTrueFalse20操作ID,与operation表关联
FalseusrgrpidBIGINTTrueFalse20用户组ID,与usergrp表ID关联
  1. opmessage_usr表

发送消息操作-用户关联表,用于以用户为单位发送消息。与operations、users表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueopmessage_usridBIGINTTrueTrue20发送消息操作-用户关联ID
FalseoperationidBIGINTTrueFalse20操作ID,与operation表ID关联
FalseuseridBIGINTTrueFalse20用户ID,与user表的ID关联
  1. optemplate表

操作-模板关联表,与host表的templateid关联。与operations、hosts表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueoptemplateidBIGINTTrueTrue20操作-模板关联ID
FalseoperationidBIGINTTrueFalse20操作ID,与operation表的ID关联
FalsetemplateidBIGINTTrueFalse20模板ID,与host表的hostid关联
  1. problem表

用来记录事件发生的问题信息表,与events、users、correlation表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueeventsBIGINTTrueTrue20事件ID
FalsesourceINTTrueFalse11数据源
FalseobjectINTTrueFalse11目标
FalseobjectidBIGINTTrueFalse20目标ID
FalseclockINTTrueFalse11出现问题时间
FalsensINTTrueFalse11
Falser_eventidBIGINTFalseFalse20恢复事件ID
Falser_clockINTTrueFalse11恢复问题时间
Falser_nsINTTrueFalse11
FalsecorrelationidBIGINTFalseFalse20与correlations表相关联ID
FalseuseridBIGINTFalseFalse20相关联用户ID
  1. problem_tag表(空)

用来记录事件发生的问题标识表,与events表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueproblemtagidBIGINTTrueTrue20问题标识ID
FalseeventidBIGINTTrueFalse20事件ID
FalsetagVARCHARTrueFalse255标识
FalsevalueVARCHARTrueFalse255
  1. profiles表

记录用户详细配置信息表,与users表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueprofileidBIGINTTrueTrue20用户配置ID
FalseuseridBIGINTTrueFalse20用户ID,与user表ID关联
FalseidxVARCHARTrueFalse96详情如下:
Falseidx2BIGINTTrueFalse20同idx
Falsevalue_idBIGINTTrueFalse20配置值,根据type字段而定
Falsevalue_intINTEGERTrueFalse11配置值,根据type字段而定
Falsevalue_strVARCHARTrueFalse255配置值,根据type字段而定
FalsesourceVARCHARTrueFalse96数据源
FalsetypeINTEGERTrueFalse11详情如下:

idx:配置索引,字符串显示,目前支持以下几种:

web.actionconf.eventsource 、web.actionconf.php.sort

web.actionconf.php.sortorder 、web.applications.php.sort

web.applications.php.sortorder 、web.auditlogs.filter.action

web.auditlogs.filter.alias 、web.auditlogs.filter.resourcetype

web.auditlogs.timeline.period 、web.auditlogs.timeline.stime

web.avail_report.0.groupid 、web.avail_report.0.hostid

web.avail_report.0.timesince 、web.avail_repor t.0.timetill

web.avail_report.mode 、web.cm.groupid 、web.config.groupid

web.config.hostid 、web.dashboard.hats.hat_favgrph.state

web.dashboard.hats.hat_lastiss.state

web.dashboard.hats.hat_stszbx.state

web.dashboard.rf_rate.hat_lastiss 、web.dashconf.filter.enable

web.discovery.php.sort 、web.discovery.php.sortorder

web.discoveryconf.php.sort 、web.discoveryconf.php.sortorder

web.disc_prototypes.php.sort、web.disc_prototypes.php.sortorder

web.events.filter.state

type**:用户配置数据类型**:

define(‘PROFILE_TYPE_UNKNOWN’,0);

define(‘PROFILE_TYPE_ID’,1);

define(‘PROFILE_TYPE_INT’,2);

define(‘PROFILE_TYPE_STR’,3);

define(‘PROFILE_TYPE_ARRAY_ID’,4);

define(‘PROFILE_TYPE_ARRAY_INT’,5);

define(‘PROFILE_TYPE_ARRAY_STR’,6);

  1. proxy_autoreg_host表(空)

代理-自动登记-主机表,PHP前端未用。与hosts表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueidBIGINTTrueTrue20代理主机ID
FalseclockINTTrueFalse11登记时刻,unix时间戳
FalsehostVARCHARTrueFalse64主机名称
Falselisten_ipVARCHARTrueFalse39监听IP
Falselisten_portINTTrueFalse11监听端口
Falselisten_dnsVARCHARTrueFalse64监听DNS
Falselisten_dnsVARCHARTrueFalse64监听DNS
Falselisten_metadateVARCHARTrueFalse255监听元数据
  1. proxy_dhistory表(空)

代理-自动发现历史表,PHP前端未用,server使用。与drules、dcheck表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueidBIGINTTrueTrue20代理_自动发现ID
FalseclockINTTrueFalse11自动发现时间
FalsedruleidBIGINTTrueFalse20规则
FalsetypeINTTrueFalse11类型
FalseipVARCHARTrueFalse39IP地址
FalseportINTTrueFalse11端口地址
FalsevalueVARCHARTrueFalse255
FalsestatusINTTrueFalse11状态
FalsedcheckidBIGINTFalseFalse20自动检查ID
FalsednsVARCHARTrueFalse64DNS地址
  1. proxy_history表(空)

代理历史数据表,PHP前端未用,server端使用,与items表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueidBIGINTTrueTrue20记录ID,表示哪个记录已经从proxy端被记录同步到server端
FalseitemidBIGINTTrueFalse20监控项ID
FalseclockINTTrueFalse11收集时间(使用proxy的时间)
FalsetimestampINTTrueFalse11用于widonws的时间戳
FalsesourceVARCHARTrueFalse64用于windows的事件记录源
FalseseverityINTTrueFalse11用于windows,记录严重程度
FalsevalueLONGTEXTTrueFalse0实际值
FalselogeventidINTTrueFalse11用于windows,时间ID(logeventID)
FalsensINTTrueFalse11
FalsestatusINTTrueFalse11状态
FalselastlogsizeBIGINTTrueFalse20最大日志大小
FalsemtimeINTTrueFalse11
FalseflagsINTTrueFalse11标识
  1. regexps表

正则表达式信息记录表。

PKNameTypeNot NullUniqueLenNotes
TrueregexpidBIGINTTrueTrue20正则表达式ID
FalsenameVARCHARTrueFalse128正则表达名称
Falsetest_stringTEXTTrueFalse0测试字符串
  1. rights表

权限配置表,用于记录用户组(usrgrp)与主机组(group)之间的权限关联,权限分为可读可写、可读、不可读不可写三种,与groups表相关联。

PKNameTypeNot NullUniqueLenNotes
TruerightidBIGINTTrueTrue20权限ID
FalsegroupidBIGINTTrueFalse20与usrgrp的组ID关联
FalsepermissionINTTrueFalse11权限:3:可读可写2:只可读1:deny
FalseidBIGINTTrueFalse20与group的组ID关联
  1. screen_user表(空)

屏幕实例关联用户表,与users、screens表相关联。

PKNameTypeNot NullUniqueLenNotes
TruescreenuseridBIGINTTrueTrue20屏幕实例关联用户的ID
FalsescreenidBIGINTTrueFalse20屏幕实例ID
FalseuseridBIGINTTrueFalse20用户ID
FalsepermissionINTTrueFalse11权限
  1. screen_usrgrp表(空)

屏幕实例关联用户组表,与usrgrp、screens表相关联。

PKNameTypeNot NullUniqueLenNotes
TruescreenusrgrpidBIGINTTrueTrue20屏幕实例关联用户组的ID
FalsescreenidBIGINTTrueFalse20屏幕实例ID
FalseusrgrpidBIGINTTrueFalse20用户组ID
FalsepermissionINTTrueFalse11权限
  1. screens表

屏幕实例表,用于记录一个屏幕的行数和列数,并与hosts、users表关联。

PKNameTypeNot NullUniqueLenNotes
TruescreenidBIGINTTrueTrue20屏幕实例ID
FalsenameVARCHARTrueFalse255屏幕实例名称
FalsehsizeINTTrueFalse11列数
FalsevsizeINTTrueFalse11行数
FalsetemplateidBIGINTFalseFalse20模板ID,与host的id关联
FalseuseridBIGINTFalseFalse20用户ID
FalseprivateINTTrueFalse11
  1. screens_items表

屏幕子元素配置表,用于配置单个屏幕里面的元素,包括大小,样式,类型等,

与screens表相关联。

PKNameTypeNot NullUniqueLenNotes
TruescreenitemidBIGINTTrueTrue20屏幕子元素ID
FalsescreenidBIGINTTrueFalse20屏幕ID
FalseresourcetypeINTTrueFalse11详情如下:
FalseresourceidBIGINTTrueFalse20资源ID,依赖于资源类型
FalsewidthINTTrueFalse11宽度,像素
FalseheightINTTrueFalse11高度,像素
FalsexINTTrueFalse11起始的X轴坐标
FalseyINTTrueFalse11起始的Y轴坐标
FalsecolspanINTTrueFalse11列扩展
FalserowspanINTTrueFalse11行扩展
FalseelementsINTTrueFalse11元素
FalsevalignINTTrueFalse11垂直对齐方式
FalsehalignINTTrueFalse11水平对齐方式
FalsestyleINTTrueFalse11样式
FalseurlVARCHARTrueFalse255当类型为url时,记录url字符串
FalsedynamicINTTrueFalse11是否动态:define(‘SCREEN_SIMPLE_ITEM’, 0);define(‘SCREEN_DYNAMIC_ITEM’, 1);
Falsesort_triggersINTTrueFalse11详情如下:
FalseapplicationVARCHARTrueFalse255对应的应用
FalseMax_columnsINTTrueFalse11最大列

**Resourcetype:**资源类型,目前支持以下几种方式:

define(‘SCREEN_RESOURCE_GRAPH’,0);

define(‘SCREEN_RESOURCE_SIMPLE_GRAPH’,1);

define(‘SCREEN_RESOURCE_MAP’, 2);

define(‘SCREEN_RESOURCE_PLAIN_TEXT’,3);

define(‘SCREEN_RESOURCE_HOSTS_INFO’,4);

define(‘SCREEN_RESOURCE_TRIGGERS_INFO’,5);

define(‘SCREEN_RESOURCE_SERVER_INFO’,6);

define(‘SCREEN_RESOURCE_CLOCK’,7);

define(‘SCREEN_RESOURCE_SCREEN’,8);

define(‘SCREEN_RESOURCE_TRIGGERS_OVERVIEW’,9);

define(‘SCREEN_RESOURCE_DATA_OVERVIEW’,10);

define(‘SCREEN_RESOURCE_URL’,11);

define(‘SCREEN_RESOURCE_ACTIONS’,12);

define(‘SCREEN_RESOURCE_EVENTS’,13);

define(‘SCREEN_RESOURCE_HOSTGROUP_TRIGGERS’,14);

define(‘SCREEN_RESOURCE_SYSTEM_STATUS’,15);

define(‘SCREEN_RESOURCE_HOST_TRIGGERS’,16);

define(‘SCREEN_RESOURCE_HISTORY’,17);

define(‘SCREEN_RESOURCE_CHART’,18);

sort_triggers:选择为status host trigger的时候,可以提供几种trigger的排序方式:

define(‘SCREEN_SORT_TRIGGERS_DATE_DESC’,0);

define(‘SCREEN_SORT_TRIGGERS_SEVERITY_DESC’,1);

define(‘SCREEN_SORT_TRIGGERS_HOST_NAME_ASC’,2);

define(‘SCREEN_SORT_TRIGGERS_TIME_ASC’,3);

define(‘SCREEN_SORT_TRIGGERS_TIME_DESC’,4);

define(‘SCREEN_SORT_TRIGGERS_TYPE_ASC’,5);

define(‘SCREEN_SORT_TRIGGERS_TYPE_DESC’,6);

define(‘SCREEN_SORT_TRIGGERS_STATUS_ASC’,7);

define(‘SCREEN_SORT_TRIGGERS_STATUS_DESC’,8);

define(‘SCREEN_SORT_TRIGGERS_RETRIES_LEFT_ASC’,9);

define(‘SCREEN_SORT_TRIGGERS_RETRIES_LEFT_DESC’,10);

define(‘SCREEN_SORT_TRIGGERS_RECIPIENT_ASC’,1);

define(‘SCREEN_SORT_TRIGGERS_RECIPIENT_DESC’,2);

  1. scripts表

脚本配置表,定义脚本的执行路径和方式。与usrgrp、groups表相关联。

PKNameTypeNot NullUniqueLenNotes
TruescriptidBIGINTTrueTrue20脚本ID
FalsenameVARCHARTrueFalse255脚本名称
FalsecommandVARCHARTrueFalse255脚本命令
Falsehost_accessINTTrueFalse11需要的主机权限,2为只读即可
FalseusrgrpidBIGINTFalseFalse20用户组ID
FalsegroupidBIGINTFalseFalse20主机组ID,NULL表示所有主机组均可使用
FalsedescriptionTEXTTrueFalse0脚本描述
FalseconfirmationVARCHARTrueFalse255是否使用确认功能,若启用,则该字段不为空,且为确认信息。
FalsetypeINTEGERTrueFalse11脚本类型,包括脚本或者IPMI,0表示脚本,1表示IPMI
Falseexecute_onINTEGERTrueFalse11执行位置:1表示server2表示agent
  1. service_alarms表(空)

服务告警表。

PKNameTypeNot NullUniqueLenNotes
TrueservicealarmidBIGINTTrueTrue20服务告警参数ID
FalseserviceidBIGINTTrueFalse20服务ID
FalseclockINTTrueFalse11服务告警发生时间
FalsevalueINTTrueFalse11
  1. services表(空)

服务实例表。与triggers表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueserviceidBIGINTTrueTrue20服务ID
FalsenameVARCHARTrueFalse128服务名称
FalsestatusINTTrueFalse11服务状态
FalsealgorithmINTTrueFalse11详情如下:
FalsetriggeridBIGINTFalseFalse20触发器ID,与trigger表ID关联
FalseshowslaINTTrueFalse11是否显示SLA,服务等级协议
FalsegoodslaDOUBLETrueFalse16SLA的阀值,浮点表示
FalsesortorderINTEGERTrueFalse11排序,0-999,用于服务树状结构展示

Algorithm:服务算法

define(‘SERVICE_ALGORITHM_NONE’,0); // do not calculate

define(‘SERVICE_ALGORITHM_MAX’,1); // problem, if one chil dren has a problem

define(‘SERVICE_ALGORITHM_MIN’,2); // problem, if all children have problems

  1. services_links表(空)

服务依赖关系表。

PKNameTypeNot NullUniqueLenNotes
TruelinkidBIGINTTrueTrue20链接ID
FalseserviceupidBIGINTTrueFalse20服务启动ID
FalseservicedownidBIGINTTrueFalse20服务终止ID
FalsesoftINTTrueFalse11依赖软件
  1. services_times表(空)

服务时间定义表,用于定义IT服务的开、关时间段,支持循环(按星期)或者单次。与items、services表相关联。

PKNameTypeNot NullUniqueLenNotes
TruetimeidBIGINTTrueTrue20时间ID
FalseserviceidBIGINTTrueFalse20服务ID,与services表关联
FalsetypeINTTrueFalse11详情如下:
Falsets_fromINTTrueFalse11从什么时候开始
Falsets_toINTTrueFalse11到什么时间结束
FalsenoteVARCHARTrueFalse255单次关闭的备注

Type:时间类型:

define(‘SERVICE_TIME_TYPE_UPTIME’,0);

define(‘SERVICE_TIME_TYPE_DOWNTIME’,1);

define(‘SERVICE_TIME_TYPE_ONETIME_DOWNTIME’,2);

  1. sessions表

会话信息记录表。与users表相关联。

PKNameTypeNot NullUniqueLenNotes
TruesessionidVARCHARTrueTrue32会话ID
FalseuseridBIGINTTrueFalse20用户ID
FalselastaccessINTTrueFalse11最后访问事件,unix时间戳
FalsestatusINTTrueFalse11状态:define(‘ZBX_SESSION_ACTIVE’, 0);define(‘ZBX_SESSION_PASSIVE’, 1);
  1. slides表(空)

单个幻灯片配置表,记录一个幻灯片组所包含的所有单个幻灯片的配置,与screens表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueslideidBIGINTTrueTrue20幻灯片ID
FalseslideshowidBIGINTTrueFalse20关联的幻灯展示ID
FalsescreenidBIGINTTrueFalse20展示的屏幕ID
FalsestepINTTrueFalse11第几步
FalsedelayINTTrueFalse11延时秒
  1. slideshow_user表(空)

单个幻灯片展示实例-用户表,记录一个幻灯片组所包含的所有单个幻灯片与用户的关联关系,与slideshow、users表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueslideshowuseridBIGINTTrueTrue20幻灯片展示关联的用户ID
FalseslideshowidBIGINTTrueFalse20关联的幻灯展示ID
FalseuseridBIGINTTrueFalse20用户ID
FalsepermissionINTTrueFalse11权限
  1. slideshow_usrgrp表(空)

单个幻灯片展示实例-用户组表,记录一个幻灯片组所包含的所有单个幻灯片与用户组的关联关系,与slideshow、users表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueslideshowusrgrpidBIGINTTrueTrue20幻灯片展示关联的用户组ID
FalseslideshowidBIGINTTrueFalse20关联的幻灯展示ID
FalseusrgrpidBIGINTTrueFalse20用户组ID
FalsepermissionINTTrueFalse11权限
  1. slideshows表(空)

幻灯展示实例表,即幻灯片组。与users表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueslideshowidBIGINTTrueTrue20幻灯片组ID
FalsenameVARCHARTrueFalse255名称
FalsedelayINTTrueFalse32两个片组间的延时
TrueuseridBIGINTTrueTrue20用户ID
FalseprivateINTTrueFalse11
  1. sysmap_element_trigger表(空)

系统地图元素触发器关联表,与triggers表相关联。

PKNameTypeNot NullUniqueLenNotes
Trueselement_triggeridBIGINTTru eTrue20系统地图元素与触发器的关联ID
FalseselementidBIGINTTrueFalse20元素ID
FalsetriggeridBIGINTTrueFalse255触发器ID
  1. sysmap_element_url表(空)

系统地图元素URL关联表

PKNameTypeNot NullUniqueLenNotes
TruesysmapelementurlidBIGINTTrueTrue20系统地图元素与URL的关联ID
FalseselementidBIGINTTrueFalse20元素ID
FalsenameVARCHARTrueFalse255名称
FalseurlVARCHARTrueFalse255URL
  1. sysmap_shape表

系统地图模型表。

PKNameTypeNot NullUniqueLenNotes
Truesysmap_shapeidBIGINTTrueTrue20系统地图模型ID
FalsesysmapidBIGINTTrueFalse20系统地图ID
FalsetypeINTTrueFalse11类型
FalsexINTTrueFalse11起始的X轴坐标
FalseyINTTrueFalse11起始的Y轴坐标
FalsewidthINTTrueFalse11宽度,像素
FalseheightINTTrueFalse11高度,像素
FalsetextTEXTTrueFalse0文本信息
FalsefontINTTrueFalse11前端
Falsefont_sizeINTTrueFalse11前端大小
Falsefont_colorVARCHARTrueFalse6前端颜色
Falsetext_valignINTTrueFalse11文本垂直对齐方式
Falsetext_halignINTTrueFalse11文本水平对齐方式
Falseborder_typeINTTrueFalse11边框样式
Falseborder_widthINTTrueFalse11边框宽度
Falseborder_colorVARCHARTrueFalse6边框颜色
Falsebackground_colorVARCHARTrueFalse6背景颜色
FalsezindexINTTrueFalse11首页
  1. sysmap_url表(空)

系统地图-URL关联表。

PKNameTypeNot NullUniqueLenNotes
TruesysmapurlidBIGINTTrueTrue20系统地图-URL关联ID
FalsesysmapidBIGINTTrueFalse20系统地图ID
FalsenameVARCHARTrueFalse255URL名称
FalseurlVARCHARTrueFalse255URL地址
FalseelementtypeINTEGERTrueFalse11详情如下:

elementtypeL元素类型,每种类型的元素都可以设定URL

define(‘SYSMAP_ELEMENT_TYPE_HOST’,0);

define(‘SYSMAP_ELEMENT_TYPE_MAP’,1);

define(‘SYSMAP_ELEMENT_TYPE_TRIGGER’,2);

define(‘SYSMAP_ELEMENT_TYPE_HOST_GROUP’,3);

define(‘SYSMAP_ELEMENT_TYPE_IMAGE’,4);

  1. sysmap_user表(空)

系统地图关联用户表,记录用户的关联关系,与sysmap、users表相关联。

PKNameTypeNot NullUniqueLenNotes
TruesysmapuseridBIGINTTrueTrue20系统地图关联的用户ID
FalsesysmapidBIGINTTrueFalse20关联的系统地图ID
FalseuseridBIGINTTrueFalse20用户ID
FalsepermissionINTTrueFalse11权限
  1. sysmap_usrgrp表(空)

系统地图关联用户表,记录用户的关联关系,与sysmap、users表相关联。

PKNameTypeNot NullUniqueLenNotes
TruesysmapusrgrpidBIGINTTrueTrue20系统地图关联的用户组ID
FalsesysmapidBIGINTTrueFalse20关联的系统地图ID
FalseusrgrpidBIGINTTrueFalse20用户组ID
FalsepermissionINTTrueFalse11权限
  1. sysmaps表

系统地图表。包含系统地图配置显示信息及标签属性。

PKNameTypeNot NullUniqueLenNotes
TruesysmapidBIGINTTrueTrue20系统地图ID
FalsenameVARCHARTrueFalse128系统地图名称
FalsewidthINTTrueFalse11宽度,像素
FalseheightINTTrueFalse11高度,像素
FalsebackgroundidBIGINTFalseFalse20背景图像ID,引用image表
Falselabel_typeINTTrueFalse11详情如下:
Falselabel_locationINTTrueFalse11详情如下:
FalsehighlightINTTrueFalse11是否高亮
FalseexpandproblemINTTrueFalse11是否展开显示问题
FalsemarkelementsINTTrueFalse11标记元素
Falseshow_unackINTTrueFalse11是否显示未确认的数据
Falsegrid_sizeINTTrueFalse11网格大小,像素
Falsegrid_showINTTrueFalse11是否显示网格
Falsegrid_alignINTTrueFalse11网格对齐功能开启,1表示开启
Falselabel_formatINTTrueFalse11标签化分类
Falselabel_type_hostINTTrueFalse11主机标签类型
Falselabel_type_hostgroupINTTrueFalse11主机组标签类型
Falselabel_type_triggerINTTrueFalse11触发器标签类型
Falselabel_type_mapINTTrueFalse11地图标签类型
Falselabel_type_imageINTTrueFalse11图片标签类型
Falselabel_string_hostVARCHARTrueFalse255主机字符串标签
Falselabel_string_hostgroupVARCHARTrueFalse255主机组标签字符串
Falselabel_string_triggerVARCHARTrueFalse255触发器字符串标签
Falselabel_string_mapVARCHARTrueFalse255地图字符串标签
Falselabel_string_imageVARCHARTrueFalse255图片字符串标签
FalseiconmapidBIGINTFalseFalse图标的ID,会调用icon_map表中的数据
Falseexpand_macrosINTTrueFalse是否启用宏

label_type:标签类型

define(‘MAP_LABEL_TYPE_LABEL’,0);

define(‘MAP_LABEL_TYPE_IP’,1);

define(‘MAP_LABEL_TYPE_NAME’,2);

define(‘MAP_LABEL_TYPE_STATUS’,3);

define(‘MAP_LABEL_TYPE_NOTHING’,4);

define(‘MAP_LABEL_TYPE_CUSTOM’,5)

label_location:标签位置

define(‘MAP_LABEL_LOC_BOTTOM’,0);

define(‘MAP_LABEL_LOC_LEFT’,1);

define(‘MAP_LABEL_LOC_RIGHT’,2);

define(‘MAP_LABEL_LOC_TOP’,3);

  1. sysmaps_elements表

系统地图-元素关联表。与sysmaps表相关联。

PKNameTypeNot NullUniqueLenNotes
TrueselementidBIGINTTrueTrue20系统元素ID
FalsesysmapidBIGINTTrueFalse20系统地图ID
FalseelementidBIGINTTrueFalse20元素ID
FalseelementtypeINTTrueFalse11元素类型
Falseiconid_offBIGINTFalseFalse20关闭图标ID
Falseiconid_onBIGINTFalseFalse20开启图标ID
FalselabelVARCHARTrueFalse2048标签
Falselabel_locationINTFalseFalse11标签位置
FalsexINTTrueFalse11起始的X轴坐标
FalseyINTTrueFalse11起始的Y轴坐标
Falseiconid_disabledBIGINTFalseFalse20禁用的图标ID
Falseiconid_maintenanceBIGINTFalseFalse20维护的图标ID
FalseelementsubtypeINTTrueFalse11子元素类型
FalseareatypeINTTrueFalse11区域类型
FalsewidthINTTrueFalse11宽度,像素
FalseheightINTTrueFalse11高度,像素
FalseviewtypeINTTrueFalse11视图类型
Falseuse_iconmapINTTrueFalse11用户图标地图
Falseuse_iconmapINTTrueFalse11用户图标地图
FalseapplicationVARCHARTrueFalse255关联的应用
  1. sysmaps_link_triggers表(空)

系统地图连接-触发器关联表。与triggers表相关联。

PKNameTypeNot NullUniqueLenNotes
TruelinktriggeridBIGINTTrueTrue20连接-触发器关联ID
FalselinkidBIGINTTrueFalse20连接ID
FalsetriggeridBIGINTTrueFalse20触发器ID
FalsedrawtypeINTTrueFalse11详情如下:
FalsecolorVARCHARTrueFalse6连接颜色

Drawtype:连接绘画形式

define(‘GRAPH_ITEM_DRAWTYPE_LINE’, 0);

define(‘GRAPH_ITEM_DRAWTYPE_FILLED_REGION’, 1);

define(‘GRAPH_ITEM_DRAWTYPE_BOLD_LINE’, 2);

define(‘GRAPH_ITEM_DRAWTYPE_DOT’, 3);

define(‘GRAPH_ITEM_DRAWTYPE_DASHED_LINE’,4);

define(‘GRAPH_ITEM_DRAWTYPE_GRADIENT_LINE’,5);

define(‘GRAPH_ITEM_DRAWTYPE_BOLD_DOT’,6);

  1. sysmaps_links表(空)

系统地图链接表。与sysmaps、sysmaps_elements表相关联。

PKNameTypeNot NullUniqueLenNotes
TruelinkidBIGINTTrueTrue20链接ID
FalsesysmapidBIGINTTrueFalse20系统地图ID
Falseselementid1BIGINTTrueFalse20链接的第一个元素ID,与sysmap_elements的ID关联
Falseselementid2BIGINTTrueFalse20链接的第二个元素ID,与sysmap_elements的ID关联
FalsedrawtypeINTEGERTrueFalse11详情如下:
FalsecolorVARCHARTrueFalse6默认颜色
FalselabelVARCHARTrueFalse2048链接标签名称

Drawtype:绘制类型

define(‘GRAPH_ITEM_DRAWTYPE_LINE’,0);

define(‘GRAPH_ITEM_DRAWTYPE_FILLED_REGION’,1);

define(‘GRAPH_ITEM_DRAWTYPE_BOLD_LINE’,2);

define(‘GRAPH_ITEM_DRAWTYPE_DOT’,3);

define(‘GRAPH_ITEM_DRAWTYPE_DASHED_LINE’,4);

define(‘GRAPH_ITEM_DRAWTYPE_GRADIENT_LINE’,5);

define(‘GRAPH_ITEM_DRAWTYPE_BOLD_DOT’,6);

  1. task表(空)

任务调度表。

PKNameTypeNot NullUniqueLenNotes
TruetaskidBIGINTTrueTrue20任务调度ID
FalsetypeINTTrueFalse11任务调度类型
FalsestatusINTTrueFalse11状态
FalseclockINTTrueFalse11任务调度时间
FalsettlINTTrueFalse11
Falseproxy_hostoidVARCHARTrueFalse20代理主机ID
  1. task_acknowledge表(空)

任务调度信息告警确认表,与acknowledges表相关联。

PKNameTypeNot NullUniqueLenNotes
TruetaskidBIGINTTrueTrue20任务调度ID
FalseacknowledgeidBIGINTTrueFalse20关联的告警确认ID
  1. task_close_problem表(空)

任务调度问题关闭表,与acknowledges表相关联。

PKNameTypeNot NullUniqueLenNotes
TruetaskidBIGINTTrueTrue20任务调度ID
FalseacknowledgeidBIGINTTrueFalse20关联的告警确认ID
  1. task_remote_command表(空)

任务远程命令信息记录表。与task、alerts、hosts表相关联。

PKNameTypeNot NullUniqueLenNotes
TruetaskidBIGINTTrueTrue20任务调度ID
Falsecommand_typeINTTrueFalse11命令类型
Falseexecute_onINTTrueFalse11开启执行权限
FalseportINTTrueFalse11端口
FalseauthtypeINTTrueFalse11认证类型
FalseusernameVARCHARTrueFalse64用户名
FalsepasswordVARCHARTrueFalse64密码
FalsepublickeyVARCHARTrueFalse64公钥
FalseprivatekeyVARCHARTrueFalse64私钥
FalsecommandTEXTTrueFalse0命令
TruealertidBIGINTTrueFalse20资产ID
Falseparent_taskidBIGINTTrueFalse20父任务调度ID
FalsehostidBIGINTTrueFalse20主机ID
  1. task_remote_command_result表(空)

任务远程命令的结果信息记录表。与task

PKNameTypeNot NullUniqueLenNotes
TruetaskidBIGINTTrueTrue20任务调度ID
FalsestatusINTTrueFalse11状态
Falseparent_taskidBIGINTTrueFalse20父任务调度ID
FalseinfoTEXTTrueFalse0结果信息
  1. timeperiods表(空)

时间窗口定义表。

PKNameTypeNot NullUniqueLenNotes

http://www.kler.cn/a/461412.html

相关文章:

  • golang 编程规范 - 项目目录结构
  • 小程序发版后,强制更新为最新版本
  • 大模型 LangChain 开发框架:Runable 与 LCEL 初探
  • SOLIDWORKS Composer在产品设计、制造与销售中的应用
  • 二、AI知识(神经网络)
  • sqlalchemy-access库操作MS Access
  • STM32单片机芯片与内部53 AT24C02读写原理 模拟IIC 标准库 HAL库
  • el-input输入框需要支持多输入,最后传输给后台的字段值以逗号分割
  • 智慧社区养老服务平台(源码+文档+部署+讲解)
  • C语言自定义类型
  • 字节跳动Java开发面试题及参考答案(数据结构算法-手撕面试题)
  • 【网络云SRE运维开发】2024第52周-每日【2024/12/31】小测-计算机网络参考模型和通信协议的理论和实操考题-简要解析
  • AI替换:FaceFusion4.1.0 更新内容和软件
  • STM32 IAP技术 bootloader设计
  • 好用的随机生成图片的网站
  • Ae:项目设置 - 音频
  • π₀:基于VLM的多任务具身操作基础模型
  • View Shadcn UI 正式版本 v2024.5.4 发布
  • C++【内存管理】
  • golang中的错误处理机制
  • Fetch处理大模型流式数据请求与解析
  • OpenLinkSaas使用手册-项目外部资源管理
  • HarmonyOS:@Require装饰器:校验构造传参
  • 深入解析 Android MediaHTTPConnection JNI 实现
  • 2024广东省职业技能大赛云计算——私有云(OpenStack)平台搭建
  • Java Web学生自习管理系统