python脚本:向kafka数据库中插入测试数据

news2025/1/15 15:49:42
# coding:utf-8
import datetime
import json
import random
import time

from kafka import KafkaProducer

'''
    生产者demo
    向branch-event主题中循环写入10条json数据
    注意事项:要写入json数据需加上value_serializer参数,如下代码
'''
producer = KafkaProducer(
	value_serializer=lambda v: json.dumps(v).encode('utf-8'),
	security_protocol='SASL_PLAINTEXT',
	sasl_mechanism='PLAIN',
	sasl_plain_username='kafkadmin',
	sasl_plain_password='xxxxxxxx',
	bootstrap_servers=['10.10.xx.xx:9092']  # 数据监测与分析-测试环境
	
	
)


def gen(i):
	""" 生成当前日期和时间戳 """
	# print(time.localtime(time.time()))
	time_stamp = str(round(time.time() * 1000) - 0)
	time_stamp_format = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]
	# time_stamp_format = "2023-09-12 10:00:06.361"
	# date = time.strftime('%Y.%m.%d', time.localtime(time.time()))
	current_date = datetime.datetime.now().strftime('%Y.%m.%d')

	dst_ip = str(random.randint(1, 254)) + '.' + \
	         str(random.randint(1, 254)) + '.' + \
	         str(random.randint(1, 254)) + '.' + \
	         str(random.randint(1, 254))

	src_ip = str(random.randint(1, 254)) + '.' + \
	         str(random.randint(1, 254)) + '.' + \
	         str(random.randint(1, 254)) + '.' + \
	         str(random.randint(1, 254))

	model_name = f"zhang-{current_date}.cc2{i}"

	""" 原始日志 """
	s = {
		#"create_time": time_stamp,

		# "dst_device_ip": "2101:db7:0:0:0:0:0:f",
		"dst_device_ip": "777.77.77.77",#201.20.180.188
		# "dst_device_ip": dst_ip,
		#"dst_device_ip": "172.16.22.22",

		# "src_device_ip": "8.44.8.44",
		"src_device_ip": "777.77.77.77",           # 名单10.10.10.10
		# "src_device_ip": "201.20.180.180",             # 内网IP
		# "src_device_ip": src_ip,             # 安全域IP
		"src_device_dept": " ",
		"eqpt_asset_type": "/IDS/Network/WAF",

		"app_protocol": f"abc{i}",
		"alarm_times": "9",

		"start_time": f"{time_stamp_format}",
		"src_account": model_name + "." + str(i),
		"answer_address": "光谷创新港",

		"alarm_direction": "xxgcn",
		"additional_name": "www.jw.com",
		"http_url_externalurl": f"http://www.{model_name}.com",
		"http_url_externalurl_domain": f"www.{model_name}.com",

		# 测试告警扩展字段
		"response_action": {"alertRestrainAccordingCols": "",
		                    "sinkCols": "group_array(src_device_ip) as src_ip,group_array(src_device_uuid) as src_device_uuid,group_array(dst_device_ip) as dst_ip,group_array(dst_device_uuid) as dst_device_uuid,group_array(src_device_ip_country) as src_country,group_array(src_device_ip_province) as src_province,group_array(src_device_ip_city) as src_city,group_array(src_port) as src_port,group_array(dst_device_ip_country) as dst_country,group_array(dst_device_ip_province) as dst_province,group_array(dst_device_ip_city) as dst_city,group_array(dst_port) as dst_port,group_array(http_url_externalurl_domain) as dst_domain,group_array(http_url_externalurl) as dst_url,group_array(protocol) as agreement,uuid as uuids,first(A.start_time) as strategy_alert_first_time,first(A.start_time) as strategy_alert_last_time",
		                    "sinkStaticInfo": "[{\"strategy_alert_name\":\"名单过滤-实时告警6.9\"},{\"strategy_att_ck\":\"侦察-搜集主机信息\"},{\"strategy_alert_desc\":\"\"},{\"strategy_risk_score\":5},{\"strategy_alert_category\":\"告警分类\"},{\"strategy_alert_summary\":\"\"}]",
		                    "sinkType": "each"},
		"response_code": "standby2-jwwwwwwwwwwwww",
		"response_data": f"TotoLink 多款路由器downloadFlilecgi命执行漏洞(CVE-2022-25075--CVE-2022-25083)_{i}",
		# "dst_app_url": "http://brandsnap.org/5d65105/1661e",
		"file_hash": "36426c221bfa23180805d78c8421b653",
		"branch_code": "xxgcn",
		"external_alarm_attack": "漏洞 恶意域名 XRed",
		"external_alarm_attack_type": "bbaccb",
		"attack_ip": "211.211.211.211",
		"log_type": "uum",
		"result_action": "用户静态密码错误",
		"eqpt_vendor": f"idss_{i}",
		"src_port": f"111{i}",
		"dst_port": f"53",
		# "src_network_domain": f"源IP网络域-test{i}",
		# "dst_network_domain": f"目的IP网络域-test{i}"
		"src_network_domain": None,
		"dst_network_domain": None,
		"object_type": "公共服务",
		"src_device_vendor": "联通",
		"dst_device_type": "服务器",
		"src_person": "zhangxingheng",
		"dst_person":"xuqq",
		"dst_person_name":"zhangxingheng",
		"dst_person_status":"在职",
		"dst_person_ctpositionname":"测试",
		"dst_person_types":"企业员工",
		"dst_person_org_name":"技术部",
		

	}




	# s = json.loads(s)
	print('打印插入数据:',s)

	# producer.send('ioc_topic', s)
	# producer.send('gsp-alarm', p)


	producer.send('zhang_orglog', s)#kafka数据库表名,没有自动创建
	# producer.send('argus_gsp', p)


