AWS-WAF-Log S3存放,通过Athena查看
1.创建好waf-cdn 并且设置好规则和log存储方式为s3

2. Amazon Athena 服务 使用 (注意s3桶位置相同得区域)
https://docs.aws.amazon.com/zh_cn/athena/latest/ug/waf-logs.html#waf-example-count-matched-ip-addresses
官方文档参考,建一个分区查询表
不能直接使用 因为是cdn 资源需要修改相关字段
CREATE EXTERNAL TABLE `waf_logs`(`timestamp` bigint,`formatversion` int,`webaclid` string,`terminatingruleid` string,`terminatingruletype` string,`action` string,`terminatingrulematchdetails` array <struct <conditiontype: string,sensitivitylevel: string,location: string,matcheddata: array < string >>>,`httpsourcename` string,`httpsourceid` string,`rulegrouplist` array <struct <rulegroupid: string,terminatingrule: struct <ruleid: string,action: string,rulematchdetails: array <struct <conditiontype: string,sensitivitylevel: string,location: string,matcheddata: array < string >>>>,nonterminatingmatchingrules: array <struct <ruleid: string,action: string,overriddenaction: string,rulematchdetails: array <struct <conditiontype: string,sensitivitylevel: string,location: string,matcheddata: array < string >>>,challengeresponse: struct <responsecode: string,solvetimestamp: string>,captcharesponse: struct <responsecode: string,solvetimestamp: string>>>,excludedrules: string>>,
`ratebasedrulelist` array <struct <ratebasedruleid: string,limitkey: string,maxrateallowed: int>>,`nonterminatingmatchingrules` array <struct <ruleid: string,action: string,rulematchdetails: array <struct <conditiontype: string,sensitivitylevel: string,location: string,matcheddata: array < string >>>,challengeresponse: struct <responsecode: string,solvetimestamp: string>,captcharesponse: struct <responsecode: string,solvetimestamp: string>>>,`requestheadersinserted` array <struct <name: string,value: string>>,`responsecodesent` string,`httprequest` struct <clientip: string,country: string,headers: array <struct <name: string,value: string>>,uri: string,args: string,httpversion: string,httpmethod: string,requestid: string>,`labels` array <struct <name: string>>,`captcharesponse` struct <responsecode: string,solvetimestamp: string,failureReason: string>,`challengeresponse` struct <responsecode: string,solvetimestamp: string,failureReason: string>,`ja3Fingerprint` string,`oversizefields` string,`requestbodysize` int,`requestbodysizeinspectedbywaf` int
)
PARTITIONED BY (
`region` string,
`date` string)
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION's3://<aws-waf-logs-xxx>/AWSLogs/<accountID>/WAFLogs/cloudfront/<waf-acl>'
TBLPROPERTIES('projection.enabled' = 'true','projection.region.type' = 'enum','projection.region.values' = 'cloudfront','projection.date.type' = 'date','projection.date.range' = '2024/07/08,NOW','projection.date.format' = 'yyyy/MM/dd','projection.date.interval' = '1','projection.date.interval.unit' = 'DAYS','storage.location.template' = 's3://<aws-waf-logs-xxx>/AWSLogs/<accountID>/WAFLogs/${region}/<waf-acl>/${date}/')
修改< >中的字符为自己的资源
测试查询
SELECT COUNT(httpRequest.country) as count, httpRequest.country
FROM waf_logs
WHERE terminatingruletype='RATE_BASED'
GROUP BY httpRequest.country
ORDER BY count
LIMIT 100;
SELECT COUNT(*) AS count,webaclid,action,httprequest.clientip,httprequest.uri
FROM waf_logs
WHERE terminatingruleid='<id>'
GROUP BY webaclid, action, httprequest.clientip, httprequest.uri
ORDER BY count DESC
LIMIT 100;
具体的sql 字段需要修改成自己的 可以先检索全表 查看字段 方便搜索

