本发明涉及数据传输,特别是涉及一种数据外发方法、装置、设备和计算机可读存储介质。
背景技术:
1、随着信息技术的发展,业务系统也随之越来越复杂,系统之间往往需要进行频繁的信息交换。当前系统开发模式往往是多系统配合,不同系统之间进行数据交换甚至于数据托管的需求也越来越多。
2、以高级威胁检测与分析系统(axdr)产品来说,把自己的告警数据发给其他同类产品,或者发送给其他不同类型产品,如高级持续性威胁(advanced persistent threat,apt)产品、大数据智能安全平台(ailpha)产品等。相反,其他系统的数据也可以通过相同的方式发送给本系统。理论上来说只要目标系统对本系统的数据有需求,都可以把数据通过不同的方式进行发送。但是传统的数据外发方式往往按照选定好的单一数据传输方式进行数据的外发,无法满足把数据通过不同的方式进行发送的需求。
3、可见,如何支持多种发送方式的数据外发,是本领域技术人员需要解决的问题。
技术实现思路
1、本发明实施例的目的是提供一种数据外发方法、装置、设备和计算机可读存储介质,可以支持多种发送方式的数据外发。
2、为解决上述技术问题,本发明实施例提供一种数据外发方法,适用于发送端,所述方法包括:
3、根据不同服务器的接收需求,进行多种发送方式的发送配置;
4、按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务;
5、启动所述数据采集任务,以获取各类数据;
6、将目标数据按照设定的数据格式进行封装,并根据所述目标数据匹配的数据发送方式将封装后的目标数据传输至目标服务器;其中,所述目标数据为各类数据中的任意一类数据。
7、一方面,根据不同服务器的接收需求,进行多种发送方式的发送配置包括:
8、在服务器的接收需求为api接收的情况下,配置服务器名称、服务器地址以及认证令牌;
9、在服务器的接收需求为syslog接收的情况下,配置服务器名称、服务器ip、端口以及传输协议;
10、在服务器的接收需求为kafka接收的情况下,配置服务器名称、服务器列表、主题、压缩方式、加密方式以及与加密方式匹配的认证信息。
11、一方面,按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务包括:
12、根据不同服务器所需获取的数据类型,配置不同的数据采集页面,并记录每个服务器与数据类型以及数据发送方式之间的对应关系;其中,所述数据采集页面用于采集与数据类型相匹配的数据。
13、一方面,启动所述数据采集任务,以获取各类数据包括:
14、依据目标服务器匹配的数据采集页面,获取所述目标服务器对应的目标数据;
15、相应的,根据所述目标数据匹配的数据发送方式将封装后的目标数据传输至目标服务器包括:
16、查询每个服务器与数据类型以及数据发送方式之间的对应关系,以确定出所述目标服务器匹配的目标数据发送方式;
17、将封装后的目标数据按照所述目标数据发送方式传输至目标服务器。
18、一方面,按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务包括:
19、构建用于采集系统数据的配置文件,并记录每个服务器与数据类型以及数据发送方式之间的对应关系。
20、一方面,启动所述数据采集任务,以获取各类数据包括:
21、利用所述配置文件获取系统数据;
22、相应的,将目标数据按照设定的数据格式进行封装,并根据所述目标数据匹配的数据发送方式将封装后的目标数据传输至目标服务器包括:
23、查询每个服务器与数据类型以及数据发送方式之间的对应关系,以确定出所述目标服务器匹配的目标数据类型以及目标数据发送方式;
24、从所述系统数据中筛选出与所述目标数据类型匹配的目标数据,将所述目标数据按照设定的数据格式进行封装,将封装后的目标数据按照所述目标数据发送方式传输至所述目标服务器。
25、一方面,构建用于采集系统数据的配置文件包括:
26、按照json格式,构建支持mysql查询语句、支持接口调用、支持反射的配置文件。
27、本发明实施例还提供了一种数据外发装置,适用于发送端,所述装置包括发送配置单元、构建单元、获取单元和传输单元;
28、所述发送配置单元,用于根据不同服务器的接收需求,进行多种发送方式的发送配置;
29、所述构建单元,用于按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务;
30、所述获取单元,用于启动所述数据采集任务,以获取各类数据;
31、所述传输单元,用于将目标数据按照设定的数据格式进行封装,并根据所述目标数据匹配的数据发送方式将封装后的目标数据传输至目标服务器;其中,所述目标数据为各类数据中的任意一类数据。
32、一方面,所述发送配置单元包括第一配置子单元、第二配置子单元和第三配置子单元;
33、所述第一配置子单元,用于在服务器的接收需求为api接收的情况下,配置服务器名称、服务器地址以及认证令牌;
34、所述第二配置子单元,用于在服务器的接收需求为syslog接收的情况下,配置服务器名称、服务器ip、端口以及传输协议;
35、所述第三配置子单元,用于在服务器的接收需求为kafka接收的情况下,配置服务器名称、服务器列表、主题、压缩方式、加密方式以及与加密方式匹配的认证信息。
36、一方面,所述构建单元用于根据不同服务器所需获取的数据类型,配置不同的数据采集页面,并记录每个服务器与数据类型以及数据发送方式之间的对应关系;其中,所述数据采集页面用于采集与数据类型相匹配的数据。
37、一方面,所述获取单元用于依据目标服务器匹配的数据采集页面,获取所述目标服务器对应的目标数据;
38、相应的,所述传输单元用于查询每个服务器与数据类型以及数据发送方式之间的对应关系,以确定出所述目标服务器匹配的目标数据发送方式;将封装后的目标数据按照所述目标数据发送方式传输至目标服务器。
39、一方面,所述构建单元用于构建用于采集系统数据的配置文件,并记录每个服务器与数据类型以及数据发送方式之间的对应关系。
40、一方面,所述获取单元用于利用所述配置文件获取系统数据;
41、相应的,所述传输单元用于查询每个服务器与数据类型以及数据发送方式之间的对应关系,以确定出所述目标服务器匹配的目标数据类型以及目标数据发送方式;从所述系统数据中筛选出与所述目标数据类型匹配的目标数据,将所述目标数据按照设定的数据格式进行封装,将封装后的目标数据按照所述目标数据发送方式传输至所述目标服务器。
42、一方面,所述构建单元用于按照json格式,构建支持mysql查询语句、支持接口调用、支持反射的配置文件。
43、本发明实施例还提供了一种数据外发设备,包括:
44、存储器,用于存储计算机程序;
45、处理器,用于执行所述计算机程序以实现如上述数据外发方法的步骤。
46、本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述数据外发方法的步骤。
47、由上述技术方案可以看出,根据不同服务器的接收需求,进行多种发送方式的发送配置。按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务。启动数据采集任务,以获取各类数据。将目标数据按照设定的数据格式进行封装,并根据目标数据匹配的数据发送方式将封装后的目标数据传输至目标服务器;其中,目标数据为各类数据中的任意一类数据。在该技术方案中,通过配置把数据收集和数据发送阶段解偶,在数据收集阶段可通过构建数据采集任务灵活收集发送端系统中任意需要发送的数据。通过预先进行多种发送方式的发送配置,从而在数据发送阶段可灵活选择与服务器匹配的发送方式,实现数据的外送。在该技术方案中可以在数据收集和发送阶段都做到灵活可配,实现支持多种方式的组合配置发送,可以涵盖大部分业务场景需求。并且使用者无需关心数据收集过程和发送过程,只需正确配置即可完成任意数据收集、任何系统的数据发送。
1.一种数据外发方法,其特征在于,适用于发送端,所述方法包括:
2.根据权利要求1所述的数据外发方法,其特征在于,根据不同服务器的接收需求,进行多种发送方式的发送配置包括:
3.根据权利要求1所述的数据外发方法,其特征在于,按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务包括:
4.根据权利要求3所述的数据外发方法,其特征在于,启动所述数据采集任务,以获取各类数据包括:
5.根据权利要求1所述的数据外发方法,其特征在于,按照不同服务器所需获取的数据类型和数据发送方式,构建数据采集任务包括:
6.根据权利要求5所述的数据外发方法,其特征在于,启动所述数据采集任务,以获取各类数据包括:
7.根据权利要求5所述的数据外发方法,其特征在于,构建用于采集系统数据的配置文件包括:
8.一种数据外发装置,其特征在于,适用于发送端,所述装置包括发送配置单元、构建单元、获取单元和传输单元;
9.一种数据外发设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述数据外发方法的步骤。