if __name__ == '__main__':

	for i in range(2):
		gen(i)
		time.sleep(1)  # 等待1秒,防止时间戳相同

	producer.close()
	#print('代码全部运行完成')

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2258798.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

selenium自动爬虫工具

一、介绍selenium爬虫工具 selenium 是一个自动化测试工具,可以用来进行 web 自动化测试、爬虫 selenium 本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉等,来拿到网页渲染之后的结果,可支持…

【数据结构——栈与队列】环形队列的基本运算(头歌实践教学平台习题)【合集】

目录😋 任务描述 相关知识 测试说明 我的通关代码: 测试结果: 任务描述 本关任务:编写一个程序实现环形队列的基本运算。 相关知识 为了完成本关任务,你需要掌握: 初始化队列、销毁队列、判断队列是否为空、进队列…

笔记本电脑升级硬盘存储、Windows10系统安装及后续步骤(以联想ThinkPad X1 Carbon Gen10为例)

文章目录 1.前言2.材料准备3.Win10系统安装盘制作3.1 系统下载3.2 系统启动U盘刻录 4.拆机更换硬盘5.开机启动项修改6.系统安装(以Win10为例)7.系统安装后可能需要的步骤7.1 缺少WIFI等网络驱动7.2 系统激活7.3 办公软件安装 8.旧硬盘变废为宝参考文献 1…

关于idea-Java-servlet-Tomcat-Web开发中出现404NOT FOUND问题的解决

在做web项目时,第一次使用servlet开发链接前端和后端的操作,果不其然,遇到了诸多问题,而遇到最多的就是运行项目打开页面时出现404NOT FOUND的情况。因为这个问题我也是鼓捣了好久,上网查了许多资料才最终解决&#xf…

国产物联网平台(IotSharp+IoTGateway+Influxdb)快速上手

环境说明: Visual Studio 2022 CommunityIotSharp代码:https://github.com/IoTSharp/IoTSharp.gitIoTGateway版本:v2.1.1Node版本:v20.18.1Influxdb版本:v2.7.11 安装Node Node.js官网 官网下载并安装,…

网页502 Bad Gateway nginx1.20.1报错与解决方法

目录 网页报错的原理 查到的502 Bad Gateway报错的原因 出现的问题和尝试解决 问题 解决 网页报错的原理 网页显示502 Bad Gateway 报错原理是用户访问服务器时,nginx代理服务器接收用户信息,但无法反馈给服务器,而出现的报错。 查到…

2025系统架构师(一考就过):选择题基础知识二

考点14:知识产权和标准化 真题1:甲软件公司受乙企业委托安排公司软件设计师开发了信息系统管理软件,由于在委托开发合同中未对软件著作权归属作出明确的约定,所以该信息系统管理软件的著作权由(甲) 享有。 真题2:根据…

算法日记48 day 图论(拓扑排序,dijkstra)

今天继续图论章节,主要是拓扑排序和dijkstra算法。 还是举例说明。 题目:软件构建 117. 软件构建 (kamacoder.com) 题目描述 某个大型软件项目的构建系统拥有 N 个文件,文件编号从 0 到 N - 1,在这些文件中,某些文件…

复原IP地址 什么是运算符重载? 如何在 C++ 中进行运算符重载?运算符重载在面向对象编程中的好处是什么?getline方法

