本发明涉及互联网技术领域,尤其涉及一种云计算环境下高效日志集中化方法及设备。
背景技术:
在云计算环境下,业务服务产生的日志数据由宿主机经网络传输到日志收集分析服务器,用户通过统一的入口到日志服务器上查询。然而,在云计算环境下,一般采用云主机(也称为虚拟机)存储业务服务产生的日志数据,使得宿主机的本地磁盘资源处于空闲状态,造成了宿主机的本地磁盘资源浪费的问题。
技术实现要素:
本申请实施例通过提供一种云计算环境下高效日志集中化方法及设备,旨在解决在云计算环境下采用云主机存储业务服务产生的日志数据,造成了宿主机的本地磁盘资源浪费的技术问题。
本申请实施例提供了一种云计算环境下高效日志集中化方法,所述云计算环境下高效日志集中化方法,包括:
云主机采集日志数据,所述日志数据由搭载在所述云主机上的业务服务产生;
获取所述云主机所在的宿主机中空闲的存储资源;
调用空闲的所述存储资源,以将所述日志数据存储至空闲的所述存储资源对应的存储空间。
在一实施例中,所述云主机采集日志数据的步骤,包括:
采集预设数据类型的所述日志数据。
在一实施例中,所述采集预设数据类型的所述日志数据的步骤,包括:
获取所述日志数据的数据内容;
在检测到所述数据内容中包含有与预设正则表达式的格式匹配的字符串时,采集所述日志数据,其中,在所述数据内容中包含有与预设正则表达式的格式匹配的字符串时,确定所述日志数据的数据类型为所述预设数据类型。
在一实施例中,所述调用空闲的所述存储资源,以将所述日志数据存储至空闲的所述存储资源对应的存储空间的步骤之后,还包括:
获取所述存储空间的占用率;
在所述占用率大于预设占用率时,删除所述存储空间中存储的历史日志数据。
在一实施例中,所述删除所述存储空间中存储的历史日志数据的步骤,包括:
获取所述存储空间中存储的历史日志数据的存储时长;
删除所述存储时长大于或者等于预设存储时长的所述历史日志数据。
在一实施例中,所述调用空闲的所述存储资源,以将所述日志数据存储至空闲的所述存储资源对应的存储空间的步骤之后,还包括:
在接收到日志数据查询指令时,判断所述云主机的缓存中是否存在有与所述日志数据查询指令匹配的所述日志数据;
在所述缓存中存在与所述日志数据查询指令匹配的所述日志数据时,从所述缓存中获取与所述日志数据查询指令匹配的所述日志数据。
在一实施例中,所述在接收到日志数据查询指令时,判断所述云主机的缓存中是否存在有与所述日志数据查询指令匹配的所述日志数据的步骤之后,还包括:
在所述缓存中不存在与所述日志数据查询指令匹配的所述日志数据时,判断所述云主机是否发生过漂移;
在判定所述云主机未发生过漂移,且所述宿主机的存储空间中存在与所述日志数据查询指令匹配的所述日志数据时,从所述宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
在一实施例中,所述在所述缓存中不存在与所述日志数据查询指令匹配的所述日志数据时,则判断所述云主机是否发生漂移的步骤之后,还包括:
在判定所述云主机发生过漂移,且所述宿主机的存储空间中不存在与所述日志数据查询指令匹配的所述日志数据时,获取所述云主机漂移后所述云主机当前所在的宿主机;
从所述云主机当前所在的宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
此外,为实现上述目的,本发明还提供了一种终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的云计算环境下高效日志集中化程序,所述云计算环境下高效日志集中化程序被所述处理器执行时实现上述的云计算环境下高效日志集中化方法的步骤。
本申请实施例中提供的一种云计算环境下高效日志集中化方法及设备的技术方案,至少具有如下技术效果或优点:
由于采用了将云主机采集的日志数据,存储至宿主机中空闲存储资源对应的存储空间的技术方案,解决了在云计算环境下采用云主机存储业务服务产生的日志数据,造成了宿主机的本地磁盘资源浪费的技术问题,实现了宿主机中空闲存储资源的合理利用,避免了宿主机存储资源的浪费。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明云计算环境下高效日志集中化方法第一实施例的流程示意图;
图3为本发明云计算环境下高效日志集中化方法第二实施例的流程示意图;
图4为本发明云计算环境下高效日志集中化方法第三实施例的流程示意图;
图5为宿主机与云主机的关系示意图。
具体实施方式
为了更好的理解上述技术方案,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,图1为本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图1即可为终端设备的硬件运行环境的结构示意图。
如图1所示,该终端设备可以包括:处理器1001,例如cpu,存储器1005,用户接口1003,网络接口1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端设备结构并不构成对终端设备限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及云计算环境下高效日志集中化程序。其中,操作系统是管理和控制终端设备硬件和软件资源的程序,云计算环境下高效日志集中化程序以及其它软件或程序的运行。
在图1所示的终端设备中,用户接口1003主要用于连接终端,与终端进行数据通信;网络接口1004主要用于后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的云计算环境下高效日志集中化程序。
在本实施例中,终端设备包括:存储器1005、处理器1001及存储在所述存储器1005上并可在所述处理器上运行的云计算环境下高效日志集中化程序,其中:
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,执行以下操作:
云主机采集日志数据,所述日志数据由搭载在所述云主机上的业务服务产生;
获取所述云主机所在的宿主机中空闲的存储资源;
调用空闲的所述存储资源,以将所述日志数据存储至空闲的所述存储资源对应的存储空间。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
采集预设数据类型的所述日志数据。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
获取所述日志数据的数据内容;
在检测到所述数据内容中包含有与预设正则表达式的格式匹配的字符串时,采集所述日志数据,其中,在所述数据内容中包含有与预设正则表达式的格式匹配的字符串时,确定所述日志数据的数据类型为所述预设数据类型。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
获取所述存储空间的占用率;
在所述占用率大于预设占用率时,删除所述存储空间中存储的历史日志数据。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
获取所述存储空间中存储的历史日志数据的存储时长;
删除所述存储时长大于或者等于预设存储时长的所述历史日志数据。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
在接收到日志数据查询指令时,判断所述云主机的缓存中是否存在有与所述日志数据查询指令匹配的所述日志数据;
在所述缓存中存在与所述日志数据查询指令匹配的所述日志数据时,从所述缓存中获取与所述日志数据查询指令匹配的所述日志数据。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
在所述缓存中不存在与所述日志数据查询指令匹配的所述日志数据时,判断所述云主机是否发生过漂移;
在判定所述云主机未发生过漂移,且所述宿主机的存储空间中存在与所述日志数据查询指令匹配的所述日志数据时,从所述宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
处理器1001调用存储器1005中存储的云计算环境下高效日志集中化程序时,还执行以下操作:
在判定所述云主机发生过漂移,且所述宿主机的存储空间中不存在与所述日志数据查询指令匹配的所述日志数据时,获取所述云主机漂移后所述云主机当前所在的宿主机;
从所述云主机当前所在的宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
本发明实施例提供了云计算环境下高效日志集中化方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,该云计算环境下高效日志集中化方法应用于对业务服务产生的日志数据的处理。
如图2所示,在本申请的第一实施例中,本申请的云计算环境下高效日志集中化方法,包括以下步骤:
步骤s210:云主机采集日志数据。
在本实施例中,通过云主机采集日志数据之前,需要在宿主机上创建业务所需要的云主机,云主机的数量根据业务的需要设定,其中,云主机实际是一种虚拟机。在宿主机上创建完成云主机之后,在云主机中建立文件系统,以及在虚拟中搭载业务服务。其中,文件系统是自定义的文件系统,其是一种兼容posix文件接口的文件系统,该文件系统可以在linux操作系统上,通过用户态文件系统或内核态文件系统的创建方式进行实现,在云主机中建立文件系统之后,该文件系统具备有数据的“open”、“write”、“read”、“close”等功能,即通过该文件系统可以实现日志数据的打开、写入、读取、关闭等操作;业务服务例如支付服务、交易服务、负载均衡服务,等等。当用户使用业务服务时,业务服务产生日志数据,云主机通过文件系统,来处理产生的这些日志日志,即文件系统采用“write”功能将业务服务产生的日志数据写入自身缓存中,云主机通过预先设置的日志采集程序从文件系统中读取日志数据,从而实现日志数据的采集。
其中,云主机将采集到的日志数据存储到自身的缓存中的过程,需要实时检测自身缓存的占用率,即当检测得到的缓存的占用率大于预设阈值时,删除缓存中存储时长超过预设存储时长的历史日志数据,或者删除缓存中预设数量的历史日志数据。缓存中的历史日志数据是之前已经储存到缓存中的日志数据。
进一步的,为了满足用户的实际需求,本实施例根据用户的实际需求设置了采集日志数据的规则,即通过步骤s210云主机采集日志数据包括采集预设数据类型的日志数据。
其中,在采集预设数据类型的日志数据时,需要获取日志数据的数据内容;在检测到数据内容中包含有与预设正则表达式的格式匹配的字符串时,采集日志数据,其中,在数据内容中包含有与预设正则表达式的格式匹配的字符串时,确定日志数据的数据类型为预设数据类型。具体的,预设正则表达式的格式是一种固定格式的字符串,其与预设数据类型的日志数据中包含的字符串形成了对应,预设数据类型是根据用户的实际需求设定的,例如根据用户的实际需求设定的预设数据类型是交易成功类型、支付失败类型等。业务服务产生日志数据后,提取每条日志数据的数据内容中包含的字符串,并将提取到的每条日志数据对应的字符串与预设正则表达式的格式进行比较,如果两者相同,则确定提取到的日志数据的数据内容中包含有与预设正则表达式的格式匹配的字符串,然后将提取到的日志数据的数据类型确定为预设数据类型,进而采集确定数据类型为预设数据类型的日志数据。例如,预设数据类型是交易成功类型,交易日志数据m对应的字符串是与预设正则表达式的格式匹配的字符串,那么确定交易日志数据m的数据类型是交易成功类型,并采集交易日志数据m。如果两者不相同,则确定提取到的日志数据的数据内容中不包含有与预设正则表达式的格式匹配的字符串,然后将提取到的日志数据进行滤除。
步骤s220:获取所述云主机所在的宿主机中空闲的存储资源。
在本实施例中,云主机所在的宿主机是搭载云主机的物理终端设备,物理终端设备可以是计算机。例如,在物理终端设备a上安装了云主机b,那么物理终端设备a就是云主机b所在的宿主机。具体的,云主机完成日志数据采集之后,获取自身所在的宿主机中空闲的存储资源。其中,存储资源是指宿主机中本地磁盘的存储资源,空闲的存储资源是指宿主机的本地磁盘中未被使用或利用的存储资源。
步骤s230:调用空闲的所述存储资源,以将所述日志数据存储至空闲的所述存储资源对应的存储空间。
云主机除了将采集到的日志数据存储到自身的缓存中之外,还通过调用宿主机中空闲的存储资源,将采集到的日志数据存储至空闲的存储资源对应的存储空间,以使得宿主机对日志数据进行存储,从而实现宿主机空闲存储资源的利用。其中,将采集到的日志数据存储至宿主机空闲的存储资源对应的存储空间可以通过半虚拟化技术(virtio)进行实现,即事先在云主机中创建虚拟dma(directmemoryaccess,直接存储器访问)设备,以及在宿主机中创建捕获写入虚拟dma设备中日志数据的虚拟设备控件,当云主机通过文件系统将日志数据写入到虚拟dma设备中后,宿主机通过事先安装数据分析服务(如elasticsearch类的数据分析工具)获取写入到虚拟dma设备的日志数据,并对获取的日志数据进行分析,并将获取的日志数据存储到宿主机空闲的存储资源对应的存储空间,进而可以根据事先安装在宿主机上的日志查询系统例如kibana类的日志集中查询系统,对存储在宿主机中的日志数据进行查看分析。
本实施例中,本发明为了避免数据分析服务以及云主机通过文件系统采集的日志数据,占用或者专用过多宿主机的存储资源,影响云计算环境的稳定性,在宿主机会将存储空间中日志数据放入事先创建的资源受限的云主机或隔离的命名空间中,也会将安装后的数据分析服务放入资源受限的云主机或隔离的命名空间中。参考图5,图中的外部大框体表示宿主机a,vm1和vm2均是云主机,vm1表示建立了文件系统的云主机,vm2表示事先创建的资源受限的云主机,es表示elasticsearch类的数据分析工具,也可以理解为数据分析服务,ns是namespace的简写表示事先创建的隔离的命名空间;ceph是一个可靠地、自动重均衡、自动恢复的分布式存储系统。例如,事先在宿主机中安装elasticsearch类的数据分析工具后,宿主机将elasticsearch类的数据分析工具放入vm2或隔离的命名空间(ns)中,在vm1通过文件系统采集日志数据之后,将采集的日志数据穿透写到宿主机空闲的存储资源对应的存储空间之后,宿主机将日志数据放入vm2或隔离的命名空间(ns)中,从而避免专用过多的宿主机的存储资源,影响云计算环境的稳定性,同时,通过日志看板可以对日志数据进行查看或查询。
本实施例根据上述技术方案,由于采用了云主机采集日志数据,获取云主机所在的宿主机中空闲的存储资源,调用空闲的存储资源,以将日志数据存储至空闲的存储资源对应的存储空间的技术手段,在云计算环境下,实现了宿主机中空闲存储资源的合理利用,避免了宿主机存储资源的浪费。
如图3所示,在本申请的第二实施例中,本申请的云计算环境下高效日志集中化方法,步骤s230之后,还包括以下步骤:
步骤s240:获取所述存储空间的占用率。
为了避免宿主机存储资源对应的存储空间的严重占用,在本实施例中,维持宿主机存储资源对应的存储空间中存储的日志数据在一定的范围内,即将采集到的日志数据存储至宿主机空闲的存储资源对应的存储空间之后,实时检测宿主机的存储空间的占用率,根据检测得到的存储空间的占用率决策是否对存储空间中存储的历史日志数据进行删除。其中,存储空间中存储的历史日志数据是之前已经储存到宿主机存储资源对应的存储空间的日志数据。
步骤s241:在所述占用率大于预设占用率时,删除所述存储空间中存储的历史日志数据。
在本实施例中,事先设置了预设占用率,当宿主机的存储空间的占用率大于预设占用率时,删除存储空间中存储的历史日志数据,以避免存储空间的过度占用。例如,设置的预设占用率为80%,即当检测得到的占用率大于80%时,则需要删除存储空间中存储的历史日志数据。其中,删除存储空间中存储的历史日志数据并非对存储空间中的所有历史日志数据进行删除,而是进行部分删除。进一步的,删除存储空间中存储的历史日志数据具体包括获取存储空间中存储的历史日志数据的存储时长;删除存储时长大于或者等于预设存储时长的历史日志数据。其中,当检测得到的占用率大于预设占用率时,先获取存储空间中每个历史日志数据的存储时长,将每个历史日志数据的存储时长与预设存储时长进行比较,然后删除存储时长大于或者等于预设存储时长的历史日志数据。例如,预设存储时长为7天,当检测得到的占用率大于预设占用率时,则删除存储空间中存储时长大于或者等于7天的历史日志数据。
本实施例根据上述技术方案,避免了宿主机中存储资源对应的存储空间的过度占用。
如图4所示,在本申请的第三实施例中,本申请的云计算环境下高效日志集中化方法,步骤s230之后,还包括以下步骤:
步骤s250:接收到日志数据查询指令。
步骤s251:判断所述云主机的缓存中是否存在有与所述日志数据查询指令匹配的所述日志数据,其中,若是,执行步骤s252,若否,执行步骤s253。
步骤s252:从所述缓存中获取与所述日志数据查询指令匹配的所述日志数据。
步骤s253:判断所述云主机是否发生过漂移,其中,若是,执行步骤s255,若否,执行步骤s254。
步骤s254:在所述宿主机的存储空间中存在与所述日志数据查询指令匹配的所述日志数据时,从所述宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
步骤s255:在所述宿主机的存储空间中不存在与所述日志数据查询指令匹配的所述日志数据时,获取所述云主机漂移后所述云主机当前所在的宿主机。
步骤s256:从所述云主机当前所在的宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
进一步的,本实施例对步骤s250-步骤s256进行说明,具体如下:
一方面,在接收到日志数据查询指令时,判断所述云主机的缓存中是否存在有与所述日志数据查询指令匹配的所述日志数据;在所述缓存中存在与所述日志数据查询指令匹配的所述日志数据时,从所述缓存中获取与所述日志数据查询指令匹配的所述日志数据。
在本实施例中,用户通过文件系统的“read”功能可进行日志数据查询,具体可以从云主机的缓存中查询日志数据、从云主机未发生漂移当前所在宿主机的存储空间中查询日志数据、从云主机漂移后当前所在的宿主机的存储空间中查询日志数据。其中,云主机未发生漂移当前所在宿主机是指云主机创建完成后所在的宿主机,云主机漂移是指搭载云主机的原始的宿主机发生故障或负荷较重时,将该云主机移转到另一台宿主机上,以维持云主机的正常运行,云主机被移转后所在的宿主机即为云主机漂移后当前所在的宿主机。其中,所述的云主机的缓存可以理解为文件系统的缓存。
具体的,从云主机的缓存中查询日志数据、从云主机未发生漂移当前所在宿主机的存储空间中查询日志数据以及从云主机漂移后当前所在的宿主机的存储空间中查询日志数据的优先级依次减小。在接收到日志数据查询指令时,根据日志数据查询指令先判断云主机的缓存中否存在有与该日志数据查询指令匹配的日志数据,如果有,则直接从云主机的缓存中获取与日志数据查询指令匹配的日志数据,并进行显示。
另一方面,在所述缓存中不存在与所述日志数据查询指令匹配的所述日志数据时,判断所述云主机是否发生过漂移;在判定所述云主机未发生过漂移,且所述宿主机的存储空间中存在与所述日志数据查询指令匹配的所述日志数据时,从所述宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
在本实施例中,根据日志数据查询指令先判断云主机的缓存中不存在与该日志数据查询指令匹配的日志数据,则需要判断该云主机是否发生过漂移。其中,可以通过云主机创建完成后所在的宿主机的地址和云主机当前所在宿主机的地址,判断该云主机是否发生过漂移。例如,云主机创建完成后所在的宿主机是宿主机1,云主机当前所在宿主机的是宿主机2,如果宿主机1和宿主机2的地址相同,则判定该云主机未发生过漂移,宿主机1和宿主机2是同一宿主机,如果宿主机1和宿主机2的地址不相同,则判定该云主机已经发生了漂移,且漂移到了宿主机2上,即宿主机2即为该云主机当前所在的宿主机。
在本实施例中,在判定云主机未发生过漂移时,还需要判断宿主机的存储空间中是否存在有与日志数据查询指令匹配的日志数据时,进一步的,如果有,则从宿主机的存储空间中获取与日志数据查询指令匹配的日志数据,并进行显示。如果没有,则向用户发出提醒信息。
又一方面,在判定所述云主机发生过漂移,且所述宿主机的存储空间中不存在与所述日志数据查询指令匹配的所述日志数据时,获取所述云主机漂移后所述云主机当前所在的宿主机;从所述云主机当前所在的宿主机的存储空间中获取与所述日志数据查询指令匹配的所述日志数据。
在本实施例中,在判定云主机已经发生漂移,且判定云主机创建完成后所在的宿主机的存储空间中不存在与日志数据查询指令匹配的日志数据时,从云主机漂移后该云主机当前所在的宿主机的存储空间中获取与日志数据查询指令匹配的所述日志数据。具体的,判断云主机漂移后该云主机当前所在的宿主机的存储空间中是否包含有与日志数据查询指令匹配的日志数据,如果有,则从云主机当前所在的宿主机的存储空间中获取与日志数据查询指令匹配的日志数据,并进行显示。如果没有,则向用户发出提醒信息。
本实施例根据上述技术方案,有利于提高日志数据的查询效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。