相关组件安装脚本

[root@java_gateway4 java_tps]# cat cront_install.sh
#!/bin/bash
yum install jq -y
mkdir /home/java_tps
touch /tmp/hystrix.data.back
chmod -R 777 /tmp/hystrix.data.back
#scp -P10036 10.81.2.46:/home/java_tps/* /home/java_tps/
cp /home/java_tps/*.conf /etc/zabbix/zabbix_agentd.d/
service zabbix-agent restart
prom1=`ps aux|grep gateway/gateway|grep -v 'auto'|awk 'END {print$2}'`
#echo $prom1
prom2=`ss -tnlp|grep $prom1|awk '{print$4}'|awk -F ':' '{print$2}'`
#echo $prom2
#for((i=1;i<=5;i++));do
# curl -s -m 1 "http://localhost:$prom2/hystrix.stream" >/tmp/hystrix.data.back
# cp /tmp/hystrix.data.back /tmp/hystrix.data
# sleep 9
# echo $i
#done
echo "* * * * * curl -s -m 1 'http://localhost:$prom2/hystrix.stream' >/tmp/hystrix.data.back">> /var/spool/cron/root

cront -l

ll /home/java_tps/*
service zabbix-agent status
ll /etc/zabbix/zabbix_agentd.d/*.conf

ZABBIX客户端配置文件

[root@java_gateway4 java_tps]# cat tps_mod.conf
UnsafeUserParameters=1
UserParameter=check.hystrix[*],/home/java_tps/discovery2.sh $1 $2 $3 $4 $5

数据获取文件

[root@java_gateway4 java_tps]# cat discovery2.sh
#!/bin/bash
#prom1=`ps aux|grep gateway/gateway|grep -v 'auto'|awk 'END {print$2}'`
#prom2=`ss -tnlp|grep $prom1|awk '{print$4}'|awk -F ':' '{print$2}'`
#curl -s -m 1 "http://localhost:$prom2/hystrix.stream" > /tmp/hystrix.data.back
discovery_api(){
API_NAMES=($(sed 's/data: //' /tmp/hystrix.data.back | grep -i $1 | jq -r .name 2>/dev/null | sort | uniq))
LENGTH=${#API_NAMES[@]}
printf "{\n"
printf '\t'"\"data\":["
for ((i=0;i<$LENGTH;i++));do
printf '\n\t\t{'
printf "\"{#API_NAME}\":\"${API_NAMES[$i]}\"}"
if [ $i -lt $[$LENGTH-1] ];then
printf ','
fi
done
printf "\n\t]\n"
printf "}\n"
}

get_result(){
echo $3 | grep -i -q latencyTotal

if [ $? -ne 0 ];then
result=$(grep $1 /tmp/hystrix.data.back | grep -i $2 | tail -2 | head -1 | sed 's/data: //' | jq -r .${3})
echo $result
else
result=$(grep $1 /tmp/hystrix.data.back | grep -i $2 | tail -2 | head -1 | sed 's/data: //' | jq -r .${3}[\"$4\"])
echo $result
fi
}

$1 $2 $3 $4 $5

模板自动发现创建

参考资料

鸡哥

Sping Cloud hystrix.stream 自动发现-监控的更多相关文章

  1. zabbix自动发现监控url

    1.在监控客户机上 web_site_code_status.sh: #!/bin/bash UrlFile="/opt/scripts/WEB.txt" IFS=$'\n' we ...

  2. zabbix使用自动发现监控esxi的磁盘存储storage

    zabbix使用自动发现监控esxi的磁盘存储storage 在任意一台可以访问vcenter的zabbix-agent服务器上添加exsi的磁盘监控模板即可 创建模板过程: custom.esxi. ...

  3. zabbix自动发现监控mysql

    一. 数据库给只读权限 1.1 grant usage on *.* to 'zabbix'@'127.0.0.1' identified by 'zabbix'; flush privileges; ...

  4. Prometheus基于consul自动发现监控对象 https://www.iloxp.com/archive/11/

      Prometheus 监控目标为什么要自动发现 频繁对Prometheus配置文件进行修改,无疑给运维人员带来很大的负担,还有可能直接变成一个“配置小王子”,即使是配置小王子也会存在人为失误的情况 ...

  5. 使用lld自动发现监控多实例redis

    zabbix 可以通过常见的手段监控到各种服务,通过编写脚本来获取返回值并将获取到的值通过图形来展现出来,包括(系统.服务.业务)层面.可是有些时候在一些不固定的场合监控一些不固定的服务就比较麻烦.例 ...

  6. 使用 zabbix 自动发现监控 MySQL

    介绍 使用 zabbix 的 low-level 自动发现功能完成单主机多端口的监控, 详见low_level_discovery, 整体上监控类似 percona 的 zabbix 监控插件, 不过 ...

  7. Zabbix自动发现监控Tomcat进程

    1.编辑自动发现脚本 自动发现脚本只支持JSON格式 #!/usr/bin/env python # -*- coding:utf-8 -*- import commands import psuti ...

  8. zabbix监控自动发现监控tomcat(V1)

    背景说明: 由于zabbix监控使用自带的模版,只能监控主机上只有1个tomcat的场景适合,虽然网上很多朋友都是在每个监控项上面添加一个空格来解决问题.但是个人感觉这种方法还是蛮麻烦的,所以写一篇使 ...

  9. zabbix自动发现监控远程端口

    zabbix监控远程服务器端口,simple checks是zabbix用来监控无agent的主机 脚本和模板地址: https://github.com/mikeluwen/tcpmonitor

随机推荐

  1. 2017《JAVA技术》预备作业2-计科1502-19-何俏依

    Git学习笔记 1.安装git并验证安装成功 2.注册码云账号并配置git 3.创建ssh key并在码云上添加公钥,验证公钥添加成功 添加公钥的过程中,出现了一些问题,未找到文件,经过老师的指点,仔 ...

  2. Linux上安装MangoDB

    版本 MongDB4.0.3 安装 tar -zxvf mongodb-linux-x86_64-rhel62-4.0.3.tgz默认的数据目录在/data/db,也可以指定目录启动命令./bin/m ...

  3. 【DB2】SQL1585N 由于没有具有兼容页面大小的可用系统临时表空间,因此无法创建临时表。SQLSTATE=54048

    自己写了一段SQL,SQL中包含ORDER BY 字句,但是在执行的时候报错如下: 经过查询发现是由于临时表空间的PAGESIZE不够大,可考虑建16k或者32k PAGESIZE的表空间 示例如下: ...

  4. Python 面向对象编程(进阶部分)

    静态方法: 通过 @staticmethod 装饰器即可把其装饰的方法变为一个静态方法.普通的方法,可以在实例化后直接调用,并且在方法里可以通过self.调用实例变量或类变量,但静态方法是不可以访问实 ...

  5. docker的ubuntu镜像无ifconfig和ping netstat命令

    docker的ubuntu镜像无ifconfig和ping命令 或者 ubuntu系统中无ifconfig 和 ping 解决方案: 执行以下鸣冷: apt-get update apt-get in ...

  6. 什么是FPGA的HP,HR I/O

    什么是FPGA的HP,HR I/O HP接口为高速接口,用于存储器或者芯片与芯片之间的接口,HR可以接受很宽的电平标准.

  7. python3.6 内置函数

    python内置函数 # encoding: utf-8 # module builtins # from (built-in) # by generator 1.145 ""&q ...

  8. 兼容ie,火狐的判断回车键js脚本

    var event = window.event || arguments.callee.caller.arguments[0]; var keycode = event.keyCode || eve ...

  9. Flask--(一对多demo)作者书籍模型

    一对多模型的增加和删除 后端实现: from flask import Flask from flask import flash from flask import redirect from fl ...

  10. NodeJS对象数组Array 根据对象object key的值排序sort

    有个js对象数组 var ary=[{id:1,name:”b”},{id:2,name:”b”}] 需求是根据name 或者 id的值来排序,这里有个风骚的函数. /** * 对数组中的对象,按对象 ...