getline方法 getline 是一个强大的函数&#xff0c;主要用于从输入流中按行读取数据或基于自定义分隔符提取字符串。它是 C 标准库的一部分&#xff0c;定义在头文件 <string> 中。 语法 std::getline(istream& input, std::string& str);input&#xff1a;输…

【蓝桥杯备战】Day 1

1.基础题目 LCR 018.验证回文串 给定一个字符串 s &#xff0c;验证 s 是否是 回文串 &#xff0c;只考虑字母和数字字符&#xff0c;可以忽略字母的大小写。 本题中&#xff0c;将空字符串定义为有效的 回文串 。 示例 1: 输入: s "A man, a plan, a canal: Panama…

牛客网刷题 | BC126 小乐乐查找数字

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;从0至1-CSDN博客&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;C语言、C、数据结构、嵌入式、Linux&#x1f36d; &#x1f60e;本文内容&#x1f923;&#xff1a;&#x1f36d;BC1…

单元测试-FATAL ERROR in native method: processing of -javaagent failed

文章目录 前言单元测试-FATAL ERROR in native method: processing of -javaagent failed1. 报错信息2. 解决方案 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运…

使用PaliGemma2构建多模态目标检测系统:从架构设计到性能优化的技术实践指南

目标检测技术作为计算机视觉领域的核心组件&#xff0c;在自动驾驶系统、智能监控、零售分析以及增强现实等应用中发挥着关键作用。本文将详细介绍PaliGemma2模型的微调流程&#xff0c;该模型通过整合SigLIP-So400m视觉编码器与Gemma 2系列的高级语言模型&#xff0c;专门针对…

uni-app 设置缓存过期时间【跨端开发系列】

&#x1f517; uniapp 跨端开发系列文章&#xff1a;&#x1f380;&#x1f380;&#x1f380; uni-app 组成和跨端原理 【跨端开发系列】 uni-app 各端差异注意事项 【跨端开发系列】uni-app 离线本地存储方案 【跨端开发系列】uni-app UI库、框架、组件选型指南 【跨端开…

东方明珠生成式人工智能媒体融合创新平台荣获AI Cloud轻量云典型案例

近日&#xff0c;由全球数字经济大会组委会主办&#xff0c;中国信息通信研究院&#xff08;以下简称“信通院”&#xff09;、中国通信企业协会承办的2024全球数字经济大会云AI计算国际合作论坛在北京成功召开。会上隆重发布了2024年“AI Cloud助力大模型场景化和工程化落地”…

数据结构 ——树状存储的实现

数据结构 ——树状存储的实现 1、树的遍历 按层遍历&#xff1a;从树的根节点开始&#xff0c;逐层遍历树中的所有节点。这种遍历方式也称为广度优先遍历。 先序遍历&#xff08;前序遍历&#xff09;&#xff1a;先访问根节点&#xff0c;然后递归地先序遍历左子树&#xff…

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 原模型 单图推理

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 原模型 单图推理 flyish 输入 输出 [‘这是一幅中国传统山水画&#xff0c;描绘了一座高耸的山峰&#xff0c;周围环绕着树木和植被。画面下方有一片开阔的田野&#xff0c;远处的山峦在薄雾中若隐若现。画面上方有几行书法…

Docker 安装 Jenkins:2.346.3

准备&#xff1a;已安装Docker&#xff0c;已配置服务器安全组规则 1581 1、拉取镜像 [rootTseng ~]# docker pull jenkins/jenkins:2.346.3 2.346.3: Pulling from jenkins/jenkins 001c52e26ad5: Pull complete 6b8dd635df38: Pull complete 2ba4c74fd680: Pull complet…

AWS re:Invent 发布新的数据库产品 Aurora DSQL; NineData SQL编程大赛开始; 腾讯云支持PostgreSQL 17

重要更新 1. AWS re:Invent 发布新的数据库产品 Aurora DSQL &#xff0c;提供了跨区域、强一致、多区域读写的能力&#xff0c;同时具备99.999%&#xff08;多区域部署&#xff09;的可用性&#xff0c;兼容PostgreSQL&#xff1b;同时发布的还有 DynamoDB 也提供类似的跨区域…

《孤岛惊魂4》无法启动提示缺少“msvcp100.dll”快速修复方法!

《孤岛惊魂4》缺少msvcp100.dll的解决之道 在探索《孤岛惊魂4》这款充满惊险与刺激的射击游戏时&#xff0c;玩家可能会遇到一些意外的障碍&#xff0c;其中之一便是“缺少msvcp100.dll”的错误提示。这个错误不仅让游戏无法正常启动&#xff0c;还可能让玩家对游戏的热情大打…