4.5获取有会话的终端名称和终端IP
写这个脚本的需求是:客户那边主要使用虚拟机,每次登录在后台有相应的日志,那么客户可以定期从虚拟平台获取前一天登录的终端名称、终端IP,再和我们平台前一天有会话的终端名称、终端IP做对比,找到有登录但没有会话的终端,方便运维人员快速有效的找到录屏异常的终端
#!/bin/bash
ESip=”96.0.72.177″
date=”2022-6-20″
######################获取有会话的agentname##################################
rm -f /tmp/agentname.txt
curl -XPOST -H “Content-type:application/json” $ESip:9200/metadata-$date/session/_search -d ‘
{
“size”:0,
“aggs”:{
“agentname”:{
“terms”:{
“field”:”agentname.keyword”,
“size”:”2000″
}}}}’ >>/tmp/test.txt
sed -i “s/key/key\n/g” /tmp/test.txt
cat /tmp/test.txt |awk -F \” ‘{print $3}’ >>/tmp/agentname.txt
sed -i ‘1d’ /tmp/agentname.txt
sed -i ‘/^$/d’ /tmp/agentname.txt
rm -f /tmp/test.txt
######################获取有会话的agentip##################################
rm -f /tmp/agentip.txt
curl -XPOST -H “Content-type:application/json” $ESip:9200/metadata-$date/session/_search -d ‘
{
“size”:0,
“aggs”:{
“agentip”:{
“terms”:{
“field”:”agentip.keyword”,
“size”:”2000″
}}}}’ >>/tmp/test.txt
sed -i “s/key/key\n/g” /tmp/test.txt
cat /tmp/test.txt |awk -F \” ‘{print $3}’ >>/tmp/agentip.txt
sed -i ‘1d’ /tmp/agentip.txt
sed -i ‘/^$/d’ /tmp/agentip.txt
rm -f /tmp/test.txt