一种数据延时产出监控方法、装置及电子设备与流程

文档序号:26405837发布日期:2021-08-24 16:20阅读:106来源:国知局
一种数据延时产出监控方法、装置及电子设备与流程

本发明涉及数据处理技术领域,具体而言,涉及一种数据延时产出监控方法、装置、电子设备及计算机可读介质。



背景技术:

为了保证下游业务的数据需求,通常会对数据平台的数据进行延时产出监控。现有延迟产出监控是在指定时间(比如早上8点)定时统一检测所有监控项的数据产出。而随着监控项数量的增加,监控任务时长会线性增长,会出现某时段的高负载压力,导致监控任务阻塞的问题。

此外,实际中,监控项的数据并不都是同时产出,且每个监控项的启动时间,运行时间都是不同的。同时,监控项的重要性不同,所要求的保障级别也是不同的,不能一概而论。显然,固定在指定时间统一进行检测的方法无法满足针对每个监控项的个性化配置需求。



技术实现要素:

本发明旨在解决现有数据延时监控在统一的指定时间检测所有监控项的数据,会出现监控任务阻塞的技术问题。

为了解决上述技术问题,本发明第一方面提出一种数据延时产出监控方法,所述方法包括:

间隔预定时间查询已产出监控配置信息;所述监控配置信息包括:监控项和对应的数据产出周期;

从所述监控配置信息中提取所述预定时间内的目标监控配置信息;

根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径;

根据所述数据产出文件的分区路径对数据产出文件进行检测;

根据数据产出文件的检测结果对产出数据进行监控。

根据本发明一种优选的实施方式,所述从所述监控配置信息中提取所述预定时间内的目标监控配置信息包括:

根据监控配置信息中数据产出周期确定各个监控项的预期产出时间;

提取预期产出时间在所述预定时间内的监控项和对应的数据产出周期作为目标监控配置信息。

根据本发明一种优选的实施方式,所述根据监控配置信息中数据产出周期确定各个监控项的预期产出时间之前,所述方法还包括:

获取监控结果信息;

将所述监控配置信息与所述监控结果信息进行连接;

所述提取预期产出时间在所述预定时间内的监控项和对应的数据产出周期作为目标监控配置信息包括:

提取预期产出时间在所述预定时间内且监控结果信息中数据产出时间为空的监控项和对应的数据产出周期作为目标监控配置信息。

根据本发明一种优选的实施方式,所述根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径包括:

根据所述目标监控配置信息的数据产出周期从预设分区规则集中匹配目标预设分区规则;

根据目标预设分区规则及文件产出路径解析出数据产出文件的分区路径。

根据本发明一种优选的实施方式,所述根据数据产出文件的检测结果对产出数据进行监控包括:

若检测结果为数据已产出,将数据产出时间写入监控结果信息中;

若检测结果为数据未产出,将未产出的数据信息写入报警列表,并根据预设的报警策略进行存储和报警。

根据本发明一种优选的实施方式,所述间隔预定时间查询监控配置信息之前,所述方法还包括:

通过前端页面获取监控配置信息;

所述根据数据产出文件的检测结果对产出数据进行监控之后,所述方法还包括:

通过前端页面显示已产出数据信息和未产出数据信息。

根据本发明一种优选的实施方式,所述监控配置信息还包括:监控重要等级;所述目标监控配置信息还包括监控重要等级大于预设等级的监控项和对应的数据产出周期。

为了解决上述技术问题,本发明第二方面提供一种数据延时产出监控装置,所述装置包括:

查询模块,用于间隔预定时间查询已产出的监控配置信息;所述查询监控配置信息包括:监控项和对应的数据产出周期;

提取模块,用于从所述监控配置信息中提取所述预定时间内的目标监控配置信息;

匹配模块,用于根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径;

检测模块,用于根据所述数据产出文件的分区路径对数据产出文件进行检测;

监控模块,用于根据数据产出文件的检测结果对产出数据进行监控。

根据本发明一种优选的实施方式,所述提取模块包括:

确定模块,用于根据监控配置信息中数据产出周期确定各个监控项的预期产出时间;

子提取模块,用于提取预期产出时间在所述预定时间内监控配置信息作为目标监控配置信息。

根据本发明一种优选的实施方式,所述装置还包括:

第一获取模块,用于获取监控结果信息;

连接模块,用于将所述监控配置信息与所述监控结果信息进行连接;

所述子提取模块,具体用于提取预期产出时间在所述预定时间内且监控结果信息中数据产出时间为空的监控项和对应的数据产出周期作为目标监控配置信息。

根据本发明一种优选的实施方式,所述匹配模块包括:

子匹配模块,用于根据所述目标监控配置信息的数据产出周期从预设分区规则集中匹配目标预设分区规则;

解析模块,用于根据目标预设分区规则及文件产出路径解析出数据产出文件的分区路径。

根据本发明一种优选的实施方式,所述监控模块用于若检测结果为数据已产出,将数据产出时间写入监控结果信息中;若检测结果为数据未产出,将未产出的数据信息写入报警列表,并根据预设的报警策略进行存储和报警。

根据本发明一种优选的实施方式,所述装置还包括:

第二获取模块,用于通过前端页面获取监控配置信息;

显示模块,用于通过前端页面显示已产出数据信息和未产出数据信息。

根据本发明一种优选的实施方式,所述监控配置信息还包括:监控重要等级;所述目标监控配置信息还包括监控重要等级大于预设等级的监控项和对应的数据产出周期。

为解决上述技术问题,本发明第三方面提供一种电子设备,包括:

处理器;以及

存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行上述的方法。

为解决上述技术问题,本发明第四方面提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,当所述一个或多个程序被处理器执行时,实现上述方法。

本发明间隔预定时间查询监控配置信息,并从所述监控配置信息中提取所述预定时间内的目标监控配置信息;根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径;最后,根据所述数据产出文件的分区路径对数据产出文件进行检测;根据数据产出文件的检测结果对产出数据进行监控。本发明根据监控项的产出时间分批次查询监控配置信息;根据数据产出周期的不同,将单次全量的监控作业负载分散到全天,防止监控任务阻塞,有效避免某段时间的高负载压力。

附图说明

为了使本发明所解决的技术问题、采用的技术手段及取得的技术效果更加清楚,下面将参照附图详细描述本发明的具体实施例。但需声明的是,下面描述的附图仅仅是本发明的示例性实施例的附图,对于本领域的技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他实施例的附图。

图1是本发明实施例一种数据延时产出监控方法的流程示意图;

图2是本发明实施例间隔预定时间查询监控配置信息的示意图;

图3是本发明实施例一种数据延时产出监控装置的结构框架示意图;

图4是根据本发明的一种电子设备的示例性实施例的结构框图;

图5是本发明一种计算机可读介质实施例的示意图。

具体实施方式

现在将参考附图来更加全面地描述本发明的示例性实施例,虽然各示例性实施例能够以多种具体的方式实施,但不应理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例是为了使本发明的内容更加完整,更加便于将发明构思全面地传达给本领域的技术人员。

在符合本发明的技术构思的前提下,在某个特定的实施例中描述的结构、性能、效果或者其他特征可以以任何合适的方式结合到一个或更多其他的实施例中。

在对于具体实施例的介绍过程中,对结构、性能、效果或者其他特征的细节描述是为了使本领域的技术人员对实施例能够充分理解。但是,并不排除本领域技术人员可以在特定情况下,以不含有上述结构、性能、效果或者其他特征的技术方案来实施本发明。

附图中的流程图仅是一种示例性的流程演示,不代表本发明的方案中必须包括流程图中的所有的内容、操作和步骤,也不代表必须按照图中所显示的的顺序执行。例如,流程图中有的操作/步骤可以分解,有的操作/步骤可以合并或部分合并,等等,在不脱离本发明的发明主旨的情况下,流程图中显示的执行顺序可以根据实际情况改变。

附图中的框图一般表示的是功能实体,并不一定必然与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

各附图中相同的附图标记表示相同或类似的元件、组件或部分,因而下文中可能省略了对相同或类似的元件、组件或部分的重复描述。还应理解,虽然本文中可能使用第一、第二、第三等表示编号的定语来描述各种器件、元件、组件或部分,但是这些器件、元件、组件或部分不应受这些定语的限制。也就是说,这些定语仅是用来将一者与另一者区分。例如,第一器件亦可称为第二器件,但不偏离本发明实质的技术方案。此外,术语“和/或”、“及/或”是指包括所列出项目中的任一个或多个的所有组合。

请参阅图1,图1是本发明提供的一种数据延时产出监控方法的流程图。如图1所示,所述方法包括:

s1、间隔预定时间查询监控配置信息;

本发明实施例中,所述监控配置信息用于标识被监控的数据。所述监控配置信息可以包括:监控项、每个监控项对应的数据产出周期。所述监控项可以是数据表、字段等。其中,监控配置信息可以以监控配置表的形式存储在数据库,比如:关系型数据库mysql中。其中,监控配置表包含监控项和每个监控项对应的数据产出周期。

此外,由于每个监控项、或者监控配置表的重要性不同,所要求的保障级别也不同。为了满足个性化监控配置的需求,所述监控配置信息还可以包括:每个监控项对应的监控重要等级,或者每个监控配置表对应的监控重要等级。方便后续根据监控重要等级进行差异化监控。

本发明实施例针对监控项、或者监控配置表产出时间的不同,间隔预定时间从mysql的监控配置表中查询当前预定时间内已产出的监控配置信息。其中,预定时间可以根据监控精度预先配置,比如将预定时间配置为30min。如图2中,数据库中有监控配置表a、b和c,表a中包括监控项1~3,表b中包括监控项4~7,表c中包括监控项8,其中:监控配置表a和监控项6是当前预定时间内产出的监控配置信息,而监控项4、5和表c是下一个预定时间内产出的监控配置信息,则在当前预定时间可以从数据库中查询到监控配置表a和监控项6的监控配置信息,在下一个预定时间内可以从数据库查询到监控项4、5和表c的监控配置信息。从而实现分批次查询监控配置信息的目的。

此外,本发明实施例还支持用户通过前端页面配置所述监控配置信息,因此,在所述间隔预定时间查询监控配置信息之前,所述方法还包括:

通过前端页面获取监控配置信息,并将所述监控配置信息存储在数据库中,方便定时查询。示例性的,可以在前端页面设置配置模块,通过接收用户对所述配置模块的操作获取监控配置信息。比如,通过配置模块显示各个配置项,通过接收用户对配置项的选取获取监控配置信息。所述配置项可以是与监控配置信息对应的参数,比如监控项、数据产出周期,监控重要等级等。

s2、从所述监控配置信息中提取所述预定时间内的目标监控配置信息;

本发明实施例中,可以根据数据延时产出监控的目标从所述监控配置信息中提取所述预定时间内的目标监控配置信息。示例性的,本步骤包括:

s21、获取监控结果信息,并将所述监控配置信息与所述监控结果信息进行连接;

所述监控结果信息用于记录监控结果信息中各个监控项在该预定时间内的数据产出时间。示例性的,所述监控结果信息可以以监控结果表的形式存储在数据库中,则可以通过join操作将监控结果表与监控配置表连接。

s22、根据连接后的监控配置信息中数据产出周期确定各个监控项的预期产出时间;

示例性的,可以先查询各个监控项的最近一次数据产出时间,根据各个监控项最近一次数据产出时间和数据产出周期确定各个监控项的预期产出时间。本发明实施例中,监控项可以是数据表,而数据表中各个数据的产出时间不一致,因此,监控项的预期产出时间可以是一个时间段,当然,对于监控项是字段的情况,监控项的预期产出时间则可以是一个时间点。本发明不做具体限定。

s22、提取预期产出时间在所述预定时间内的监控项和对应的数据产出周期作为目标监控配置信息。

优选的,可以提取预期产出时间在所述预定时间内且监控结果信息中数据产出时间为空的监控项和对应的数据产出周期作为目标监控配置信息。对于预期产出时间是一个时间段的数据项,通过预期产出开始时间和预期产出结束时间来描述该预期产出时间,则提取预期产出结束时间在所述预定时间内且监控结果信息中数据产出时间为空的监控项和对应的数据产出周期作为目标监控配置信息。

为了满足个性化监控配置的需求,所述目标监控配置信息还包括监控重要等级大于预设等级的监控项和对应的数据产出周期。

s3、根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径;

示例性的,本步骤包括:

s31、根据所述目标监控配置信息的数据产出周期从预设分区规则集中匹配目标预设分区规则;

其中,分区规则集由预先配置的多个分区规则组成。在一种示例中,可以根据数据产出周期的不同配置不同的分区规则,比如,数据产出周期可以是:天、周、月,则可以配置数据产出周期为天的分区规则、数据产出周期为周的分区规则、以及数据产出周期为月的分区规则。如果目标监控配置信息中数据项的数据产出周期是周,则数据产出周期为周的分区规则为目标预设分区规则。

s32、根据目标预设分区规则及文件产出路径解析出数据产出文件的分区路径。

其中,文件产出路径可以是_success路径,所述分区路径指存储数据产出文件的_success文件的真实路径。则本步骤根据目标预设分区规则及_success路径解析替换出本次监控要检测的包含数据产出文件的_success文件的真实路径。

s4、根据所述数据产出文件的分区路径对数据产出文件进行检测;

示例性的,可以通过hadoop分布式文件系统hdfs客户端根据数据产出文件的_success文件的真实路径找到包含数据产出文件的_success文件并对该_success文件进行检测。

s5、根据数据产出文件的检测结果对产出数据进行监控。

若检测结果为数据已产出,hdfs客户端返回_success文件信息,根据返回的_success文件信息解析出数据产出时间,并将数据产出时间写入监控结果信息中;所述监控结果信息可以是mysql的监控结果表。

若检测结果为数据未产出,将未产出的数据信息写入报警列表,并根据预设的报警策略进行存储和报警。

其中,根据报警类型的不同,报警列表可以是邮件报警列表、电话报警列表、及时通信工具列表等。可以对每种报警类型预先配置对应的预设报警策略。所述报警策略包括与报警类型对应的报警方式和与报警类型对应的报警列表的存储方式。

以电话报警列表为例,其对应的报警方式可以是:按照电话报警列表从配置信息中获取数据负责人账号,根据数据负责人账号组装查询语句提交给数据库,数据库返回数据负责人的电话号码,拨打数据负责人的电话号码报警。其中,配置信息用于记录各个数据信息的数据负责人账号。

进一步的,所述根据数据产出文件的检测结果对产出数据进行监控之后,所述方法还包括:

通过前端页面显示已产出数据信息和未产出数据信息。

本发明实施例提供的数据延时产出监控方法,具有如下至少一种有益效果:

1、根据监控项的产出时间分批次查询监控配置信息;根据数据产出周期的不同,将单次全量的监控作业负载分散到全天,防止监控任务阻塞,有效避免某段时间的高负载压力。

2、根据监控项的产出时间分批次查询监控配置信息,并划分监控重要级别,满足不同监控项的个性化配置需求。

3、间隔预设时间对数据产出文件检测、报警一次,数据产出异常是可以及时报警,增强了监控的保障性。可以实现在规定的sla内及时报警,并且可以支持任意sla的监控需求。其中,sla指服务级别协议,英文全称为:servicelevelagreement,本发明实施例中sla指不影响下游业务的最终产出时间约定。

4、对不同的数据产出周期配置分区规则,实现了按天、月、年等级别作业的监控策略。

5、支持在前端页面同时显示已产出数据的产出时间和未产出数据的信息,方便用户了解当天数据产出情况。

需要说明的是:上述实施例中的数据延时产出监控方法是主动发起对监控项的数据产出检测,还可以由监控服务端提供接口,监控使用端在脚本的末尾配置调用接口,监控服务端主动将数据产出文件的检测结果发送给监控使用端,使得监控更加实时。

图3是本发明一种数据延时产出监控装置的架构示意图,如图3所示,所述装置包括:

查询模块31,用于间隔预定时间查询已产出的监控配置信息;所述查询监控配置信息包括:监控项和对应的数据产出周期;

提取模块32,用于从所述监控配置信息中提取所述预定时间内的目标监控配置信息;

匹配模块33,用于根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径;

检测模块34,用于根据所述数据产出文件的分区路径对数据产出文件进行检测;

监控模块35,用于根据数据产出文件的检测结果对产出数据进行监控。

示例性的,所述提取模块32包括:

确定模块,用于根据监控配置信息中数据产出周期确定各个监控项的预期产出时间;

子提取模块,用于提取预期产出时间在所述预定时间内监控配置信息作为目标监控配置信息。

进一步的,所述装置还包括:

第一获取模块,用于获取监控结果信息;

