DARPA TC-engagement5数据集解析为json格式输出到本地

关于这个数据集的一些基本信息就不赘述了,参考我之前的博客。DARPA TC-engagement5数据集官方工具可视化
官方给的工具是将解析的数据存到elasticsearch的,但是数据集的解压增长率非常恐怖,对空间要求很高。因此针对这个问题,我对工具主要进行了两个修改:

  • 利用logstash的插件直接将json输出到本地文件,删掉了grafana
  • 参考engagement3的数据格式重写logstash过滤器,对字段进行了删减和修改,剔除不必要字段。

修改之后的工具包放到了我的github-TC_Tool_modified,开源不易,记得star一下,感激不尽!

1. 文件树介绍

在这里插入图片描述

文件内容
theia存放原始数据的文件夹
elasticsearch数据库,已经不需要了,但是logstash以来这个数据库,所以还是保留了
logs存放json文件的地方
logstash日志收集器,负责收集解压出来的log4j日志,然后输出到本地文件
docker-compose.yml镜像的配置文件
TCCDMDatum.avsc一个模式文件,用于规范化数据格式,负责从log到json的转换
tc-das-importer-1.0-SNAPSHOT-jar-with-dependencies.jar官方的java包,用于解压、读取并参考上述数据规范生成标准格式的数据通过socket发送

2. 可修改配置

2.1 elastic search的内存限制(非必要)

docker-compose.yml中存在对于elasticsearch的内存限额,如果1G对于你的机器存在负担,可以尝试改为512、256等。
在这里插入图片描述

2.2 初始日志输出地址

我们可以通过命令java -Dlog4j.debug=true -cp .:tc-das-importer-1.0-SNAPSHOT-jar-with-dependencies.jar main.java.com.bbn.tc.DASImporter [原属数据路径] [模式文件路径] [输出IP] [输出端口] -v启动对于原始日志的解压和解析,启动前确保已有JAVA环境且logstash已成功启动。如果你采用C/S模式,这里的IP和端口可以修改为需要的地址。

java -Dlog4j.debug=true -cp .:tc-das-importer-1.0-SNAPSHOT-jar-with-dependencies.jar main.java.com.bbn.tc.DASImporter ./theia/ ./TCCDMDatum.avsc 127.0.0.1 4712 -v

2.3 初始日志接收地址

logstash负责接收Java包发送来的日志进行处理和输出到本地文件,可修改的的东西主要为4个:

  • docker-compose.yml中挂载的本地路径。
    在这里插入图片描述

  • logstash/pipline/logstash.conf中的监听端口。如果有修改发送地址,此处也应该修改为对应的端口
    在这里插入图片描述

  • logstash/pipline/logstash.conf中的过滤器。如果有额外需求,可以通过修改过滤器对字段进行调整

filter {json {source => "message"}mutate {//移除不必要字段remove_field=>["message","timestamp","file","@version","path","thread","host","method","priority","logger_name","class"]}//转换时间格式mutate {convert => {"[datum][com.bbn.tc.schema.avro.cdm20.Event][timestampNanos]" => "string"}}mutate {gsub => ["[datum][com.bbn.tc.schema.avro.cdm20.Event][timestampNanos]", "\d{6}$", ""]}date {match => ["[datum][com.bbn.tc.schema.avro.cdm20.Event][timestampNanos]", "UNIX_MS"]timezone => "America/New_York"locale => "en"  target => "@timestamp"}
}
  • logstash/pipline/logstash.conf中的输出文件的命名规则。为了避免单个文件过大,这里采用以小时为单位的时间格式命名。注释掉的输出方式为控制台输出,可以打开用以观察是否正常接收到数据,正式转换时再注释掉。
    在这里插入图片描述

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

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

相关文章

安全防御(3)

1.总结当堂NAT与双机热备原理,形成思维导图 2.完成课堂nat与双机热备试验 引用IDS是指入侵检测系统,它可以在网络中检测和防御入侵行为。IDS的签名是指根据已知入侵行为的特征制定的规则,用于检测和警告可能存在的入侵行为。签名过滤器可以根…

计算机网络 ARP协议 IP地址简述

ARP只能在一个链路或一段网络上使用

玩机搞机---安卓新机型payload.bin刷写救砖 无需专用线刷包

目前的新机型官方卡刷包解包后都是payload.bin分区格式的卡刷固件。而有个别一些机型没有线刷包,当这些机型出现系统问题的时候有以下几种方法参考救砖。遇到类似故障的朋友可以借鉴参考下. 其中的不足和相关的资源可以参考这两个博文。任何教程的目的只是拓展你的…

LVS—DR集群的搭建

目录 lvs-dr模式工作原理: 搭建结构: 1、RS: 1)两台RS准备好httpd环境和测试文件 2)添加虚拟IP(vip)、添加访问本地vip的静态路由 并抑制ARP 2、DS: 1)安装ipvasadm…

【C++】C++回调函数基本用法(详细讲解)

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

CommStudio for .NET Crack

CommStudio for .NET Crack CommStudio for.NET使您的应用程序可以轻松地使用串行端口和调制解调器进行通信。CommStudio for.NET是一套全面的组件和可视化调试工具,可将远程系统和设备与visual Studio 2005和visual Studio 2008集成。开发与遗留系统和外部设备集成…

成集云 | 畅捷通采购单同步至钉钉 | 解决方案

源系统成集云目标系统 介绍 畅捷通是一家专业的金融科技公司,致力于为投资者提供便捷、高效的金融服务。通过畅捷通T的交易方式,投资者可以更加灵活地进行买卖交易,并且在交易完成后即可获得结算款项,无需等待T1的结算周期。 钉…

【solon生态】- solon.cloud.micrometer插件使用指南及micrometer详解

solon.cloud.micrometer插件使用指南 solon是什么solon的cloud生态图快速入门 micrometer指南micrometer是什么监控系统 Supported Monitoring Systems注册表 Registry度量 Meters度量名 Naming Meters度量标签 Tag Naming通用标签 Common Tags 指标过滤器 MeterFilter聚合速率…

农业大数据可视化平台,让农业数据更直观展现!

农业大数据可视化平台是指利用大数据技术和可视化工具,对农业领域的数据进行收集、整理、分析和展示的平台。它可以帮助农业从业者更好地理解和利用农业数据,提高农业生产效率和决策水平。 农业大数据可视化平台通常具有以下特点和功能: 数据…

【JAVA】七大排序算法(图解)

稳定性: 待排序的序列中若存在值相同的元素,经过排序之后,相等元素的先后顺序不发生改变,称为排序的稳定性。 思维导图: (排序名称后面蓝色字体为时间复杂度和稳定性) 1.直接插入排序 核心思…

中通快递:短期财务前景良好,长期财务业绩将遭受严重打击

来源:猛兽财经 作者:猛兽财经 华尔街分析师对中通快递的短期财务前景预测 华尔街分析师目前预测中通快递(ZTO)将在2023财年全年产生一份相当不错的财务业绩。 根据S&P Capital IQ的数据,在过去的6个月里&#xff…

记一次Linux启动Mysql异常解决

文章目录 第一步: netstat -ntlp 查看端口情况2、启动Mysql3、查看MySQL日志 tail -100f /var/log/mysqld.log4、查看磁盘占用情况:df -h5、思路小结 第一步: netstat -ntlp 查看端口情况 并没有发现3306数据库端口 2、启动Mysql service …

测试经典书籍拆分讲解

一、全程软件测试 测试行业的经典书籍 测试方法测试策略领域测试主流测试技术涵盖了软件测试的流程与方法体系 二、探索式测试 探索式测试的经典代表性书籍探索式测试是业务测试和手工测试实践中的一个方法论 三、Google测试之道 高级测试工程师与架构师必读讲解google的测…

R语言中的函数24:Combinat:combn(), permn()

介绍 combinat中的combn()和permn()函数可以得到所有的排列组合的情况 combn()函数 combn(x, m, funNULL, simplifyTRUE, …)x – 组合的向量源m – 要取的元素的数量fun – 应用于每个组合的函数(可能为空)simplify – 逻辑的,如果是FALSE,返回一个列…

Spring学习笔记——2

Spring学习笔记——2 1、Bean的基本注解开发1.1、注解版本和Component简介1.2、Component使用1.3、Component的三个衍生注解 二、Bean依赖注入注解开发2.1、依赖注入相关注解2.2、Autowired扩展 三、非自定义Bean注解开发四、Bean配置类的注解开发五、Spring注解的解析原理六、…

数学建模-爬虫系统学习

尚硅谷Python爬虫教程小白零基础速通(含python基础爬虫案例) 内容包括:Python基础、Urllib、解析(xpath、jsonpath、beautiful)、requests、selenium、Scrapy框架 python基础 进阶(字符串 列表 元组 字典…

Java——基础语法(二)

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

stm32 cubemx ps2无线(有线)手柄

文章目录 前言一、cubemx配置二、代码1.引入库bsp_hal_ps2.cbsp_hal_ps2.h 2.主函数 前言 本文讲解使用cubemx配置PS2手柄实现对手柄的按键和模拟值的读取。 很简单,库已经封装好了,直接就可以了。 文件 一、cubemx配置 这个很简单,不需要…

图的拓扑排序算法

拓扑排序 什么是拓扑排序? 比如说,我们平时工作过程中一定听过一个词叫做—不能循环依赖。什么意思? A依赖BCD,B依赖CD,C依赖D,D依赖EF,想要获得A的话,首先就要先有EF,有…

ArcGIS制作带蒙版的遥感影像地图

这次文章我们来介绍一下,如何通过一个系统的步骤完成ArcGIS制作带蒙版的遥感影像地图。 主要的步骤包括: 1 添加行政区划数据 2 导出兴趣去乡镇矢量范围 3 添加遥感影像底图 4 制作蒙版 5 利用自动完成面制作蒙版 6 标注乡镇带晕渲文字 7 …