Parade Series - json - jq

在这里插入图片描述
net-offline-test

#####################################################################

URI=http://$SERVER:$PORT

ARGS='{'
ARGS=$ARGS'"address":"'$SERVER'","port":"'$PORT'",'
ARGS=$ARGS'"time":{'
ARGS=$ARGS'"namelookup":"'%{time_namelookup}'",'
ARGS=$ARGS'"connect":"'%{time_connect}'",'
ARGS=$ARGS'"total":"'%{time_total}'"'
ARGS=$ARGS'}'
ARGS=$ARGS'}'
#
# timeout 10 seconds
#
curl --connect-timeout 10 -m 20 -s -w $ARGS $URI | jq

#####################################################################
/home/admin/bin>com-net-test 192.168.0.1
{
  "address": "192.168.0.1",
  "port": "8000",
  "time": {
    "namelookup": "0.000027",
    "connect": "0.000000",
    "total": "10.001700"
  }
}

construct timeout array

# total   > 10.00
# connect == 0.00
/home/admin/bin>cat $SOURCE_JSON | jq '.data' | jq '.[] | select((.time.total | tonumber > 10.0) and (.time.connect | tonumber == 0))' | jq -s > $TMPJSON

calculate json size

/home/admin/bin>JSON_LENGTH=`cat $TMPJSON | jq '. | length' ` ; echo $JSON_LENGTH
2

make offline json

/home/admin/bin>TS=`date "+%Y-%m-%d %H:%M:%S"` ; echo $TS
2024-08-22 22:38:57
/home/admin/bin>(echo '{"name":"offline testing","size":'$JSON_LENGTH',"data":' && ( cat $TMPJSON ) && echo ',"dateInput":"'$TS'"}') | jq
{
  "name": "offline net testing",
  "size": 2,
  "data": [
    {
      "address": "192.168.0.1",
      "port": "8000",
      "time": {
        "namelookup": "0.000021",
        "connect": "0.000000",
        "total": "10.001630"
      }
    },
    {
      "address": "192.168.0.11",
      "port": "8000",
      "time": {
        "namelookup": "0.000023",
        "connect": "0.000000",
        "total": "10.001588"
      }
    }
  ],
  "dateInput": "2024-08-22 22:38:57"
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值