#!/bin/sh
set +x

G_MML_FILE_PATH="/opt/huawei/snas/script/inspect_mml"
source $G_MML_FILE_PATH/CheckItems
source $G_MML_FILE_PATH/CommonFunc.sh
CurInspectNum="253"
CurInspectFun="$(GetInspectType $CurInspectNum)"
RESULTFILE="/tmp/tmpResult${CurInspectFun}"
LOG_FILE="/var/log/inspect.log"
isPass=0
>${RESULTFILE}

LOG_FILE="/var/log/inspect.log"


function LOG
{
    echo [`date`][$$][${CurInspectFun}]$@ >> $LOG_FILE
}

LOCAL_BACK_IP=`GetLocalIp`

if [ -z "${LOCAL_BACK_IP}" ]; then
    isPass=1
    echo "[ERR]INFO:Can't get backend IP." >>${RESULTFILE}
    echo "${CurInspectFun}_Pass $isPass" >>${RESULTFILE}
    LOG "[$LINENO]ERR: CheckLogPrintLvl Local_BACK_IP is empty, abort!"
    exit 1
fi

flag=0
flagport=""
ports=(988 4016 4004 4100 4104 4108 4020 4048 4040 4088 4092 4060 4064 4900 4608)
for port in ${ports[*]}
do
    #检查端口是否被监听
    netstat -ntl | grep ":$port" >/dev/null 2>&1
    if [ $? -ne 0 ];then
        LOG "[$LINENO]this port is not monitoring"
        continue
    fi
    ${G_MML_FILE_PATH}/ShowInspectMml $LOCAL_BACK_IP $port "log show lvl" |grep "[A-Z]\+:[^4]" >/dev/null 2>&1
    if [ $? -eq 0 ];then
        flag=1
        if [ "$flagport" == "" ];then
            flagport="$port"
        else
            flagport="$flagport,$port"
        fi
    fi
done
LOG "[$LINENO]flag=$flag, flagport=$flagport"

if [ $flag -eq 0 ];then
    echo "INFO: Log print level is WARN" >>${RESULTFILE}
else
    isPass=1
    echo "[ERR]INFO: Log print level is not WARN(port:$flagport)" >>${RESULTFILE}
fi

echo "${CurInspectFun}_Pass $isPass" >>${RESULTFILE}