webpackJsonp([23],{ /***/ "9iEY": /***/ (function(module, exports) { // removed by extract-text-webpack-plugin /***/ }), /***/ "bxb8": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); // EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/typeof.js var helpers_typeof = __webpack_require__("pFYg"); var typeof_default = /*#__PURE__*/__webpack_require__.n(helpers_typeof); // EXTERNAL MODULE: ./node_modules/echarts/map/js/world.js var world = __webpack_require__("9OQl"); var world_default = /*#__PURE__*/__webpack_require__.n(world); // EXTERNAL MODULE: ./src/components/Title.vue + 2 modules var Title = __webpack_require__("/+Ed"); // EXTERNAL MODULE: ./src/components/Pagination.vue + 2 modules var Pagination = __webpack_require__("cMGX"); // EXTERNAL MODULE: ./src/common/meta.js var meta = __webpack_require__("BoBM"); // EXTERNAL MODULE: ./src/common/util.js var util = __webpack_require__("s0MJ"); // EXTERNAL MODULE: ./node_modules/vuex/dist/vuex.esm.js var vuex_esm = __webpack_require__("NYxO"); // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/pages/count/FullLog.vue // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /* harmony default export */ var FullLog = ({ components: { Title: Title["a" /* default */], Pagination: Pagination["a" /* default */] }, data: function data() { return { /*topTitle:this.$store.state.roleAction.topTitle, province:this.$store.state.roleAction.province, selectAllDomain: this.$store.state.roleAction.selectAllDomain,*/ moduleTitle: '统计', pageTitle: '全量日志', total: 0, pageSize: 10, currentPage: 1, tableData: [], pkgName: '', areaList: [], areaInfo: [], options: [], domainId: [], attackHostIP: '', qgCode: this.$store.state.qgCode, allDomainCode: 'all', allAttackTypes: [{ name: 'web攻击防护', label: 1 }, { name: 'CC攻击防护', label: 2 }, { name: '数据风控', label: 5 }, { name: '精准访问控制', label: 3 }], attackType: [], protectedType: { _0: '未发现攻击', _1: '触发Web应用攻击防护规则', _2: '触发CC安全防护规则', _3: '触发精准访问控制规则', _4: '触发地区封禁防护策略', _5: '触发数据风控防护策略' }, pickerOptions2: { disabledDate: function disabledDate(time) { return time.getTime() > Date.now(); }, shortcuts: [{ text: '1小时', onClick: function onClick(picker) { var end = new Date(); var start = new Date(); start.setTime(start.getTime() - 3600 * 1000); picker.$emit('pick', [start, end]); } }, { text: '6小时', onClick: function onClick(picker) { var end = new Date(); var start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 6); picker.$emit('pick', [start, end]); } }, { text: '1天', onClick: function onClick(picker) { var end = new Date(); var start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 1); picker.$emit('pick', [start, end]); } }, { text: '7天', onClick: function onClick(picker) { var end = new Date(); var start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); picker.$emit('pick', [start, end]); } }] }, searchTimes: '', showDetailSearch: false, visitChart: null, URL: { getDomainList: '/rest/secReport/getDomainList', getVisitData: '/rest/website/fullLog/showVisits', getLogData: '/rest/website/fullLog/showLog', getAreaList: '/website/rest/queryArea' } }; }, mounted: function mounted() { var that = this; if (that.roleAction.province) { //加载省份列表 that.getProvinces(); } else { that.getDomainList(); } window.addEventListener('resize', function () { that.visitChart && that.visitChart.resize(); }, false); }, computed: { contextPath: function contextPath() { return this.$store.state.urlHost; }, logTHeight: function logTHeight() { return this.$store.state.logTHeight; }, startTime: function startTime() { var that = this; return that.searchTimes ? util["a" /* default */].timestampToTime(that.searchTimes[0], 'YYYY-MM-DD HH:MM') : util["a" /* default */].timestampToTime(new Date(), 'YYYY-MM-DD') + ' 00:00'; }, endTime: function endTime() { var that = this; return that.searchTimes ? util["a" /* default */].timestampToTime(that.searchTimes[1], 'YYYY-MM-DD HH:MM') : util["a" /* default */].timestampToTime(new Date(), 'YYYY-MM-DD') + ' 23:59'; }, errorIP: function errorIP() { var val = this.attackHostIP; return val && !meta["a" /* default */].Regex.ip.test(val); }, roleAction: function roleAction() { return this.$store.state.roleAction; }, myHeight: function myHeight() { return this.$store.state.cdnConHeight; } }, watch: { areaInfo: function areaInfo(val) { var that = this; that.proChange(val); that.getDomainList(); }, domainId: function domainId(val) { this.roleAction.selectAllDomain && this.selDomainChange(val); } }, methods: { //省份下拉框选择全国则其他节点不可选,选择其他节点全国节点不可选 proChange: function proChange(val) { if (val.length == 0) { for (var i = 0; i < this.areaList.length; i++) { if (this.areaList[i].disabled == true || this.areaList[i].disabled == undefined) { this.areaList[i].disabled = false; } } } else { if (val.indexOf(this.qgCode) != -1) { for (var i = 1; i < this.areaList.length; i++) { this.areaList[i].disabled = true; } } else { this.areaList[0].disabled = true; for (var i = 1; i < this.areaList.length; i++) { this.areaList[i].disabled = false; } } } }, //域名下拉框选择全部则其他节点不可选,选择其他节点则全部节点不可选 selDomainChange: function selDomainChange(val) { if (val.length == 0) { for (var i = 0; i < this.options.length; i++) { if (this.options[i].disabled == true || this.options[i].disabled == undefined) { this.options[i].disabled = false; } } } else { if (val.indexOf(this.allDomainCode) != -1) { for (var i = 1; i < this.options.length; i++) { this.options[i].disabled = true; } } else { this.options[0].disabled = true; for (var i = 1; i < this.options.length; i++) { this.options[i].disabled = false; } } } }, //点击展开高级搜索 openHideArea: function openHideArea() { this.showDetailSearch = !this.showDetailSearch; }, getProvinces: function getProvinces() { var that = this; this.$axios({ method: 'get', url: that.contextPath + that.URL.getAreaList + '?type=QUERY', needInterceptors: true, showError: true, loader: true }).then(function (res) { that.areaList = res || []; if (that.areaList.length > 0) { that.areaInfo.push(res[0].value); //默认选择全国 for (var i = 1; i < that.areaList.length; i++) { that.areaList[i].disabled = true; } } }); }, getDomainList: function getDomainList() { var that = this; var formData = this.$qs.stringify({ areaCode: that.areaInfo.join(','), name: '' }); this.$axios({ method: 'post', url: that.contextPath + that.URL.getDomainList, data: formData, needInterceptors: true, showError: true, loader: true }).then(function (res) { that.options = res || []; that.domainId = []; if (that.options.length > 0) { if (that.roleAction.selectAllDomain) { that.options.splice(0, 0, { hostname: '全部', domainId: 'all' }); that.domainId.push('all'); for (var i = 1; i < that.options.length; i++) { that.options[i].disabled = true; } } else { that.domainId.push(that.options[0].domainId); } that.attackHostIP = ''; that.attackType = []; that.search(); } }); }, getDomains: function getDomains(domain) { if ((typeof domain === 'undefined' ? 'undefined' : typeof_default()(domain)) == 'object') { domain = ''; } var that = this; var formData = this.$qs.stringify({ areaCode: that.areaInfo.join(','), name: domain }); this.$axios({ method: 'post', url: that.contextPath + that.URL.getDomainList, data: formData, needInterceptors: true, showError: true, loader: true }).then(function (res) { that.options = res || []; if (that.roleAction.selectAllDomain) { if (!domain && that.options.length > 0) { that.options.splice(0, 0, { hostname: '全部', domainId: 'all' }); that.selDomainChange(that.domainId); } else if (that.options.length > 0 && that.domainId.indexOf(that.allDomainCode) != -1) { for (var i = 0; i < that.options.length; i++) { that.options[i].disabled = true; } } } }); }, initLine: function initLine() { var that = this; that.visitChart = this.$echarts.init(document.getElementById('visitData')); that.visitChart.setOption(meta["a" /* default */].commonChartOption); that.visitChart.setOption({ legend: { data: ['总访问量', '攻击访问量'], itemGap: 32, top: 0, right: 32, itemWidth: 14, itemHeight: 4, icon: 'rect' }, grid: { top: 42, left: 40, right: 52, bottom: 5 }, xAxis: { axisLabel: { interval: 'auto' } }, series: [{ name: '总访问量', type: 'line', smooth: true, areaStyle: {}, itemStyle: { normal: { color: "#31DBC8", lineStyle: { color: "#31DBC8" } } }, data: [] }, { name: '攻击访问量', type: 'line', smooth: true, areaStyle: {}, itemStyle: { normal: { color: "#F65C93", lineStyle: { color: "#F65C93" } } }, data: [] }] }); }, protectedAttack: function protectedAttack(val) { return [1, 2, 3, 4, 5].filter(function (item) { return item == val; }).length > 0; }, getChartData: function getChartData() { var that = this; that.$axios({ method: 'post', url: that.contextPath + that.URL.getVisitData, needInterceptors: true, showError: true, loader: true, data: { orgCodes: this.areaInfo.join(','), domainIdSet: that.domainId.join(','), startTime: that.startTime, endTime: that.endTime, hostIP: that.attackHostIP, attackType: that.attackType.join(',') } }).then(function (data) { var xAxisData = []; var yAxisData = []; if (data != null) { xAxisData = data.xAxis, yAxisData = data.yAxis; } that.initLine(); that.visitChart.setOption({ xAxis: { data: xAxisData }, series: yAxisData }); }); }, getLogData: function getLogData() { var that = this; that.$axios({ method: 'post', url: that.contextPath + that.URL.getLogData, needInterceptors: true, showError: true, loader: true, data: that.$qs.stringify({ orgCodes: this.areaInfo.join(','), domainIdSet: that.domainId.join(','), startTime: that.startTime, endTime: that.endTime, hostIP: that.attackHostIP, attackType: that.attackType.join(','), topage: (that.currentPage || 1) - 1, pagesize: that.pageSize || 10 }) }).then(function (result) { if (result != null) { that.tableData = result.data || []; that.total = result.totalItems; } else { that.tableData = []; that.total = 0; } }).catch(function (e) {}); }, alertErrorSearParam: function alertErrorSearParam() { var that = this; var message = ''; var result = false; /*if(that.domainId.length == 0){ message = '请选择域名'; result = true; }else */ if (that.startTime == that.endTime) { message = '结束时间必须大于开始时间'; result = true; } else if (that.errorIP) { message = '攻击源IP输入有误'; result = true; } result && that.$alert(message, '提示', { customClass: 'wafConfirm', confirmButtonText: '我知道了', type: 'warning' }); return result; }, sizeChange: function sizeChange(val) { var that = this; if (that.alertErrorSearParam()) { return; } that.currentPage = 1; that.pageSize = val; this.getLogData(); document.getElementsByClassName('el-table__body-wrapper is-scrolling-none')[0].scrollTop = 0; }, currentChange: function currentChange(val) { var that = this; if (that.alertErrorSearParam()) { return; } that.currentPage = val; this.getLogData(); document.getElementsByClassName('el-table__body-wrapper is-scrolling-none')[0].scrollTop = 0; }, search: function search() { var that = this; if (that.alertErrorSearParam()) { return; } that.currentPage = 1; that.getChartData(); that.getLogData(); } } }); // CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-44e54a0d","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/pages/count/FullLog.vue var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('el-breadcrumb',{attrs:{"separator-class":"el-icon-arrow-right"}},[(_vm.roleAction.topTitle)?_c('el-breadcrumb-item',{staticClass:"con-ptitle",attrs:{"to":{ path: '/CDNindex' }}},[_vm._v("Web应用防火墙")]):_vm._e(),_vm._v(" "),(!_vm.roleAction.topTitle)?_c('el-breadcrumb-item',{staticClass:"con-ptitle"},[_vm._v("统计")]):_vm._e(),_vm._v(" "),_c('el-breadcrumb-item',[_vm._v("全量日志")])],1),_vm._v(" "),_c('div',{staticClass:"con-content",style:({height:_vm.myHeight})},[_c('div',{staticClass:"handle"},[(_vm.roleAction.province)?_c('span',{staticClass:"search-name"},[_vm._v("省份")]):_vm._e(),_vm._v(" "),(_vm.roleAction.province)?_c('el-select',{attrs:{"size":"small","multiple":"","collapse-tags":"","placeholder":"请选择省份"},model:{value:(_vm.areaInfo),callback:function ($$v) {_vm.areaInfo=$$v},expression:"areaInfo"}},_vm._l((_vm.areaList),function(item){return _c('el-option',{key:item.value,attrs:{"label":item.label,"disabled":item.disabled,"value":item.value}})}),1):_vm._e(),_vm._v(" "),_c('span',{staticClass:"search-name left-space"},[_vm._v("选择域名")]),_vm._v(" "),_c('el-select',{staticClass:"custom-multi-select",attrs:{"multiple":"","multiple-limit":35,"collapse-tags":"","filterable":"","remote":"","remote-method":_vm.getDomains,"placeholder":"请输入网站域名","size":"small","popper-class":"defaultSelect"},on:{"focus":_vm.getDomains},model:{value:(_vm.domainId),callback:function ($$v) {_vm.domainId=$$v},expression:"domainId"}},_vm._l((_vm.options),function(item){return _c('el-option',{key:item.domainId,attrs:{"disabled":item.disabled,"label":item.hostname,"value":item.domainId}})}),1),_vm._v(" "),_c('span',{staticClass:"search-name left-space"},[_vm._v("查询时间")]),_vm._v(" "),_c('el-date-picker',{staticStyle:{"width":"350px"},attrs:{"type":"datetimerange","picker-options":_vm.pickerOptions2,"format":"yyyy-MM-dd HH:mm","range-separator":"~","start-placeholder":"请选择开始日期","end-placeholder":"结束日期","align":"left","size":"small"},model:{value:(_vm.searchTimes),callback:function ($$v) {_vm.searchTimes=$$v},expression:"searchTimes"}}),_vm._v(" "),_c('el-button',{attrs:{"type":"primary","size":"small"},on:{"click":_vm.search}},[_vm._v("搜索")]),_vm._v(" "),_c('div',{staticClass:"hSearch",on:{"click":_vm.openHideArea}},[_vm._v("高级搜索\n "),_c('i',{class:{'el-icon-arrow-down': !_vm.showDetailSearch, 'el-icon-arrow-up': _vm.showDetailSearch}})])],1),_vm._v(" "),(_vm.showDetailSearch)?_c('div',{staticClass:"search-hideArea"},[_c('div',{staticClass:"g-ip-wrapper"},[_c('span',{staticClass:"search-name"},[_vm._v("攻击源IP")]),_vm._v(" "),_c('el-input',{staticClass:"search-text-btn",attrs:{"placeholder":"请输入攻击源IP","size":"small"},model:{value:(_vm.attackHostIP),callback:function ($$v) {_vm.attackHostIP=$$v},expression:"attackHostIP"}})],1),_vm._v(" "),_c('div',{staticStyle:{"margin-top":"15px"}},[_c('span',{staticClass:"search-name"},[_vm._v("攻击类型")]),_vm._v(" "),_c('el-checkbox-group',{staticClass:"g-checkbox-group",model:{value:(_vm.attackType),callback:function ($$v) {_vm.attackType=$$v},expression:"attackType"}},_vm._l((_vm.allAttackTypes),function(item){return _c('el-checkbox',{key:item.label,attrs:{"label":item.label}},[_vm._v(_vm._s(item.name))])}),1)],1)]):_vm._e(),_vm._v(" "),_vm._m(0),_vm._v(" "),_c('div',{staticClass:"table-area"},[_vm._m(1),_vm._v(" "),_c('el-table',{ref:"multipleTable",staticClass:"contable",staticStyle:{"width":"100%","minHeight":"500px"},attrs:{"border":"","height":_vm.logTHeight,"data":_vm.tableData,"tooltip-effect":"dark"}},[_c('el-table-column',{attrs:{"prop":"timestamp","label":"访问时间","min-width":"140"}}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"hostIP","label":"来源IP","min-width":"120"}}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"hostName","label":"访问域名"},scopedSlots:_vm._u([{key:"default",fn:function(scope){return [_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.hostName}},[_vm._v("\n "+_vm._s(scope.row.hostName)+"\n ")])]}}])}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"reqContent","label":"请求内容"},scopedSlots:_vm._u([{key:"default",fn:function(scope){return [_c('div',[_vm._v(_vm._s(scope.row.httpMethod))]),_vm._v(" "),_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.requestUri}},[_vm._v(_vm._s(scope.row.requestUri))])]}}])}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"reqHeader","label":"请求主要头部字段","min-width":"250"},scopedSlots:_vm._u([{key:"default",fn:function(scope){return [_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.cookie}},[_c('span',{staticStyle:{"color":"#FD9A46"}},[_vm._v(_vm._s('Cookie:'))]),_vm._v(" "+_vm._s(scope.row.cookie))]),_vm._v(" "),_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.referer}},[_c('span',{staticStyle:{"color":"#FD9A46"}},[_vm._v(_vm._s('Referer:'))]),_vm._v(" "+_vm._s(scope.row.referer))]),_vm._v(" "),_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.userAgent}},[_c('span',{staticStyle:{"color":"#FD9A46"}},[_vm._v(_vm._s('User-Agent:'))]),_vm._v(" "+_vm._s(scope.row.userAgent))]),_vm._v(" "),_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.xForwardedFor}},[_c('span',{staticStyle:{"color":"#FD9A46"}},[_vm._v(_vm._s('X-Forwarded-For:'))]),_vm._v(" "+_vm._s(scope.row.xForwardedFor))]),_vm._v(" "),_c('div',{staticClass:"rowBreak",attrs:{"title":scope.row.argsPost}},[_c('span',{staticStyle:{"color":"#FD9A46"}},[_vm._v(_vm._s('Args-Post:'))]),_vm._v(" "+_vm._s(scope.row.argsPost))])]}}])}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"protectedType","label":"防护状态"},scopedSlots:_vm._u([{key:"default",fn:function(scope){return [(_vm.protectedAttack(scope.row.attackType))?_c('div',{staticClass:"g-protected-icon-wrapper"},[(scope.row.status == '405')?_c('div',[_c('i',{staticClass:"el-icon-remove-outline"})]):_c('div',{staticClass:"triangle-up"}),_vm._v("\n "+_vm._s(_vm.protectedType['_'+ scope.row.attackType])+"\n ")]):_c('div',[_c('span',[_vm._v("-")])])]}}])}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"status","label":"返回码","min-width":"60"}})],1)],1),_vm._v(" "),_c('Pagination',{attrs:{"total":_vm.total,"pageSize":_vm.pageSize,"currentPage":_vm.currentPage},on:{"sizeChange":_vm.sizeChange,"currentChange":_vm.currentChange}})],1)],1)} var staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:"con_label"},[_c('div',{staticClass:"frontTag"}),_vm._v("业务访问量")]),_vm._v(" "),_c('div',{staticClass:"con-horizontal-pic",attrs:{"id":"visitData"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"con_label"},[_c('div',{staticClass:"frontTag"}),_vm._v("访问日志(数据具有一定的延迟性,延迟时间一般<=15分钟)")])}] var esExports = { render: render, staticRenderFns: staticRenderFns } /* harmony default export */ var count_FullLog = (esExports); // CONCATENATED MODULE: ./src/pages/count/FullLog.vue function injectStyle (ssrContext) { __webpack_require__("9iEY") } var normalizeComponent = __webpack_require__("VU/8") /* script */ /* template */ /* template functional */ var __vue_template_functional__ = false /* styles */ var __vue_styles__ = injectStyle /* scopeId */ var __vue_scopeId__ = "data-v-44e54a0d" /* moduleIdentifier (server only) */ var __vue_module_identifier__ = null var Component = normalizeComponent( FullLog, count_FullLog, __vue_template_functional__, __vue_styles__, __vue_scopeId__, __vue_module_identifier__ ) /* harmony default export */ var pages_count_FullLog = __webpack_exports__["default"] = (Component.exports); /***/ }) });