连接模块,用于将所述监控配置信息与所述监控结果信息进行连接;

所述子提取模块,具体用于提取预期产出时间在所述预定时间内且监控结果信息中数据产出时间为空的监控项和对应的数据产出周期作为目标监控配置信息。

示例性的,所述匹配模块33包括:

子匹配模块,用于根据所述目标监控配置信息的数据产出周期从预设分区规则集中匹配目标预设分区规则;

解析模块,用于根据目标预设分区规则及文件产出路径解析出数据产出文件的分区路径。

所述监控模块35用于若检测结果为数据已产出,将数据产出时间写入监控结果信息中;若检测结果为数据未产出,将未产出的数据信息写入报警列表,并根据预设的报警策略进行存储和报警。

进一步的,所述装置还包括:

第二获取模块,用于通过前端页面获取监控配置信息;

显示模块,用于通过前端页面显示已产出数据信息和未产出数据信息。

优选的,所述监控配置信息还包括:监控重要等级;所述目标监控配置信息还包括监控重要等级大于预设等级的监控项和对应的数据产出周期。

本领域技术人员可以理解,上述装置实施例中的各模块可以按照描述分布于装置中,也可以进行相应变化,分布于不同于上述实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

下面描述本发明的电子设备实施例,该电子设备可以视为对于上述本发明的方法和装置实施例的实体形式的实施方式。对于本发明电子设备实施例中描述的细节,应视为对于上述方法或装置实施例的补充;对于在本发明电子设备实施例中未披露的细节,可以参照上述方法或装置实施例来实现。

图4是根据本发明的一种电子设备的示例性实施例的结构框图。图4显示的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图4所示,该示例性实施例的电子设备400以通用数据处理设备的形式表现。电子设备400的组件可以包括但不限于:至少一个处理单元410、至少一个存储单元420、连接不同电子设备组件(包括存储单元420和处理单元410)的总线430、显示单元440等。

其中,所述存储单元420存储有计算机可读程序,其可以是源程序或都只读程序的代码。所述程序可以被处理单元410执行,使得所述处理单元410执行本发明各种实施方式的步骤。例如,所述处理单元410可以执行如图1所示的步骤。

所述存储单元420可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)4201和/或高速缓存存储单元4202,还可以进一步包括只读存储单元(rom)4203。所述存储单元420还可以包括具有一组(至少一个)程序模块4205的程序/实用工具4204,这样的程序模块4205包括但不限于:操作电子设备、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线430可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备400也可以与一个或多个外部设备100(例如键盘、显示器、网络设备、蓝牙设备等)通信,使得用户能经由这些外部设备100与该电子设备400交互,和/或使得该电子设备400能与一个或多个其它数据处理设备(例如路由器、调制解调器等等)进行通信。这种通信可以通过输入/输出(i/o)接口450进行,还可以通过网络适配器460与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)进行。网络适配器460可以通过总线430与电子设备400的其它模块通信。应当明白,尽管图4中未示出,电子设备400中可使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid电子设备、磁带驱动器以及数据备份存储电子设备等。

图5是本发明的一个计算机可读介质实施例的示意图。如图5所示,所述计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的电子设备、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。当所述计算机程序被一个或多个数据处理设备执行时,使得该计算机可读介质能够实现本发明的上述方法,即:间隔预定时间查询已产出监控配置信息;所述监控配置信息包括:监控项和对应的数据产出周期;从所述监控配置信息中提取所述预定时间内的目标监控配置信息;根据所述目标监控配置信息的数据产出周期匹配数据产出文件的分区路径;根据所述数据产出文件的分区路径对数据产出文件进行检测;根据数据产出文件的检测结果对产出数据进行监控。

通过以上的实施方式的描述,本领域的技术人员易于理解,本发明描述的示例性实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读的存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台数据处理设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明的上述方法。

所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行电子设备、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语音的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语音包括面向对象的程序设计语音—诸如java、c++等,还包括常规的过程式程序设计语音—诸如“c”语音或类似的程序设计语音。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

综上所述,本发明可以执行计算机程序的方法、装置、电子设备或计算机可读介质来实现。可以在实践中使用微处理器或者数字信号处理器(dsp)等通用数据处理设备来实现本发明的一些或者全部功能。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟装置或者电子设备固有相关,各种通用装置也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1