CN110874263B - docker容器实例监控方法及装置 - Google Patents
docker容器实例监控方法及装置 Download PDFInfo
- Publication number
- CN110874263B CN110874263B CN201911078303.4A CN201911078303A CN110874263B CN 110874263 B CN110874263 B CN 110874263B CN 201911078303 A CN201911078303 A CN 201911078303A CN 110874263 B CN110874263 B CN 110874263B
- Authority
- CN
- China
- Prior art keywords
- container
- java
- docker
- instance
- starting
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供一种docker容器实例监控方法及装置,方法包括:在docker容器启动时,获取docker‑containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;启动命令行参数,采用javaagent方式对容器内Java实例进行监控。实现在不改变镜像、不调整docker启动参数的情况下,在容器启动阶段把宿主机上的agent类库注入到容器内Java进程中,运维人员仅需重启容器,无需做额外的配置工作,解放了运维人员的生产力。
Description
技术领域
本发明涉及计算机处理技术领域,尤其涉及一种docker容器实例监控方法及装置。
背景技术
目前对于Java实例的监控多数都会选择对业务代码无侵入的javaagent方式来实现。运维人员仅需要在Java实例启动命令行中添加javaagent参数指向自己的agent类库即可。在docker容器化盛行的当下,这种监控方式要求在容器启动时把宿主机的agent类库映射到容器环境中;另外还要求在启动命令行中内置好javaagent参数。
但在容器规模越来越多样化的情况下,这种监控方式的要求,让运维人员面临巨大的挑战。在上百个系统的运维规模中,业务系统发布一次镜像,就修改一次镜像增加agent类库的方式越来越不现实;在每次启动容器时指定命令行启动参数,同时保证运行容器的宿主机上存在监控依赖的agent类库,也越来越不现实。
发明内容
针对现有技术存在的问题,本发明实施例提供一种docker容器实例监控方法及装置。
本发明实施例提供一种docker容器实例监控方法,包括:
在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;
在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;
启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
可选地,所述根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部,包括:
确定所述命名空间信息和所述系统调用事件满足预设映射条件后,使宿主机的agent类库映射到容器内部。
可选地,所述预设映射条件包括:
命名空间信息发生变化;
docker-containerd子进程执行过pivot_root系统调用;
docker-containerd子进程首次执行过execve系统调用。
可选地,所述使javaagent参数置于启动命令行参数中,包括:
在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;
在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;
使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中。
第二方面,本发明实施例提供一种docker容器实例监控装置,包括:
映射模块,用于在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;
放置模块,用于在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;
监控模块,用于启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
可选地,所述映射模块具体用于:
确定所述命名空间信息和所述系统调用事件满足预设映射条件后,使宿主机的agent类库映射到容器内部。
可选地,所述预设映射条件包括:
命名空间信息发生变化;
docker-containerd子进程执行过pivot_root系统调用;
docker-containerd子进程首次执行过execve系统调用。
可选地,所述放置模块具体用于:
在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;
在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;
使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中。
第三方面,本发明实施例一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述docker容器实例监控方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述docker容器实例监控方法的步骤。
本发明实施例提供的一种docker容器实例监控方法及装置,在docker容器启动时,通过命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部,然后在容器内Java实例启动时,使javaagent参数置于启动命令行参数中,从而启动命令行参数采用javaagent方式对容器内Java实例进行监控,实现在不改变镜像、不调整docker启动参数的情况下,在容器启动阶段把宿主机上的agent类库注入到容器内Java进程中,运维人员仅需重启容器,无需做额外的配置工作,解放了运维人员的生产力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明docker容器实例监控方法实施例流程图;
图2为本发明docker容器实例监控方法另一实施例流程图;
图3为本发明docker容器实例监控装置实施例结构图;
图4为本发明电子设备实施例结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前对于Java实例的监控多数都会选择对业务代码无侵入的javaagent方式来实现。运维人员仅需要在Java实例启动命令行中添加javaagent参数指向自己的agent类库即可。在docker容器化盛行的当下,这种监控方式要求在容器启动时把宿主机的agent类库映射到容器环境中;另外还要求在启动命令行中内置好javaagent参数。
但在容器规模越来越多样化的情况下,这种监控方式的要求,让运维人员面临巨大的挑战。在上百个系统的运维规模中,业务系统发布一次镜像,就修改一次镜像增加agent类库的方式越来越不现实;在每次启动容器时指定命令行启动参数,同时保证运行容器的宿主机上存在监控依赖的agent类库,也越来越不现实。
为此,图1示出了本发明一实施例提供的一种docker容器实例监控方法的流程示意图,从图1中可以看出,该方法包括:
S11、在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;
S12、在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;
S13、启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
针对步骤S11-步骤S13,需要说明的是,在本发明实施例中,在linux平台上,docker容器的实现实际依赖于linux的命名空间机制,启动一个新的容器是通过创建一个新的命名空间进程来实现。容器进程在新的命名空间下,通过pivot_root系统调用,取得独立于宿主机的文件系统;再通过execve系统调用,执行容器的启动命令,让容器进程在进程号不变的情况下完全替换为容器启动程序。
对此,在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部。即确定使宿主机的agent类库映射到容器内部的执行时机。依据执行时机实现agent类库映射到容器内部,能够避免业务系统发布一次镜像,就修改一次镜像增加agent类库的情况出现。
agent类库映射到容器内部之后,在容器内Java实例启动时,使javaagent参数置于启动命令行参数中。以使容器内Java实例具有采用javaagent方式进行监控的条件,此时启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
本发明实施例提供的一种docker容器实例监控方法,在docker容器启动时,通过命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部,然后在容器内Java实例启动时,使javaagent参数置于启动命令行参数中,从而启动命令行参数采用javaagent方式对容器内Java实例进行监控,实现在不改变镜像、不调整docker启动参数的情况下,在容器启动阶段把宿主机上的agent类库注入到容器内Java进程中,运维人员仅需重启容器,无需做额外的配置工作,解放了运维人员的生产力。
在上述实施例方法的进一步实施例中,在确定命名空间信息和系统调用事件满足预设映射条件后,使宿主机的agent类库映射到容器内部。
所述预设映射条件包括:
命名空间信息发生变化;
docker-containerd子进程执行过pivot_root系统调用;
docker-containerd子进程首次执行过execve系统调用。
在本实施例中,通过判断命名空间信息和系统调用事件是否满足预设映射条件,进而确定使宿主机的agent类库映射到容器内部的执行时机,使agent类库注入到容器内Java进程中。
在linux操作系统上可以通过ptrace函数监听docker服务所有子进程中的系统调用,在子进程命名空间已经改变且拦截到execve系统调用时,ptrace程序会暂停docker服务,此时执行docker的任何命令都会处于阻塞状态,这里通过一种只依赖linux底层命令nsenter--target pid命令把宿主机上agent类库目录映射到容器内部,之后再恢复docker服务。
图2示出了本发明一实施例提供的一种docker容器实例监控方法的流程示意图,从图2中可以看出,该方法包括:
S21、在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;
S22、在容器内Java实例启动时,在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中;
S23、启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
针对步骤S22,需要说明的是,在本发明实施例中,linux平台提供了一种在程序运行前优先加载自定义动态连接库的方式,在容器内部挂载宿主机agent类库后,设置LD_PRELOAD环境变量为agent类库中由底层c语言实现的preload类库,在所有进程启动之前优先执行preload类库中的函数。由于JVM的入口函数JNI_CreateJavaVM是通过dlsym函数动态从JVM类库中获取到的,直接覆盖JNI_CreateJavaVM函数,并不能优先加载自定义函数,这里需要preload类库覆盖dlsym函数,在其内部转发JNI_CreateJavaVM函数到自定义函数。执行覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息,根据JVM版本信息和JVM启动命令行信息和配置文件进行匹配,如果匹配成功,则把javaagent参数追加到启动命令行参数中;否则,保持启动命令行参数不变。
针对步骤S21和步骤S23,这些步骤与上述步骤S11和步骤S13在原理上相同,在此不再赘述。
本发明实施例提供的一种docker容器实例监控方法,在docker容器启动时,通过命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部,然后在容器内Java实例启动时,在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中,从而启动命令行参数采用javaagent方式对容器内Java实例进行监控,实现在不改变镜像、不调整docker启动参数的情况下,在容器启动阶段把宿主机上的agent类库注入到容器内Java进程中,运维人员仅需重启容器,无需做额外的配置工作,解放了运维人员的生产力。
图3示出了本发明一实施例提供的一种docker容器实例监控装置的结构示意图,从图3中可以看出,该装置包括映射模块31、放置模块32和监控模块33,其中:
映射模块31,用于在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;
放置模块32,用于在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;
监控模块33,用于启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
在上述实施例装置的进一步实施例中,所述映射模块具体用于:
确定所述命名空间信息和所述系统调用事件满足预设映射条件后,使宿主机的agent类库映射到容器内部。
所述预设映射条件包括:
命名空间信息发生变化;
docker-containerd子进程执行过pivot_root系统调用;
docker-containerd子进程首次执行过execve系统调用。
在上述实施例装置的进一步实施例中,所述放置模块具体用于:
在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;
在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;
使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中。
由于本发明实施例所述装置与上述实施例所述方法的原理相同,对于更加详细的解释内容在此不再赘述。
需要说明的是,本发明实施例中可以通过硬件处理器(hardwareprocessor)来实现相关功能模块。
本发明实施例提供的一种docker容器实例监控装置,在docker容器启动时,通过命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部,然后在容器内Java实例启动时,在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中,从而启动命令行参数采用javaagent方式对容器内Java实例进行监控,实现在不改变镜像、不调整docker启动参数的情况下,在容器启动阶段把宿主机上的agent类库注入到容器内Java进程中,运维人员仅需重启容器,无需做额外的配置工作,解放了运维人员的生产力。
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)41、通信接口(Communications Interface)42、存储器(memory)43和通信总线44,其中,处理器41,通信接口42,存储器43通过通信总线44完成相互间的通信。处理器41可以调用存储器43中的逻辑指令,以执行如下方法:在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
此外,上述的存储器43中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,根据所述命名空间信息和系统调用事件确定宿主机的agent类库映射到容器内部;在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种docker容器实例监控方法,其特征在于,包括:
在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,确定所述命名空间信息和所述系统调用事件满足预设映射条件后,使宿主机的agent类库映射到容器内部;
在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;
启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
2.根据权利要求1所述的docker容器实例监控方法,其特征在于,所述预设映射条件包括:
命名空间信息发生变化;
docker-containerd子进程执行过pivot_root系统调用;
docker-containerd子进程首次执行过execve系统调用。
3.根据权利要求1所述的docker容器实例监控方法,其特征在于,所述使javaagent参数置于启动命令行参数中,包括:
在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;
在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;
使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中。
4.一种docker容器实例监控装置,其特征在于,包括:
映射模块,用于在docker容器启动时,获取docker-containerd子进程的命名空间信息和系统调用事件,确定所述命名空间信息和所述系统调用事件满足预设映射条件后,使宿主机的agent类库映射到容器内部;
放置模块,用于在容器内Java实例启动时,使javaagent参数置于启动命令行参数中;
监控模块,用于启动命令行参数,采用javaagent方式对容器内Java实例进行监控。
5.根据权利要求4所述的docker容器实例监控装置,其特征在于,所述预设映射条件包括:
命名空间信息发生变化;
docker-containerd子进程执行过pivot_root系统调用;
docker-containerd子进程首次执行过execve系统调用。
6.根据权利要求4所述的docker容器实例监控装置,其特征在于,所述放置模块具体用于:
在agent类库中通过preload机制,覆盖内核的dlsym函数及Java实例的启动函数;
在覆盖Java实例启动的函数中获取Java实例的版本信息和启动命令信息;
使所述版本信息和所述启动命令信息与配置文件进行匹配,确定匹配成功后,使javaagent参数置于启动命令行参数中。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述docker容器实例监控方法的步骤。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至3任一项权利要求所述docker容器实例监控方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911078303.4A CN110874263B (zh) | 2019-11-06 | 2019-11-06 | docker容器实例监控方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911078303.4A CN110874263B (zh) | 2019-11-06 | 2019-11-06 | docker容器实例监控方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110874263A CN110874263A (zh) | 2020-03-10 |
CN110874263B true CN110874263B (zh) | 2022-07-29 |
Family
ID=69717248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911078303.4A Active CN110874263B (zh) | 2019-11-06 | 2019-11-06 | docker容器实例监控方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110874263B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111813646B (zh) * | 2020-07-16 | 2023-07-18 | 华北电力大学(保定) | docker容器环境下注入应用探针的方法和装置 |
CN113032129A (zh) * | 2021-04-22 | 2021-06-25 | 北京小佑科技有限公司 | 一种容器阻断用户指定进程生成方法 |
CN113849819B (zh) * | 2021-09-24 | 2023-07-14 | 苏州浪潮智能科技有限公司 | 命令行指令的处理方法、装置、计算机设备和存储介质 |
CN114721784B (zh) * | 2022-05-19 | 2022-08-30 | 龙芯中科技术股份有限公司 | 应用运行方法、装置、电子设备及可读介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700026A (zh) * | 2013-12-05 | 2015-06-10 | 迈克菲股份有限公司 | 基于java字节码插桩和java方法挂钩检测java沙箱逃逸攻击 |
CN108600035A (zh) * | 2018-07-21 | 2018-09-28 | 杭州安恒信息技术股份有限公司 | 一种非侵入式web应用监控与日志查询方法 |
CN109976822A (zh) * | 2017-12-25 | 2019-07-05 | 中国电信股份有限公司 | 分布式应用的配置方法、装置以及分布式系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8813051B2 (en) * | 2011-04-14 | 2014-08-19 | International Business Machines Corporation | Running multiple copies of native code in a Java Virtual Machine |
-
2019
- 2019-11-06 CN CN201911078303.4A patent/CN110874263B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700026A (zh) * | 2013-12-05 | 2015-06-10 | 迈克菲股份有限公司 | 基于java字节码插桩和java方法挂钩检测java沙箱逃逸攻击 |
CN109976822A (zh) * | 2017-12-25 | 2019-07-05 | 中国电信股份有限公司 | 分布式应用的配置方法、装置以及分布式系统 |
CN108600035A (zh) * | 2018-07-21 | 2018-09-28 | 杭州安恒信息技术股份有限公司 | 一种非侵入式web应用监控与日志查询方法 |
Non-Patent Citations (2)
Title |
---|
浅析Docker的资源隔离和限制;杨 浚;《科技尚品》;145、166;20161103;全文 * |
移动应用服务性能监控;罗璐云;《中国优秀博硕士论文全文数据库(硕士) 信息科技辑》;20170515;第3.5.2节,总结与展望 * |
Also Published As
Publication number | Publication date |
---|---|
CN110874263A (zh) | 2020-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110874263B (zh) | docker容器实例监控方法及装置 | |
CN107766101B (zh) | App启动事件的处理方法、装置和设备 | |
CN105302711B (zh) | 一种应用修复方法、装置及终端 | |
CN104765624B (zh) | 虚拟机应用程序的更新处理方法和装置 | |
CN108563472B (zh) | 基于多开应用的服务插件加载方法及装置 | |
CN110599305A (zh) | 业务处理方法、装置及存储介质 | |
CN112083971A (zh) | 组件处理方法、设备及存储介质 | |
CN109408256B (zh) | 应用调用方法和装置 | |
CN106293790B (zh) | 基于Firefox操作系统的应用程序升级方法和装置 | |
CN108664343B (zh) | 一种微服务的有状态调用方法及装置 | |
CN104573496B (zh) | 一种禁止启动项启动的方法和装置 | |
CN115455414A (zh) | 一种安全检测方法和装置 | |
CN107103099B (zh) | 浏览器主页返回方法及装置 | |
CN114610446A (zh) | 一种自动注入探针的方法、装置及系统 | |
CN112181487A (zh) | 软件兼容性处理方法、装置、电子设备及存储介质 | |
CN110874214A (zh) | 一种功能调用方法、装置、电子设备和存储介质 | |
CN110806890A (zh) | 软件更新方法以及相关装置 | |
CN112416390B (zh) | 更新npm包的方法、装置、电子设备及可读存储介质 | |
US11593165B2 (en) | Resource-usage notification framework in a distributed computing environment | |
CN116501339B (zh) | 应用部署方法、装置、电子设备及计算机可读存储介质 | |
CN117290857B (zh) | 基于eBPF实现云原生安全的系统、方法、设备及介质 | |
CN116541104B (zh) | 程序管理方法、控制装置、平台、设备以及存储介质 | |
CN108345526B (zh) | 钩子处理方法及装置 | |
US20230401047A1 (en) | Graphical user interface for reducing vulnerabilities associated with legacy software | |
CN112395149B (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 |