相关文章:
AWS-WAF-Log S3存放,通过Athena查看
1.创建好waf-cdn 并且设置好规则和log存储方式为s3 2. Amazon Athena 服务 使用 (注意s3桶位置相同得区域) https://docs.aws.amazon.com/zh_cn/athena/latest/ug/waf-logs.html#waf-example-count-matched-ip-addresses 官方文档参考,建一个分区查询表…...
无法解析主机:mirrorlist.centos.org Centos 7
从 2024 年 7 月 1 日起,在 CentOS 7 上,请切换到 Vault 存档存储库: vi /etc/yum.repos.d/CentOS-Base.repo 复制/粘贴以下内容并注意您的操作系统版本。如果需要,请更改。此配置中的版本为 7.9.2009: [base] name…...
自动驾驶论文总结
1.预测 1.1光栅化 代表性论文 Motion Prediction of Traffic Actors for Autonomous Driving using Deep Convolutional Networks (Uber)MultiPath (Waymo) 问题 渲染信息丢失感受野有限高计算复杂度 1.2图神经网络 1.2.1 图卷积 LaneGCN (uber 2020) 1.2.2 边卷积 V…...
【uniapp微信小程序】uniapp微信小程序——页面通信
uniapp微信小程序——页面通信 在开发微信小程序过程中,页面之间的通信是一个常见需求。在使用 uniapp 开发微信小程序时,我们可以采用多种方式实现页面之间的数据传递和状态共享。本文将详细介绍几种常见的实现方式,以供开发者参考。 1. 页…...
【笔记】从零开始做一个精灵龙女-画贴图阶段(上)
此文只是我的笔记,不包全看懂,有问题可评论 PS贴图加工 1.打开ps 拖入uv图,新建图层,设置背景色为灰色,改一下图层名字 2.按z缩小一下uv图层,拖入实体uv图片(目的是更好上色,比如…...
线性代数|机器学习-P22逐步最小化一个函数
文章目录 1. 概述2. 泰勒公式3. 雅可比矩阵4. 经典牛顿法4.1 经典牛顿法理论4.2 牛顿迭代法解求方程根4.3 牛顿迭代法解求方程根 Python 5. 梯度下降和经典牛顿法5.1 线搜索方法5.2 经典牛顿法 6. 凸优化问题6.1 约束问题6.1 凸集组合 Mit麻省理工教授视频如下:逐步…...
SpringCloudAlibaba Nacos配置中心与服务发现
目录 1.配置 1.1配置的特点 只读 伴随应用的整个生命周期 多种加载方式 配置需要治理 1.2配置中心 2.Nacos简介 2.1特性 服务发现与服务健康检查 动态配置管理 动态DNS服务 服务和元数据管理 3.服务发现 1.配置 应用程序在启动和运行的时候往往需要读取一些配置信…...
.NET 一款获取内网共享机器的工具
01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失…...
备考美国数学竞赛AMC8和AMC10:吃透1850道真题和知识点(持续)
距离接下来的AMC8、AMC10美国数学竞赛还有几个月的时间,实践证明,做真题,吃透真题和背后的知识点是备考AMC8、AMC10有效的方法之一。 通过做真题,可以帮助孩子找到真实竞赛的感觉,而且更加贴近比赛的内容,…...
旅游景区度假村展示型网站如何建设渠道品牌
景区、度假村、境外旅游几乎每天的人流量都非常高,还包括本地附近游等,对景区及度假村等固定高流量场所,品牌和客户赋能都是需要完善的,尤其是信息展示方面,旅游客户了解前往及查看信息等。 通过雨科平台建设景区度假…...
Python酷库之旅-第三方库Pandas(021)
目录 一、用法精讲 52、pandas.from_dummies函数 52-1、语法 52-2、参数 52-3、功能 52-4、返回值 52-5、说明 52-6、用法 52-6-1、数据准备 52-6-2、代码示例 52-6-3、结果输出 53、pandas.factorize函数 53-1、语法 53-2、参数 53-3、功能 53-4、返回值 53-…...
jvm 06 补充 OOM 和具体工具使用
1.OOM 是什么 OOM,全称“Out Of Memory”,翻译成中文就是“内存用完了”,来源于java.lang.OutOfMemoryError。看下关于的官方说明: Thrown when the Java Virtual Machine cannot allocate an object because it is out of memor…...
使用机器学习 最近邻算法(Nearest Neighbors)进行点云分析 (scikit-learn Open3D numpy)
使用 NearestNeighbors 进行点云分析 在数据分析和机器学习领域,最近邻算法(Nearest Neighbors)是一种常用的非参数方法。它广泛应用于分类、回归和聚类分析等任务。下面将介绍如何使用 scikit-learn 库中的 NearestNeighbors 类来进行点云数…...
安装jenkins最新版本初始化配置及使用JDK1.8构建项目详细讲解
导读 1.安装1.1.相关网址1.2.准备环境1.3.下载安装 2. 配置jenkins2.1.安装插件2.2.配置全局工具2.3.系统配置 3. 使用3.1.配置job3.2.构建 提示:如果只想看如何使用jdk1.8构建项目,直接看3.1即可。 1.安装 1.1.相关网址 Jenkins官网:https…...
微软子公司Xandr遭隐私诉讼,或面临巨额罚款
近日,欧洲隐私权倡导组织noyb对微软子公司Xandr提起了诉讼,指控其透明度不足,侵犯了欧盟公民的数据访问权。据指控,Xandr的行为涉嫌违反《通用数据保护条例》(GFPR),因其处理信息并创建用于微目…...
【VRP】基于常春藤算法IVY求解带时间窗的车辆路径问题TWVRP,最短距离附Matlab代码
% VRP - 基于IVY算法的TWVRP最短距离求解 % 数据准备 % 假设有一组客户点的坐标和对应的时间窗信息 % 假设数据已经存储在 coordinates、timeWindows 和 demands 变量中 % 参数设置 numCustomers size(coordinates, 1); % 客户点数量 vehicleCapacity 100; % 车辆容量 numV…...
常用软件的docker compose安装
简介 Docker Compose 是 Docker 的一个工具,用于定义和管理多容器 Docker 应用。通过使用一个单独的 YAML 文件,您可以定义应用所需的所有服务,然后使用一个简单的命令来启动和运行这些服务。Docker Compose 非常适合于微服务架构或任何需要…...
Excel第28享:如何新建一个Excel表格
一、背景需求 小姑电话说:要新建一个表格,并实现将几个单元格进行合并的需求。 二、解决方案 1、在电脑桌面上空白地方,点击鼠标右键,在下拉的功能框中选择“XLS工作表”或“XLSX工作表”都可以,如下图所示。 之后&…...
计算机网络知识汇总
OSI七层模型 七层模型一般指开放系统互连参考模型,开放系统互连参考模型 (Open System Interconnect 简称OSI),OSI参考模型是具有7个层次的框架,自底向上的7个层次分别是物理层、数据链路层、网络层、传输层、会话层、…...
数据结构——考研笔记(二)线性表的定义和线性表之顺序表
文章目录 二、线性表2.1 定义、基本操作2.1.1 知识总览2.1.2 线性表的定义2.1.3 线性表的基本操作2.1.4 知识回顾与重要考点 2.2 顺序表2.2.1 知识总览2.2.2 顺序表的定义2.2.3 顺序表的实现——静态分配2.2.4 顺序表的实现——动态分配2.2.5 知识回顾与重要考点2.2.6 顺序表的…...
用LBM格子玻尔兹曼方法在Matlab中模拟3D气泡上升多相流
lbm格子玻尔兹曼方法模拟3D气泡上升多相流 matlab在计算流体力学领域,模拟多相流现象一直是个热门且具有挑战性的话题。今天咱们就来唠唠用格子玻尔兹曼方法(Lattice Boltzmann Method, LBM)在Matlab里模拟3D气泡上升多相流。 LBM方法简介 格…...
Keepalived实战:用MySQL主从高可用方案解决你的数据库单点故障
Keepalived与MySQL主从架构:构建零宕机数据库高可用方案 当数据库成为业务系统的核心支柱时,单点故障可能意味着灾难性的业务中断。我曾亲历一次凌晨3点的数据库故障,整个电商平台瘫痪两小时,损失超过七位数。这次教训让我深刻认识…...
DeepSeek LintCode 3706 · 满足条件的数对的数量 public long countValidPairs(int[] nums1, int[] nums2, int dif
这个问题是 LintCode 3706 “满足条件的数对的数量”,要求统计满足 nums1[i] - nums1[j] < nums2[i] - nums2[j] diff(其中 i < j)的数对 (i, j) 的数量。 问题理解 给定两个数组 nums1 和 nums2,以及一个整数 diff&#…...
海南自由贸易港借助“.CN”域名塑造线上专属品牌形象
自海南自由贸易港全岛封关运作以来,市场主体加速集聚,数字化转型需求持续释放,“.CN”域名逐步融入自贸港园区与入驻企业的线上品牌构建场景,成为其彰显数字化身份的重要标识。作为政策落地与产业集聚的核心平台,海南自…...
避坑指南:从聚宽迁移到QMT必须知道的5个细节(含Redis连接异常处理)
从聚宽迁移到QMT的实战避坑指南:Redis连接与xtquant重连机制详解 当量化团队需要从聚宽平台迁移到QMT时,往往会遇到一系列技术细节上的挑战。本文将聚焦五个最容易被忽视但至关重要的技术环节,特别是Redis连接池管理和xtquant重连机制这两个直…...
MeterSphere接口测试实战:从单接口到自动化场景的完整构建
1. 初识MeterSphere:接口测试新手的第一个任务 刚接手接口测试任务时,我和大多数新人一样既兴奋又忐忑。记得第一次打开MeterSphere这个开源持续测试平台,满屏的专业术语让我有点发懵。但实际用下来发现,它的界面设计比Postman这类…...
Tauri Android 打包原理与实战指南
Tauri Android 打包原理与实战指南 基于 JoyaLand 项目的实际打包经验整理,记录原理、流程与踩坑解决方案。 一、Tauri Android 打包架构原理 1.1 整体架构 ┌─────────────────────────────────────────────┐ │ …...
干货 | SpringBoot 缓存实战:击穿、穿透、雪崩 通俗解决方案(附可落地代码)
一、前言做 Java 后端开发,只要用了 Redis 缓存,缓存击穿、缓存穿透、缓存雪崩这三个坑绕不开。面试必问、线上必踩。本文不讲晦涩底层源码,用大白话讲原理 SpringBoot 可直接复制的实战代码,新手能看懂,项目能直接上…...
Infineon BGT60TR13C毫米波雷达Arduino底层驱动详解
1. 项目概述Infineon XENSIV™ BGT60TR13C 是一款集成化60 GHz毫米波雷达传感器芯片,专为低功耗、高精度运动检测与距离测量应用而设计。该器件采用单片集成方案,将60 GHz VCO、发射/接收前端、三通道接收链路(含LNA、Mixer、IF VGAÿ…...
好写作AI“文献综述智囊团”:开启学术探索新航道
在学术研究的广袤天地中,文献综述宛如一座灯塔,为研究者照亮前行的道路,它不仅是对前人研究成果的全面梳理与总结,更是为后续研究搭建起坚实的理论基石。然而,撰写一份高质量的文献综述并非易事,海量文献的…...
