This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
dongxiaoyan-tsg-autotest/02-Keyword/tsg_bfapi/dashboard_data_compare/PolicyActionHitStatistics.robot

246 lines
25 KiB
Plaintext
Raw Normal View History

*** Settings ***
Library Collections
Library RequestsLibrary
Library String
Resource ../../../03-Variable/Bifangapivariable.txt
Resource ForTwoKeywords.robot
*** Keywords ***
SecurityEventActionHit-bytes
# dashboard界面 安全策略各动作命中计数 bytes bifang和bigData对比
[Documentation]
... 描述Security-Action-bytes
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable security_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionCountList} Set Variable ${bfResponse['data']['actionCount']}
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable select sum(default_in_bytes+default_out_bytes) as default_bytes, sum(allow_in_bytes+allow_out_bytes) as allow_bytes, sum(deny_in_bytes+deny_out_bytes) as deny_bytes, sum(monitor_in_bytes+monitor_out_bytes) as monitor_bytes, sum(intercept_in_bytes+intercept_out_bytes) as intercept_bytes from traffic_metrics_log where __time >= '${startTime}' and __time < '${endTime}'
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
Run Keyword If ${actionCountList}!=[] and ${list}!=[] ForToSecurityActionBytes ${actionCountList} ${list[0]}
SecurityEventActionHit-packets
# dashboard界面 安全策略各动作命中计数 packets bifang和bigData对比
[Documentation]
... 描述Security-Action-packets
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable security_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionCountList} Set Variable ${bfResponse['data']['actionCount']}
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable select \ sum(default_in_packets+default_out_packets) as default_packets, sum(allow_in_packets+allow_out_packets) as allow_packets, sum(deny_in_packets+deny_out_packets) as deny_packets, sum(monitor_in_packets+monitor_out_packets) as monitor_packets, sum(intercept_in_packets+intercept_out_packets) as intercept_packets from traffic_metrics_log \ where \ \ __time >= '${startTime}' and __time < '${endTime}' limit ${limit}
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
Run Keyword If ${actionCountList}!=[] and ${list}!=[] ForToSecurityActionPackets ${actionCountList} ${list[0]}
SecurityEventActionHit-sessions
# dashboard界面 安全策略各动作命中计数 sessions bifang和bigData对比
[Documentation]
... 描述Security-Action-sessions
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable security_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionCountList} Set Variable ${bfResponse['data']['actionCount']}
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable select sum(default_conn_num) as default_sessions, sum(allow_conn_num) as allow_sessions, sum(deny_conn_num) as deny_sessions, sum(monitor_conn_num) as monitor_sessions, sum(intercept_conn_num) as intercept_sessions from traffic_metrics_log \ where \ \ __time >= '${startTime}' and __time < '${endTime}'
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
Run Keyword If ${actionCountList}!=[] and ${list}!=[] ForToSecurityActionSessions ${actionCountList} ${list[0]}
SecurityEventActionHit-thrend-bytes
# dashboard界面 安全策略各动作命中计数趋势 bytes bifang和bigData对比
[Documentation]
... 描述Security-Action-thrend-bytes
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable security_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionTrendList} Set Variable ${bfResponse['data']['trendList']}
${type} Set Variable bytes
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'default_bytes' as type, \ sum(default_in_bytes+default_out_bytes) as bytes from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'allow_bytes' as type, \ sum(allow_in_bytes+allow_out_bytes) as bytes from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'deny_bytes' as type, \ sum(deny_in_bytes+deny_out_bytes) as bytes from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'monitor_bytes' as type, \ sum(monitor_in_bytes+monitor_out_bytes) as bytes from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'intercept_bytes' as type, \ sum(intercept_in_bytes+intercept_out_bytes) as bytes from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit})
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
#${types} Set Variable bytes
Run Keyword If ${actionTrendList}!=[] and ${list}!=[] ForToSecurityAtionTrendOne ${actionTrendList} ${type} @{list}
SecurityEventActionHit-thrend-packets
# dashboard界面 安全策略各动作命中计数趋势 packets bifang和bigData对比
[Documentation]
... 描述Security-Action-thrend-packets
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传时间粒度300s )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable security_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionTrendList} Set Variable ${bfResponse['data']['trendList']}
${type} Set Variable packets
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'default_packets' as type, \ sum(default_in_packets+default_out_packets) as packets from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'allow_packets' as type, sum(allow_in_packets+allow_out_packets) as packets from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'deny_packets' as type, sum(deny_in_packets+deny_out_packets) as packets from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'monitor_packets' as type, sum(monitor_in_packets+monitor_out_packets) as packets from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'intercept_packets' as type, sum(intercept_in_packets+intercept_out_packets) as packets from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit})
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
#${types} Set Variable packets
Run Keyword If ${actionTrendList}!=[] and ${list}!=[] ForToSecurityAtionTrendOne ${actionTrendList} ${type} @{list}
SecurityEventActionHit-thrend-sessions
# dashboard界面 安全策略各动作命中计数趋势 sessions bifang和bigData对比
[Documentation]
... 描述Security-Action-thrend-packets
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传时间粒度300s )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable security_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionTrendList} Set Variable ${bfResponse['data']['trendList']}
${type} Set Variable sessions
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'default_conn_num' as type, sum(default_conn_num) as sessions from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'allow_conn_num' as type, sum(allow_conn_num) as sessions from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'deny_conn_num' as type, sum(deny_conn_num) as sessions from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'monitor_conn_num' as type, sum(monitor_conn_num) as sessions from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit}) union all (select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, 'intercept_conn_num' as type, sum(intercept_conn_num) as sessions from traffic_metrics_log where \ __time >= '${startTime}' and __time < '${endTime}' group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') limit ${limit})
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
#${types} Set Variable sessions
Run Keyword If ${actionTrendList}!=[] and ${list}!=[] ForToSecurityAtionTrendOne ${actionTrendList} ${type} @{list}
ProxyEventActionHit-sessions
# dashboard界面 代理策略各动作命中计数 sessions bifang和bigData对比
[Documentation]
... 描述Proxy-Action-sessions
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传时间粒度300s )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable proxy_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{actionCountList} Set Variable ${bfResponse['data']['actionCount']}
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable select sub_action as action, sum(hits) as hits from proxy_event_hits_log where \ __time >= '${startTime}' and __time < '${endTime}' \ group by \ sub_action
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
@{list} Set Variable ${response['data']}
Run Keyword If ${actionCountList}!=[] and ${list}!=[] ForToProxyAtionSession ${actionCountList} ${list}
ProxyEventActionHit-trend-sessions
# dashboard界面 代理策略各动作命中计数趋势 sessions bifang和bigData对比
[Documentation]
... 描述Proxy-Action-trend-sessions
... 参数timeNum(必传,查询的时间范围类型 1 当前时间前一小时 2 当前时间前一天 3 当前时间前一周)
... timeGranularity(必传时间粒度300s )
... limit(必传,限制条数)
... param(非必传参数数量为2位依次顺序为'startTime'、'endTime'自定义时两个参数必须都有如果没有就使用timeNum查询)
[Arguments] ${timeNum} ${timeGranularity} ${limit} @{param}
${length} Run Keyword If ${param}!=[] Get Length ${param}
... ELSE Set Variable ${0}
${startTime} ${endTime} Run Keyword If ${length}==${0} GetFormateTime ${timeNum}
... ELSE IF ${length}>${0} Set Variable ${param[0]} ${param[1]}
${logType} Set Variable proxy_event_hits_log
#${timeGranularity} Set Variable 300
#${limit} Set Variable 5
${data} Set Variable startTime=${startTime}&endTime=${endTime}&logType=${logType}&timeGranularity=${timeGranularity}&limit=${limit}
${url1} Set Variable report/policyevent/hit/action
${bfResponse} trafficBFRequest ${url1} ${data}
@{trendList} Set Variable ${bfResponse['data']['trendList']}
Create Session bdapi http://${bigDataIP}:${bigDataPort}
${sql} Set Variable select DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s') as stat_time, sub_action \ as action, sum(hits) as hits from proxy_event_hits_log where \ __time >= '${startTime}' and __time < '${endTime}' \ group by DATE_FORMAT(FROM_UNIXTIME(FLOOR(UNIX_TIMESTAMP(__time)/${timeGranularity})*${timeGranularity}),'%Y-%m-%d %H:%i:%s'), sub_action \ limit ${limit}
${remoteResponse} Get Request bdapi ?query=${sql}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
Should Be Equal As Strings ${response['status']} 200
${list} Set Variable ${response['data']}
Run Keyword If ${trendList}!=[] and ${list}!=[] ForToProxyAtionTrendSession ${trendList} ${list}