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

206 lines
20 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

*** 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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable security_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable security_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable security_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable security_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable security_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable security_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable proxy_event_hits_log
${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
... 参数starttime(必传,开始时间紧)
... timeGranularity(必传,时间粒度 )
... limit(必传,限制条数)
... endtime(必传,结束时间)
... logType(必填,日志类型。)
[Arguments] ${starttime} ${endtime} ${timeGranularity} ${limit}
${logType} Set Variable proxy_event_hits_log
${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}