*** 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}