首页 > 编程语言 >python 删除es指定字段数据

python 删除es指定字段数据

时间:2023-10-12 19:13:40浏览次数:33  
标签:log 删除 python ip should rfile 2023 query es

需求: 删除es 中指定IP 相关的数据 (remoteAddr: ip)

  • 日志格式
fields.product:wantwords_zxxxx_feature @timestamp:Oct 12, 2023 @ 18:56:39.000 date_timeLocal:12/Oct/2023:18:56:39 +0800 ecs.version:1.12.0 host.name:WebServer-ZJK-1 httpReferer:https:/xxx/ httpUserAgent:Mozilla/5.0 (Linux; Android 13; V2254A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/87.0.4280.141 Mobile Safari/537.36 VivoBrowser/16.7.0.3 log.file.path:/home/xxx/xxx/API_Zh_Feature/log/access.log log.offset:12,487,899 long_bodyBytesSent:105764 long_status:200 pid:(空) remoteAddr:106.61.79.15 remoteUser:- requestType:GET requestUrl:/?q=%E7%AA%81%E7%84%B6%E6%9D%A5%E4%BA%86%E5%85%B4%E8%87%B4&m=ZhZh&f=1 URIPROTO:HTTP/1.0 _id:7nKII4sBeg9bmJ3ODLAA _index:prod-nginx-000007 _score: - _type:_doc
  • ip
[root@dev-test test]# cat blcokip.txt 
101.206.129.1
101.206.171.7
  • 脚本
import requests
with open('blcokip.txt', 'r') as rfile:
    rfile_old = rfile.readlines()
    for i in rfile_old:
        ip=i.replace('\n','')
        data = {
            "query": {
                "bool": {
                    "must": [],
                    "filter": [
                        {
                            "bool": {
                                "should": [
                                    {
                                        "query_string": {
                                            "fields": [
                                                "fields.product"
                                            ],
                                            "query": "wantwords_*"
                                        }
                                    }
                                ],
                                "minimum_should_match": 1
                            }
                        },
                        {
                            "range": {
                                "@timestamp": {
                                    "format": "strict_date_optional_time",
                                    "gte": "2023-07-13T16:00:00.000Z",
                                    "lte": "2023-10-12T07:16:26.155Z"
                                }
                            }
                        },
                        {
                            "match_phrase": {
                                "remoteAddr.keyword": ip
                            }
                        }
                    ],
                    "should": [],
                    "must_not": []
                }
            }
        }
        url = 'http://10.0.1.11:9200/prod-nginx*/_delete_by_query'
        response = requests.post(url,
                                 json=data,
                                 headers={
                                     'Content-Type': 'application/json'
                                 })

        if response.status_code == 200:
            print(response.json())
        else:
            pass


标签:log,删除,python,ip,should,rfile,2023,query,es
From: https://www.cnblogs.com/lixinliang/p/17760320.html

相关文章

  • 免费使用Salesforce Data Cloud!详细操作步骤来啦
    DataCloud是Salesforce向市场推出的增长最快的产品,这对Salesforce来说是一个重要竞争优势。近期,Salesforce宣布客户可以免费使用DataCloud。这就是所谓的零美元SKU,换句话说,这是一条不会产生任何成本的Salesforce产品线。启用DataCloudStep1:签署订单合同单击齿轮图标时,可......
  • typescript: Observer Pattern
     /***ObserverPattern观察者是一种行为设计模式,允许一个对象将其状态的改变通知其他对象*file:Observerts.ts*TheSubjectinterfacedeclaresasetofmethodsformanagingsubscribers.*/interfaceGeovinSubject{//Attachanobservertothesub......
  • 博学谷学习记录 自我总结 用心分享 | OpenResty中间件
    1.什么是OpenRestyOpenResty是一个基于Nginx与Lua的高性能Web平台,其内部集成了大量精良的Lua库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态Web应用、Web服务和动态网关。OpenResty通过汇聚各种设计精良的Nginx模块,从而将Nginx有效地......
  • Cython加密python代码防止反编译
    本方法适用于Linux环境下:1.安装库Cythonpip3installCython==3.0.0a10 2.编写待加密文件:hello.pyimportrandomdefac():i=random.randint(0,5)ifi>2:print('success')else:print('failure') 3.编写加密脚本import......
  • ​左手 Serverless,右手 AI,7 年躬身的古籍修复之路
    作者:宋杰“AI可以把我们思维体系当中,过度专业化、过度细分的这些所谓的知识都替代掉,让我们集中精力去体验自己的生命。我挺幸运的,代码能够有AI辅助,也能够有Serverless解决我的运营成本问题。Serverless它是一个GameChanger,就是彻底改变云计算模式的创新。”我叫宋杰,是......
  • DDD(Domain-Driven Design,领域驱动设计)
    一、什么是DDDDDD指通过统一语言、业务抽象、领域划分和领域建模等一些列手段来控制软件复杂度的方法论,主要是用来指导如何解耦业务系统,划分业务模块,定义业务领域模型及其交互。 二、领域驱动开发过程不再以数据模型为起点,而是以领域模型为出发点,领域模型对应业务......
  • ORA-02303: 无法使用类型或表的相关性来删除或取代一个类型
    在日常开发中,我们会创建Type和对应的TAB供其他数据库对象使用,如果对象引用了该Type,则对其修改(CREATEORREPLACETYPE)时会出现如下错误,ORA-02303:无法使用类型或表的相关性来删除或取代一个类型。举例:SQL>CREATEORREPLACETYPEtyp_payment_order_resultASOBJECT2(......
  • CAD为什么按Delete键不能直接删除线条?
    最近有小伙伴遇到这样的情况,使用“Delete键”发现无法直接删除CAD中的线条,每次都会弹出如下窗口:是否要启用PICKFIRST?,不知道如何解决;这是CAD设置问题:设置先命令后选择还是先选择后命令在CAD中的操作结果是不一样的,需要重新设置为「先选择后命令」,即先选择对象再执行命令;  ......
  • simulink中调用python脚本
      command='test.py&';%后轴&:等待调用结束(command='test.py';%无后轴&:立即执行下一句[status,cmdout]=system(command,'-echo');    参考:详解MATLAB的函数system()和shell转义字符“感叹号”,并利用它们实现在MATLAB中运行(调用)外部exe程序_matlabsy......
  • python 链表
    fromtypingimportOptionalclassListNode:def__init__(self,val=0,next=None):self.val=valself.next=nextclassSolution:defpartition(self,head:Optional[ListNode],x:int)->Optional[ListNode]:lessListPre......