需求:
对 mysql 输出进行 groug by 排序并执行 top 10 返回
前提:
当前需对 zabbix 执行自定义监控数据返回.
涉及到的表比较多, 下面作出简单的说明
hosts_groups 用于记录主机与组的 id 关系
groups 表用于记录主机组信息
hosts 表用于记录主机信息
item 用于记录监控项
history 与 history_uint 表结构一样, 都是用于记录 items 的记录, 但 history_unit 记录的是通过 discovery 方式发现的 items. (具体信息参考
如果觉得复杂, 可以直接创建下面的表进行测试.
看下面的方法, (以真实数据进行测试咯) 所以返回值与上述表不一样
1. 获取一行的 top 数据
2. 把其他列的数据也添加上去
3. 要创建 group by 方式的 top 10 , 需要创建一个临时表.
4. 最终结果, 按照 group by 输出 top 10 信息