CN111008084A - 一种多输入输出的消息格式转换方法及装置 - Google Patents

一种多输入输出的消息格式转换方法及装置 Download PDF

Info

Publication number
CN111008084A
CN111008084A CN201911189713.6A CN201911189713A CN111008084A CN 111008084 A CN111008084 A CN 111008084A CN 201911189713 A CN201911189713 A CN 201911189713A CN 111008084 A CN111008084 A CN 111008084A
Authority
CN
China
Prior art keywords
conversion
message
input
task
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911189713.6A
Other languages
English (en)
Other versions
CN111008084B (zh
Inventor
徐子祺
钱倩
谢琳
戴春春
胡国庆
董兆琦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Original Assignee
Bank of China Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN201911189713.6A priority Critical patent/CN111008084B/zh
Publication of CN111008084A publication Critical patent/CN111008084A/zh
Application granted granted Critical
Publication of CN111008084B publication Critical patent/CN111008084B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种多输入输出的消息格式转换方法及装置,包括:建立转换任务中同一消息的输入类别与输出类别之间建立映射关系;将各消息的转换结果的映射关系传送至对应的输出类别中。本申请实现了对多输入TOPIC与多输出TOPIC的参数化订制并可根据转换规则对日志内容进行筛选和提取,同时还可以随时查看任务状态。

Description

一种多输入输出的消息格式转换方法及装置
技术领域
本申请属于数据处理技术领域,具体地讲,涉及一种多输入输出的消息格式转换方法及装置。
背景技术
目前,针对大数据处理出现了一系列大数据平台及框架方便开发者使用,其中包括Hadoop、KAFKA消息订阅系统、flume实时采集框架等,这些系统和框架对基于流式数据的处理都具有非常好的效果,同时也极大地降低了分布式计算的开发难度。
现有的KAFKA可以通过订阅不同TOPIC(类型)来消费不同的消息源,但是不能对消息TOPIC进行归一化和过滤处理,而原始的日志内容对于后续的计算和分析,会严重影响流式计算的效率。除此之外,当有多个输入源TOPIC时,即当我们采集多个日志时,如果彼此之间的过滤规则相同,KAFKA也无法自动识别生产转换后日志具体的输出TOPIC,需要在任务启动时提前设定好输出TOPIC,当开发人员对TOPIC的内容进行消费并做转换处理后并做对应的输出,需要对每个不同的输入输出TOPIC重新启动对应的转换任务,这无疑造成了服务器调度的巨大开销,需要维护每个转换任务的调度资源,同时还要监控所有的转换任务,以免转换任务被误停止或宕机后的重启工作,过多的任务显然会对服务器的响应及处理产生延时。
发明内容
本申请提供了一种多输入输出的消息格式转换方法及装置,以至少解决现有技术中启动一个转换日志格式任务无法采集多个日志且一个转换任务的条件不能适用于不同的输入和输出源的问题。
根据本申请的一个方面,提供了一种多输入输出的消息格式转换方法,包括:
建立转换任务中同一消息的输入类别与输出类别之间建立映射关系;
将各消息的转换结果的映射关系传送至对应的输出类别中。
在一实施例中,建立转换任务中同一消息的输入类别与输出类别之间建立映射关系,包括:
提取转换任务中各消息的关键字信息,并根据关键字信息定义输出类别;消息中包含输入类别;
根据关键字信息建立输入类别与输出类别之间建立映射关系。
在一实施例中,提取转换任务中各消息的关键字信息,包括:
利用消息中的分隔符对消息进行分隔后提取数据信息作为关键字信息;或
利用正则表达式提取消息的关键字信息;或
根据消息中定长字段的字符串长度来提取关键字信息。
在一实施例中,一种多输入输出的消息格式转换方法还包括:
创建转换任务;
为转换任务随机分配转换规则,转换任务与转换规则一一对应。
在一实施例中,一种多输入输出的消息格式转换方法还包括:
监测转换任务的工作状态,当转换任务停止时重启转换任务。
根据本申请的另一个方面,还提供了一种多输入输出的消息格式转换装置,包括:
映射建立单元,用于建立转换任务中同一消息的输入类别与输出类别之间建立映射关系;
传送单元,用于将各消息的转换结果的映射关系传送至对应的输出类别中。
在一实施例中,映射建立单元包括:
输入TOPIC确定模块,用于提取转换任务中各消息的关键字信息,并根据关键字信息定义输出类别;消息中包含输入类别;
关系建立模块,用于根据关键字信息建立输入类别与输出类别之间建立映射关系。
在一实施例中,输入TOPIC确定模块包括:
第一提取模块,用于利用消息中的分隔符对消息进行分隔后提取数据信息作为关键字信息;或
第二提取模块,用于利用正则表达式提取消息的关键字信息;或
第三提取模块,用于根据消息中定长字段的字符串长度来提取关键字信息。
在一实施例中,本装置还包括:
任务创建单元,用于创建转换任务;
规则分配单元,用于为转换任务随机分配转换规则,转换任务与转换规则一一对应。
在一实施例中,本装置还包括:
监听单元,用于监测转换任务的工作状态,当转换任务停止时重启转换任务。
本申请提供了一种基于多输入和输出的转换方法,使得用户可以根据自己所需的条件对不同的输入进行过滤并输出到它对应的输出,同时相同的转换规则只需要针对这类规则启动一个任务,就可以自行根据输入源匹配到对应的输出源,节省服务器开销。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种多输入输出的消息格式转换方法的流程图。
图2为本申请实施例中建立映射关系的方法流程图。
图3为本申请实施例中提取转换任务中各消息的关键字信息的方法流程图。
图4为本申请实施例中一种多输入输出的消息格式转换方法的流程图。
图5为本申请实施例中一种多输入输出的消息格式转换装置的结构框图。
图6为本申请实施例中映射建立单元的结构框图。
图7为本申请实施例中输入TOPIC确定模块的结构框图。
图8为本申请实施例中一种电子设备的具体实施方式。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,大部分的log4j日志格式都是不规整的,采集这些日志并对其中的信息和数据进行分析,需要在对日志进行分析之前,对日志进行过滤和加工形成统一的格式。但是通常会遇到采集多个日志的情况,而一个转换任务的条件不能适用于不同的输入源和输出源,每进行一项转换就要启动一个转换任务,而转换任务过多也会对服务器的性能造成较大影响。基于上述问题,本申请提供了一种基于KAFKA的多输入输出的消息格式转换方法,它使得用户可以根据自己所希望的过滤原则对不同的输入进行过滤并输出到对应的输出,同时对于转换规则相同的消息,只需针对这类规则启动一个任务,就可以自行根据输入源匹配到对应的输出源,节省服务器开销。
在介绍方法之前,首先介绍一些基础情况:
KAFKA是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
每条发布到KAFKA集群的消息都有一个类别,这个类别被称为TOPIC(本说明书中以“类型”代指),TOPIC用于划分数据类型。
现有的KAFKA可以通过订阅不同的TOPIC来消费不同的消息源,但是不能对被消费的消息的TOPIC进行归一化和过滤处理,而直接使用原始日志内容则会严重影响后续的流式计算效率。除此之外,当有多个输入源TOPIC时,即当我们采集多个日志时,如果彼此之间的过滤规则相同,KAFKA也无法自动识别生产转换后日志具体的输出TOPIC,需要在任务启动时提前设定好输出TOPIC,当开发人员对TOPIC的内容进行消费并做转换处理后并做对应的输出,需要对每个不同的输入输出TOPIC重新起对应的转换任务,这无疑造成了服务器调度的巨大开销,需要维护每个转换任务的调度资源,同时还要监控所有的转换任务,以免转换任务被误停止或宕机后的重启工作,过多的任务显然会对服务器的响应及处理产生延时。
如图1所示,基于KAFKA系统,本申请提供了一种多输入输出的消息格式转换方法,包括以下步骤:
S101:建立转换任务中同一消息的输入类别与输出类别之间建立映射关系。
针对在同一转换任务中不同的输入类别(TOPIC)以某种方式定义与该输入TOPIC所对应的输出TOPIC,并建立输入TOPIC与输出TOPIC之间的映射关系。
在一具体实施例中,针对不同的输入TOPIC,提取关键字,然后以提取的关键字来命名该条消息所对应的输出TOPIC。同时针对格式凌乱的日志,在对日志进行分析和计算之前首先进行格式处理及过滤工作,格式处理包括但不限于:分隔符补长、关键字提取。
S102:将各消息的转换结果的映射关系传送至对应的输出类别中。
消息被按照不同的转换规则进行分类后送入转换任务中进行转换,获得的转换结果按照S101中所建立起的映射关系输出到对应的输出TOPIC中。
图1所示的方法的执行主体可以为服务器、PC、移动终端,该方法实现了通过将相同的输入TOPIC及输出TOPIC作为参数维护在一个转换任务重并根据TOPIC的关键字去自行定义输出TOPIC来达到同类任务的批量处理的功能,并且在采集到日志之后,首先对日志进行过滤转换,从而过滤并筛选出所需的字段同时也能增加一些后续计算中所需的字段,然后再对日志进行计算。
在一实施例中,如图2所示,建立转换任务中同一消息的输入类别与输出类别之间建立映射关系,包括:
S201:提取转换任务中各消息的关键字信息,并根据关键字信息定义输出类别;消息中包含输入类别。
在一具体实施例中,用户可以设置过滤规则参数,该过滤规则参数既可以由用户自定义设置,也可以预先设置在系统中,用户直接选择已经预先设定好的过滤规则参数而无需自行开发过滤规则,只要在前段维护过滤规则参数即可提取指定关键字字段。在选定过滤规则参数之后,系统根据过滤规则参数提取指定的关键字字段,并根据关键字字段来定义输出TOPIC。而在KAFKA消息订阅系统中,每个消息自带有输入TOPIC,无需再行定义。
S202:根据关键字信息建立输入类别与输出类别之间建立映射关系。
在一具体实施例中,由于输出TOPIC由提取的关键字来定义的,所以输出TOPIC中包含该关键字,因此,根据该关键字,即能找到该输出TOPIC所对应的输入TOPIC,并在二者之间建立映射关系。
在一实施例中,如图3所示,提取转换任务中各消息的关键字信息,包括:
S301:利用消息中的分隔符对消息进行分隔后提取数据信息作为关键字信息;或
S302:利用正则表达式提取消息的关键字信息;或
S303:根据消息中定长字段的字符串长度来提取关键字信息。
在一具体实施例中,提取转换任务中各个消息的关键字包括多种方式,比如根据分隔符对日志的内容进行分隔后提取数据信息,或者可以通过匹配正则表达式的方式进行提取关键字,其中,正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑,正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本,许多程序设计语言都支持利用正则表达式进行字符串操作。另外,还可以根据字符串长度针对日志内容中的定长字段来提取关键字。也可以针对同一条日志配置多种过滤和提取规则以达到用户所需的要求。
在一实施例中,如图4所示,一种多输入输出的消息格式转换方法还包括:
S401:创建转换任务。
首先,创建转换任务,并且每个转换任务中有至少一个输入TOPIC和输出TOPIC,转换任务可以同时处理多个消息,对输入其中的多个消息进行转换处理。
S402:为转换任务随机分配转换规则,转换任务与转换规则一一对应。
如果有多个消息的输入TOPIC和输出TOPIC的转换规则一致,则可以将这些消息配置在同一个转换任务中,也就是说,每个转换任务中都包含有一个转换规则,可以集中处理基于同一转换规则的不同消息。然后,输入转换参数和过滤参数,转换任务会根据输入的参数来对消息进行处理和转换,最后传送到输出TOPIC以备后续使用。
在一实施例中,一种多输入输出的消息格式转换方法还包括:
监测转换任务的工作状态,当转换任务停止时重启转换任务。
在一具体实施例中,每项转换任务的信息和进程都是即时监听的,具体方式为采用守护进程来监听每项转换任务的进程,守护进程脱离终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程也不会被任何终端所产生的终端信息所打断,它从被执行开始运转,直到整个系统关闭时才退出,在本申请中,当守护进程监听到某个转换任务停止的时候会重启该项转换任务。
针对本申请中提出的多输入多输出的消息格式转换方法,下面列举一个例子来加以说明:
整个日志采集及转换过程如下:
flume采集服务器日志->不同模块日志进对应KAFKA输入TOPIC->转换->转换出对应KAFKA输出TOPIC。
A系统模块1的日志如下:
2018-05-10 10:46:29,566INFO[example.HelloWorld]:10-this is info:sdibt2018-05-10 10:46:29,566ERROR[example.HelloWorld]:11-this is error:sdibt
A系统模块2的日志如下:
2018-05-10 10:46:29,566DEBUG[example.HelloWorld]:12-this is debug:sdibt
针对模块1的日志,建立名为module1-input的输入TOPIC,以module1为关键字,建立名为module1-output的输出TOPIC。
针对模块2的日志,建立名为module2-input的输入TOPIC,以module2为关键字,建立名为module2-output的输出TOPIC。
进行转换操作:
需要提取error字段行,同时给时间戳,出错信息标注字段,并附带服务器IP,及模块名。
首先flmue采集日志时,不做过滤,通过kakfa.produce把采集到的模块1及模块2日志分别生产到命名为:module1-input的topic及module2-input的topic内。
然后转换模块通过kafka.consume同时消费这两个TOPIC数据,此时不做区分,因为所做的转换操作相同,转换结果如下,格式转换为jsonobject:{logtime:2018-05-1010:46:29,566level:ERROR errmsg:[example.HelloWorld]:11-this iserror:sdibtmodule:module1}
每转换一条结果后,提取module字段内的值module1,去KAFKA消息系统中所有的输出TOPIC集合内找对应module1-ouput作为输出TOPIC,做到能够实现消息多输入输出且不会紊乱的效果。
基于同一发明构思,本申请实施例还提供了一种多输入输出的消息格式转换的装置,可以用于实现上述实施例中所描述的方法,如下面实施例所述。由于多输入输出的消息格式转换的装置解决问题的原理与多输入输出的消息格式转换的方法相似,因此多输入输出的消息格式转换装置的实施可以参见多输入输出的消息格式转换方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
如图5所示,一种多输入输出的消息格式转换装置,包括:
映射建立单元501,用于建立转换任务中同一消息的输入类别与输出类别之间建立映射关系;
传送单元502,用于将各消息的转换结果的映射关系传送至对应的输出类别中。
在一实施例中,如图6所示,映射建立单元501包括:
输入TOPIC确定模块601,用于提取转换任务中各消息的关键字信息,并根据关键字信息定义输出类别;消息中包含输入类别;
关系建立模块602,用于根据关键字信息建立输入类别与输出类别之间建立映射关系。
在一实施例中,如图7所示,输入TOPIC确定模块601包括:
第一提取模块701,用于利用消息中的分隔符对消息进行分隔后提取数据信息作为关键字信息;或
第二提取模块702,用于利用正则表达式提取消息的关键字信息;或
第三提取模块703,用于根据消息中定长字段的字符串长度来提取关键字信息。
在一实施例中,本装置还包括:
任务创建单元,用于创建转换任务;
规则分配单元,用于为转换任务随机分配转换规则,转换任务与转换规则一一对应。
在一实施例中,本装置还包括:
监听单元,用于监测转换任务的工作状态,当转换任务停止时重启转换任务。
本申请提供的多输入输出格式转换方法及装置具有以下优点:
1.节省调度任务资源
任务调度只能完成任务调度工作,不能处理相同类任务的批量处理,过多的任务会消耗大量的任务调度资源,而本申请在配置相同转换规则的任务时,可以将相同的输入TOPIC及输出TOPIC作为参数维护在一个转换任务中,根据TOPIC的关键字去自行匹配输出TOPIC,从而再对不同输出TOPIC进行计算。
2.提高计算效率
大多数系统在记录log4j日志为了保证日志的完整性,不会对日志做过多规整化处理,这就对后续分析及计算模块带来比较大的难度,因此,实际工作过程中,希望在计算模块在读取TOPIC当中的数据时已经是比较规整的日志,这样才能尽可能地提升计算效率,因此我们在采集日志后不马上对其进行计算,还是通过我们的转换系统对日志进行过滤转换,从而过滤并筛选出我们所需的字段,同时也能增加一些后续计算当中所需的字段,在通过转换过后,再经由spark流式计算,最大限度的对数据进行计算和分析得到所需结果
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本申请的实施例还提供能够实现上述实施例中的方法中全部步骤的一种电子设备的具体实施方式,参见图8,所述电子设备具体包括如下内容:
处理器(processor)801、内存802、通信接口(Communications Interface)803、总线804和非易失性存储器805;
其中,所述处理器801、内存802、通信接口803通过所述总线804完成相互间的通信;
所述处理器801用于调用所述内存802和非易失性存储器805中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
S101:建立转换任务中同一消息的输入类别与输出类别之间建立映射关系。
S102:将各消息的转换结果的映射关系传送至对应的输出类别中。
本申请的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
S101:建立转换任务中同一消息的输入类别与输出类别之间建立映射关系。
S102:将各消息的转换结果的映射关系传送至对应的输出类别中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。
在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。

Claims (12)

1.一种多输入输出的消息格式转换方法,其特征在于,包括:
建立转换任务中同一消息的输入类别与输出类别之间建立映射关系;
将各所述消息的转换结果所述的映射关系传送至对应的输出类别中。
2.根据权利要求1所述的转换方法,其特征在于,所述建立转换任务中同一消息的输入类别与输出类别之间建立映射关系,包括:
提取转换任务中各消息的关键字信息,并根据所述关键字信息定义输出类别;所述消息中包含所述输入类别;
根据所述关键字信息建立输入类别与所述输出类别之间建立映射关系。
3.根据权利要求1所述的转换方法,其特征在于,所述提取转换任务中各消息的关键字信息,包括:
利用所述消息中的分隔符对所述消息进行分隔后提取数据信息作为所述关键字信息;或
利用正则表达式提取所述消息的所述关键字信息;或
根据所述消息中定长字段的字符串长度来提取所述关键字信息。
4.根据权利要求1所述的转换方法,其特征在于,还包括:
创建所述转换任务;
为所述转换任务随机分配转换规则,所述转换任务与所述转换规则一一对应。
5.根据权利要求1所述的转换方法,其特征在于,还包括:
监测所述转换任务的工作状态,当所述转换任务停止时重启所述转换任务。
6.一种多输入输出的消息格式转换装置,其特征在于,包括:
映射建立单元,用于建立转换任务中同一消息的输入类别与输出类别之间建立映射关系;
传送单元,用于将各所述消息的转换结果所述的映射关系传送至对应的输出类别中。
7.根据权利要求6所述的转换装置,其特征在于,所述映射建立单元包括:
输入TOPIC确定模块,用于提取转换任务中各消息的关键字信息,并根据所述关键字信息定义输出类别;所述消息中包含所述输入类别;
关系建立模块,用于根据所述关键字信息建立输入类别与所述输出类别之间建立映射关系。
8.根据权利要求7所述的转换装置,其特征在于,所述输入TOPIC确定模块包括:
第一提取模块,用于利用所述消息中的分隔符对所述消息进行分隔后提取数据信息作为所述关键字信息;或
第二提取模块,用于利用正则表达式提取所述消息的所述关键字信息;或
第三提取模块,用于根据所述消息中定长字段的字符串长度来提取所述关键字信息。
9.根据权利要求6所述的转换装置,其特征在于,还包括:
任务创建单元,用于创建所述转换任务;
规则分配单元,用于为所述转换任务随机分配转换规则,所述转换任务与所述转换规则一一对应。
10.根据权利要求6所述的转换装置,其特征在于,还包括:
监听单元,用于监测所述转换任务的工作状态,当所述转换任务停止时重启所述转换任务。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5中任一项所述多输入输出的消息格式转换方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5中任一项所述多输入输出的消息格式转换方法。
CN201911189713.6A 2019-11-28 2019-11-28 一种多输入输出的消息格式转换方法及装置 Active CN111008084B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911189713.6A CN111008084B (zh) 2019-11-28 2019-11-28 一种多输入输出的消息格式转换方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911189713.6A CN111008084B (zh) 2019-11-28 2019-11-28 一种多输入输出的消息格式转换方法及装置

Publications (2)

Publication Number Publication Date
CN111008084A true CN111008084A (zh) 2020-04-14
CN111008084B CN111008084B (zh) 2023-08-18

Family

ID=70113627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911189713.6A Active CN111008084B (zh) 2019-11-28 2019-11-28 一种多输入输出的消息格式转换方法及装置

Country Status (1)

Country Link
CN (1) CN111008084B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765775A (zh) * 2015-03-17 2015-07-08 新浪网技术(中国)有限公司 一种日志保存方法及装置
US20160321308A1 (en) * 2015-05-01 2016-11-03 Ebay Inc. Constructing a data adaptor in an enterprise server data ingestion environment
CN108519987A (zh) * 2018-02-24 2018-09-11 国家计算机网络与信息安全管理中心 一种数据持久化方法和装置
CN109254982A (zh) * 2018-08-31 2019-01-22 杭州安恒信息技术股份有限公司 一种流数据处理方法、系统、装置及计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765775A (zh) * 2015-03-17 2015-07-08 新浪网技术(中国)有限公司 一种日志保存方法及装置
US20160321308A1 (en) * 2015-05-01 2016-11-03 Ebay Inc. Constructing a data adaptor in an enterprise server data ingestion environment
CN108519987A (zh) * 2018-02-24 2018-09-11 国家计算机网络与信息安全管理中心 一种数据持久化方法和装置
CN109254982A (zh) * 2018-08-31 2019-01-22 杭州安恒信息技术股份有限公司 一种流数据处理方法、系统、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN111008084B (zh) 2023-08-18

Similar Documents

Publication Publication Date Title
CN107577805B (zh) 一种面向日志大数据分析的业务服务系统
CN110750458A (zh) 大数据平台测试方法、装置、可读存储介质及电子设备
CN111162950B (zh) 故障事件处理方法、装置及系统
CN110519100A (zh) 一种多集群管理方法、终端及计算机可读存储介质
CN111400127B (zh) 业务日志的监控方法及装置、存储介质、计算机设备
CN110851234A (zh) 基于docker容器的日志处理方法及装置
CN111679886A (zh) 异构计算资源调度方法、系统、电子设备及存储介质
US20210111986A1 (en) Protocol and state analysis in a dynamic routing network
CN111488257A (zh) 一种云服务链路跟踪监控方法、装置、设备及存储介质
CN107204868B (zh) 一种任务运行监控信息获取方法和装置
EP3789882B1 (en) Automatic configuration of logging infrastructure for software deployments using source code
CN112631754A (zh) 数据处理方法、装置、存储介质及电子装置
CN112925619A (zh) 大数据实时计算方法及平台
CN111008084B (zh) 一种多输入输出的消息格式转换方法及装置
CN111104384A (zh) 数据预处理方法、装置、设备和存储介质
CN115757304A (zh) 一种日志存储方法、装置、系统、电子设备及存储介质
CN108959041B (zh) 信息发送的方法、服务器及计算机可读存储介质
CN113282557A (zh) 一种基于Spring框架的大数据日志分析的方法和系统
CN115237399A (zh) 用于采集数据的方法、存储介质、处理器及工程车辆
CN113722135A (zh) 一种错误日志采集系统、方法、设备及介质
Alawneh et al. MTF: A scalable exchange format for traces of high performance computing systems
CN104090813A (zh) 一种云数据中心的虚拟机cpu使用率的分析建模方法
CN114564249A (zh) 推荐调度引擎、推荐调度方法及计算机可读存储介质
CN113626194A (zh) 一种报表文件生成方法、装置、设备及可读存储介质
CN113326237A (zh) 日志数据的加工方法、装置、终端设备以及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant