CN111290906B - 一种基于感知机制的Java应用监控方法和系统 - Google Patents

一种基于感知机制的Java应用监控方法和系统 Download PDF

Info

Publication number
CN111290906B
CN111290906B CN202010027184.6A CN202010027184A CN111290906B CN 111290906 B CN111290906 B CN 111290906B CN 202010027184 A CN202010027184 A CN 202010027184A CN 111290906 B CN111290906 B CN 111290906B
Authority
CN
China
Prior art keywords
java application
script
perception
target
java
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
Application number
CN202010027184.6A
Other languages
English (en)
Other versions
CN111290906A (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.)
Anhui Keda Guochuang Software Technology Co ltd
Original Assignee
Anhui Keda Guochuang Software Technology Co 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 Anhui Keda Guochuang Software Technology Co ltd filed Critical Anhui Keda Guochuang Software Technology Co ltd
Priority to CN202010027184.6A priority Critical patent/CN111290906B/zh
Publication of CN111290906A publication Critical patent/CN111290906A/zh
Application granted granted Critical
Publication of CN111290906B publication Critical patent/CN111290906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种基于感知机制的Java应用监控方法和系统。录入目标容器的基础信息;分别录入感知Docker容器的感知关键字以及Java应用的感知关键字;基于Docker容器感知关键字,生成Docker容器感知脚本;基于Java应用感知关键字,生成Java应用感知脚本;基于Java应用感知脚本获取的Java应用进程ID,设置该进程参数,生成Java应用信息采集脚本;将生成的Docker容器感知脚本和Java应用感知及其信息采集脚本,发送至目标节点并执行,进行Java应用的信息监控。本发明能够同时对Linux容器和Docker容器中的Java应用进行感知并监控。

Description

一种基于感知机制的Java应用监控方法和系统
技术领域
本发明属于计算机软件监控技术领域,具体涉及一种基于感知机制的Java应用监控方法和系统。
背景技术
在计算机程序运行Java程序过程中,为了有效验证配置的JVM调优参数,需要时刻进行Java程序的运行情况的监视,并通过监控线程池的线程运行个数以及监视当前运行的进程是否出现异常情况,能够及时的针对性解决异常问题,保障程序的有效执行。
现阶段的Java应用服务监控方式主要分为下述两种,一是通过在服务器(如Linux)上安装客户端采集Java应用信息,另一种为在Java应用的代码中添加信息采集功能的代码信息;采用第一种方法,仅能够采集现有的Java应用信息,无法对打包成镜像运行在Docker中的Java应用进行监控;采用第二种方法,虽然可以进行后续的Java应用信息采集,但是其并不支持对既有的已经部署的Java应用(无论是部署在Linux上还是Docker上)进行实施处理。
因此,如何实现同时监控Linux服务器和Docker容器中的Java应用成为当前亟需解决的问题。
发明内容
为解决上述现有技术的中的不足,本发明克服现有不足,提供了一种基于感知机制的Java应用监控方法和系统,能够同时对Linux容器和Docker容器中的Java应用进行感知并监控。
本发明公开了一种基于感知机制的Java应用监控方法,包括:
a.录入目标容器的基础信息;
b.判断目标容器的连接属性,若为Docker宿主机集群,跳转至c;
c.分别录入感知Docker容器的感知关键字以及Java应用的感知关键字;
d.基于Docker容器感知关键字,设置应用参数;通过基于Docker指令的脚本模板生成Docker容器感知脚本;
e.基于Java应用感知关键字,设置应用参数;通过基于Docker环境的进程指令的脚本模板生成Java应用感知脚本;
f.基于Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
g.将生成的Docker容器感知脚本和Java应用感知及其信息采集脚本,发送至目标节点并执行,进行Java应用的信息监控;所述Java应用的信息监控步骤包括如下:
g1.判断目标容器的连接属性,若为Docker宿主机集群,执行Docker容器感知脚本,在Docker宿主机集群中查找目标Docker容器ID;
g2.获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用感知脚本的Docker容器导入和执行,获取目标Java应用的进程ID;
g3.获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用信息采集脚本的Docker容器导入和执行,基于目标Java应用的进程ID,执行Java应用信息采集脚本,获取Java应用信息。
作为上述方案的进一步优化,还包括如下:
h.判断目标容器的连接属性,若为Linux服务器,跳转至i;
i.基于Linux服务器,进行Java应用的感知关键字的录入;
j.基于Java应用的感知关键字,设置应用参数;通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;
k.基于Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
l.通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作,进行Java应用的信息监控。
作为上述方案的进一步优化,所述Java应用的信息监控步骤包括如下:
l1.基于Linux服务器的Java应用,执行Java应用感知脚本,查找目标Java应用的进程ID;
l2.获取到目标Java应用的进程ID,设置该进程参数,执行Java应用信息采集脚本,获取Java应用信息。
作为上述方案的进一步优化,Docker容器和Linux服务器的Java应用信息采集脚本在获取Java应用信息后,传输采集信息至数据库,进行其他应用或页面调用。
作为上述方案的进一步优化,Docker容器和Linux服务器的Java应用信息采集脚本基于SSH协议与SSH远程脚本执行库进行传输和运行。
本发明还公开了一种基于感知机制的Java应用监控系统,包括如下模块:
判断模块,所述模块用于进行Docker容器或Linux服务器的属性判断;
第一感知脚本生成模块,所述第一感知脚本生成模块用于Docker容器感知脚本、Java应用感知脚本以及Java应用信息采集脚本的生成;
第二感知脚本生成模块,所述第二感知脚本生成模块用于Linux服务器的Java应用感知脚本以及Java应用信息采集脚本的生成;
数据存储模块,用于在获取Java应用信息后,传输采集Java应用信息进行数据的存储;所述第一感知脚本生成模块包括如下:
第一录入单元,用于进行节点连接信息以及容器类型的信息录入,以及录入感知Docker容器的感知关键字以及Java应用的感知关键字;
第一脚本生成单元,用于基于Docker容器感知关键字,设置应用参数;通过基于Docker指令的脚本模板生成Docker容器感知脚本;
第二脚本生成单元,用于基于Docker容器的Java应用感知关键字,设置应用参数;通过基于Docker环境的进程指令的脚本模板生成Java应用感知脚本;
第三脚本生成单元,用于基于Docker容器的Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
第一获取单元,用于执行Docker容器感知脚本后,在Docker宿主机集群中查找目标Docker容器ID;
第二获取单元,用于获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用感知脚本的Docker容器导入和执行,获取目标Java应用的进程ID;
第三获取单元,用于获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用信息采集脚本的Docker容器导入和执行,基于目标Java应用的进程ID,执行Java应用信息采集脚本,获取Java应用信息;
第一传输单元,用于通过分别生成的可供Docker容器和Java应用感知的脚本,发送至目标节点进行脚本运行操作;所述第二感知脚本生成模块包括如下:
第二录入单元,用于基于Linux服务器,进行Java应用的感知关键字的录入;
第四脚本生成单元,用于基于Linux服务器的Java应用的感知关键字,设置应用参数;通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;
第五脚本生成单元,用于基于Linux服务器的Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
第四获取单元,用于基于Linux服务器的Java应用,执行Java应用感知脚本,查找目标Java应用的进程ID;
第五获取单元,用于在获取到目标Java应用的进程ID后,设置该进程参数,执行Java应用信息采集脚本,获取Java应用信息;
第二传输单元,用于通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作。
本发明采用上述的技术方案,与现有技术相比,一种基于感知机制的Java应用监控方法和系统,具有以下技术效果:
1.本发明基于Docker容器,录入感知Docker容器的感知关键字以及Java应用的感知关键字,并通过基于Docker指令的脚本模板生成Docker容器感知脚本;基于Java应用感知关键字,设置应用参数,生成Java应用感知脚本;基于Java应用感知脚本获取Java应用进程ID,生成Java应用信息采集脚本;通过分别生成的Docker容器感知脚本和Java应用感知及其信息采集脚本,发送至目标节点进行脚本运行操作,进行Docker容器中Java应用的信息监控,基于本发明不仅可以采集现有的Java应用信息,同时完成对打包成镜像运行在Docker中的Java应用进行监控。
2.本发明基于Linux服务器,进行Java应用的感知关键字的录入,并通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;基于Java应用感知脚本获取Java应用进程ID,通过Java操作指令进行脚本模板导入,生成Java应用信息采集脚本;通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作,进行Linux服务器中Java应用的信息监控,基于本发明不仅支持后续的Java应用信息采集,且支持对既有的已经部署的Java应用进行实施处理。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明的Docker容器目标应用感知信息录入的流程示意图;
图2为本发明的Docker容器目标感知脚本生成及执行的流程示意图;
图3为本发明的Linux服务器目标应用感知信息录入的流程示意图;
图4为本发明的Linux服务器目标感知脚本生成及执行的流程示意图;
图5为本发明的另一幅流程示意图;
图6为本发明的结构框图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1-6所示,本实施例中,Java应用监控方法基于Java应用监控设备来实现,该Java应用监控设备可以是个人电脑、平板电脑或其他具备存储和计算的服务器设备,此处优选为Linux服务器。
现阶段的Java应用服务监控方式主要分为下述两种,一是通过在服务器(如Linux)上安装客户端采集Java应用信息,另一种为在Java应用的代码中添加信息采集功能的代码信息;采用第一种方法,仅能够采集现有的Java应用信息,无法对打包成镜像运行在Docker中的Java应用进行监控;采用第二种方法,虽然可以进行后续的Java应用信息采集,但是其并不支持对既有的已经部署的Java应用(无论是部署在Linux上还是Docker上)进行实施处理。
若通过对既有的Java应用进行改造,加入统一的信息采集功能的代码信息;或对部署在Docker上的Java应用的Docker镜像进行改造,先制作统一已安装JVM监控客户端的基础镜像,再基于该基础镜像改造所有Docker上的Java应用Docker镜像,最后Linux上的Java应用也在其Linux服务器上安装该JVM监控客户端,虽然可在功能上实现,但是由于工作量大,并不现实。
通过上述现有的各个技术不完善的情况分析,本发明实施例公开一种基于感知机制的Java应用监控方法,如图1-图4所示,以下详细介绍基于感知机制的Java应用监控方法的具体步骤:
a.录入目标容器的基础信息;
具体的,上述基础信息包括目标容器所在节点(通常为某个Linux服务器)的连接信息(服务器IP地址、SSH访问端口,访问用户名与密码等信息)以及容器类型(Java应用直接部署在Linux节点上,或者部署在该节点的Docker虚拟容器中);
b.判断目标容器的连接属性,若为Docker宿主机集群,跳转至c;
c.分别录入感知Docker容器的感知关键字以及Java应用的感知关键字;
本实施例中,基于感知Docker容器的感知关键字的录入,便于在Docker宿主机集群中进行目标Docker容器的快速定位,增强目标感知的监控效率;
d.基于Docker容器感知关键字,设置应用参数;通过基于docker指令的脚本模板生成Docker容器感知脚本;
本实施例中,通过把Docker容器感知关键字作为参数,导入使用了Docker的ps指令的脚本模板,生成Docker容器感知脚本;
具体的,Docker容器感知脚本标准模板如下所示:
e.基于Java应用感知关键字,设置应用参数,并通过基于Docker环境的进程指令的脚本模板生成Java应用感知脚本;
本实施例中,把Java应用的感知关键字作为参数,导入利用了Docker镜像(支持各种具备Java运行时环境的基础jdk镜像)提供的进程指令的脚本模板,生成Java应用感知脚本;
f.基于Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
本实施例中,将Java应用感知脚本感知到的Java应用的进程ID作为参数,利用Java提供的jstat与jstack命令,带入脚本模板,生成Java应用的JVM信息采集脚本;
g.通过分别生成的Docker容器感知脚本和Java应用感知及其信息采集脚本,发送至目标节点进行脚本运行操作,进行Java应用的信息监控;
具体的,Java应用的信息监控步骤具体如下:
g1.判断目标容器的连接属性,若为Docker宿主机集群,执行Docker容器感知脚本,在Docker宿主机集群中查找目标Docker容器ID;
g2.获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用感知脚本的Docker容器导入和执行,获取目标Java应用的进程ID;
本实施例中,在获取到Docker容器ID之后,利用Docker的cp与exec命令,将Java应用感知脚本拷贝到Docker容器内部执行,查找目标Java应用的进程ID;
g3.获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用信息采集脚本的Docker容器导入和执行,基于目标Java应用的进程ID,执行Java应用信息采集脚本,获取Java应用信息;
本实施例中,利用Docker的cp与exec命令,将Java应用信息采集脚本拷贝到Docker容器内部,并使用目标Java应用的进程ID作为参数,执行Java应用信息采集脚本,获取对应JVM的信息;
在此特别说明的是,上述录入感知Docker容器的关键字,和Java应用的感知关键字可由本领域技术人员基于实际情况进行设置,本实施例对此不作具体限定。
基于上述设置,可设计一套针对Docker容器中的Java应用的感知机制,以及一个负责感知Java应用的统一JVM监控服务,通过管理员在线配置不同容器的地址以及能够确定目标Java应用的感知关键字,便于进行Docker容器中目标Java服务的发现与信息采集。
本发明实施例还公开了一套针对Linux服务器中的Java应用的感知机制,以及一个负责感知Java应用的统一JVM监控服务,具体流程如下:
h.判断目标容器的连接属性,若为Linux服务器,跳转至i;
i.基于Linux服务器,进行Java应用的感知关键字的录入;
本实施例中,基于Linux服务器中Java应用的感知关键字的录入,便于在Linux服务器中进行目标的快速定位,增强目标感知的监控效率;
j.基于Java应用的感知关键字,设置应用参数;通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;
k.基于Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本。
本实施例中,Linux服务器感知Java应用并采集信息脚本标准模板如下所示:
l.通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作,进行Java应用的信息监控。
具体的,Java应用的信息监控步骤包括如下:
l1.基于Linux服务器的Java应用,执行Java应用感知脚本,查找目标Java应用的进程ID;
l2.获取到目标Java应用的进程ID,设置该进程参数,执行Java应用信息采集脚本,获取Java应用信息。
在此特别说明的是,上述录入感知Linux服务器中Java应用的感知关键字可由本领域技术人员基于实际情况进行设置,本实施例对此不作具体限定。
基于上述设置,可设计一套针对Linux服务器中的Java应用的感知机制,以及一个负责感知Java应用的统一JVM监控服务,通过管理员在线配置不同容器的地址以及能够确定目标Java应用的感知关键字,便于进行Linux服务器中目标Java服务的发现与信息采集,感知服务根据管理员定制的感知关键字和设计好的标准模板自动生成一套目标Java服务的发现与信息采集脚本,随后感知服务采取轮询机制按周期向目标容器(可能存在多个)发送并执行生成的脚本,发现并采集目标Java应用的信息,且上述方法中不需要对现有的Java应用进行任何改造,也不需要在目标容器中额外安装任何软件,使用方便。
本发明实施例还公开一种基于感知机制的Java应用监控系统,包括如下模块:
判断模块100,模块用于进行Docker容器或Linux服务器的属性判断;
第一感知脚本生成模块200,第一感知脚本生成模块用于Docker容器感知脚本、Java应用感知脚本以及Java应用信息采集脚本的生成;
第二感知脚本生成模块300,第二感知脚本生成模块用于Linux服务器的Java应用感知脚本以及Java应用信息采集脚本的生成;
数据存储模块400,用于在获取Java应用信息后,传输采集Java应用信息进行数据的存储。
本实施例中,第一感知脚本生成模块200包括如下:
第一录入单元210,用于进行节点连接信息以及容器类型的信息录入,以及录入感知Docker容器的感知关键字以及Java应用的感知关键字;
第一脚本生成单元220,用于基于Docker容器感知关键字,设置应用参数;通过基于Docker指令的脚本模板生成Docker容器感知脚本;
第二脚本生成单元230,用于基于Docker容器的Java应用感知关键字,设置应用参数;通过基于Docker环境的进程指令的脚本模板生成Java应用感知脚本;
第三脚本生成单元240,用于基于Docker容器的Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
第一获取单元250,用于执行Docker容器感知脚本后,在Docker宿主机集群中查找目标Docker容器ID;
第二获取单元260,用于获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用感知脚本的Docker容器导入和执行,获取目标Java应用的进程ID;
第三获取单元270,用于获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用信息采集脚本的Docker容器导入和执行,基于目标Java应用的进程ID,执行Java应用信息采集脚本,获取Java应用信息;
第一传输单元280,用于通过分别生成的可供Docker容器和Java应用感知的脚本,发送至目标节点进行脚本运行操作。
本实施例中,第二感知脚本生成模块300包括如下:
第二录入单元310,用于基于Linux服务器,进行Java应用的感知关键字的录入;
第四脚本生成单元320,用于基于Linux服务器的Java应用的感知关键字,设置应用参数;通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;
第五脚本生成单元330,用于基于Linux服务器的Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
第四获取单元340,用于基于Linux服务器的Java应用,执行Java应用感知脚本,查找目标Java应用的进程ID;
第五获取单元350,用于在获取到目标Java应用的进程ID后,设置该进程参数,执行Java应用信息采集脚本,获取Java应用信息;
第二传输单元360,用于通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (6)

1.一种基于感知机制的Java应用监控方法,其特征在于,包括:
a.录入目标容器的基础信息;
b.判断目标容器的连接属性,若为Docker宿主机集群,跳转至c;
c.分别录入感知Docker容器的感知关键字以及Java应用的感知关键字;
d.基于Docker容器感知关键字,设置应用参数;通过基于Docker指令的脚本模板生成Docker容器感知脚本;
e.基于Java应用感知关键字,设置应用参数;通过基于Docker环境的进程指令的脚本模板生成Java应用感知脚本;
f.基于Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
g.将生成的Docker容器感知脚本和Java应用感知及其信息采集脚本,发送至目标节点并执行,进行Java应用的信息监控;
所述Java应用的信息监控步骤包括如下:
g1.判断目标容器的连接属性,若为Docker宿主机集群,执行Docker容器感知脚本,在Docker宿主机集群中查找目标Docker容器ID;
g2.获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用感知脚本的Docker容器导入和执行,获取目标Java应用的进程ID;
g3.获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用信息采集脚本的Docker容器导入和执行,基于目标Java应用的进程ID,执行Java应用信息采集脚本,获取Java应用信息。
2.根据权利要求1所述的一种基于感知机制的Java应用监控方法,其特征在于,所述方法还包括如下:
h.判断目标容器的连接属性,若为Linux服务器,跳转至i;
i.基于Linux服务器,进行Java应用的感知关键字的录入;
j.基于Java应用的感知关键字,设置应用参数;通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;
k.基于Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
l.通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作,进行Java应用的信息监控。
3.根据权利要求2所述的一种基于感知机制的Java应用监控方法,其特征在于,所述Java应用的信息监控步骤包括如下:
l1.基于Linux服务器的Java应用,执行Java应用感知脚本,查找目标Java应用的进程ID;
l2.获取到目标Java应用的进程ID,设置该进程参数,执行Java应用信息采集脚本,获取Java应用信息。
4.根据权利要求1或2所述的一种基于感知机制的Java应用监控方法,其特征在于,Docker容器和Linux服务器的Java应用信息采集脚本在获取Java应用信息后,传输采集信息至数据库,进行其他应用或页面调用。
5.根据权利要求1或3所述的一种基于感知机制的Java应用监控方法,其特征在于,Docker容器和Linux服务器的Java应用信息采集脚本基于SSH协议与SSH远程脚本执行库进行传输和运行。
6.一种基于感知机制的Java应用监控系统,其特征在于,包括如下模块:
判断模块,所述模块用于进行Docker容器或Linux服务器的属性判断;
第一感知脚本生成模块,所述第一感知脚本生成模块用于Docker容器感知脚本、Java应用感知脚本以及Java应用信息采集脚本的生成;
第二感知脚本生成模块,所述第二感知脚本生成模块用于Linux服务器的Java应用感知脚本以及Java应用信息采集脚本的生成;
数据存储模块,用于在获取Java应用信息后,传输采集Java应用信息进行数据的存储;
所述第一感知脚本生成模块包括如下:
第一录入单元,用于进行节点连接信息以及容器类型的信息录入,以及录入感知Docker容器的感知关键字以及Java应用的感知关键字;
第一脚本生成单元,用于基于Docker容器感知关键字,设置应用参数;通过基于Docker指令的脚本模板生成Docker容器感知脚本;
第二脚本生成单元,用于基于Docker容器的Java应用感知关键字,设置应用参数;通过基于Docker环境的进程指令的脚本模板生成Java应用感知脚本;
第三脚本生成单元,用于基于Docker容器的Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
第一获取单元,用于执行Docker容器感知脚本后,在Docker宿主机集群中查找目标Docker容器ID;
第二获取单元,用于获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用感知脚本的Docker容器导入和执行,获取目标Java应用的进程ID;
第三获取单元,用于获取到目标Docker容器ID后,采用Docker容器指令,进行Java应用信息采集脚本的Docker容器导入和执行,基于目标Java应用的进程ID,执行Java应用信息采集脚本,获取Java应用信息;
第一传输单元,用于通过分别生成的可供Docker容器和Java应用感知的脚本,发送至目标节点进行脚本运行操作;
所述第二感知脚本生成模块包括如下:
第二录入单元,用于基于Linux服务器,进行Java应用的感知关键字的录入;
第四脚本生成单元,用于基于Linux服务器的Java应用的感知关键字,设置应用参数;通过基于Linux环境的进程指令的脚本模板生成Java应用感知脚本;
第五脚本生成单元,用于基于Linux服务器的Java应用感知脚本获取Java应用进程ID,设置该进程参数;通过基于Java指令的脚本模板生成Java应用信息采集脚本;
第四获取单元,用于基于Linux服务器的Java应用,执行Java应用感知脚本,查找目标Java应用的进程ID;
第五获取单元,用于在获取到目标Java应用的进程ID后,设置该进程参数,执行Java应用信息采集脚本,获取Java应用信息;
第二传输单元,用于通过生成的Linux服务器的Java应用感知的脚本,发送至目标节点进行脚本运行操作。
CN202010027184.6A 2020-01-10 2020-01-10 一种基于感知机制的Java应用监控方法和系统 Active CN111290906B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010027184.6A CN111290906B (zh) 2020-01-10 2020-01-10 一种基于感知机制的Java应用监控方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010027184.6A CN111290906B (zh) 2020-01-10 2020-01-10 一种基于感知机制的Java应用监控方法和系统

Publications (2)

Publication Number Publication Date
CN111290906A CN111290906A (zh) 2020-06-16
CN111290906B true CN111290906B (zh) 2023-07-21

Family

ID=71025455

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010027184.6A Active CN111290906B (zh) 2020-01-10 2020-01-10 一种基于感知机制的Java应用监控方法和系统

Country Status (1)

Country Link
CN (1) CN111290906B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017177769A1 (zh) * 2016-04-11 2017-10-19 平安科技(深圳)有限公司 Ogg 版本部署方法、系统、服务器和存储介质
CN108509254A (zh) * 2018-04-17 2018-09-07 中山市华南理工大学现代产业技术研究院 Docker Container的监控方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10503623B2 (en) * 2016-04-29 2019-12-10 Ca, Inc. Monitoring containerized applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017177769A1 (zh) * 2016-04-11 2017-10-19 平安科技(深圳)有限公司 Ogg 版本部署方法、系统、服务器和存储介质
CN108509254A (zh) * 2018-04-17 2018-09-07 中山市华南理工大学现代产业技术研究院 Docker Container的监控方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宋光明,葛运建.基于Java2平台的网络化机器人感知系统.机器人.2004,(05),全文. *

Also Published As

Publication number Publication date
CN111290906A (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
WO2022088804A1 (zh) 消息推送方法、装置、电子设备及存储介质
US9542302B2 (en) System and method for remote debugging of an application in an image forming apparatus over a network
US8839107B2 (en) Context based script generation
US20150128121A1 (en) Dynamic application version selection
US20150127979A1 (en) Triaging computing systems
US7647530B2 (en) Network fault pattern analyzer
WO2018184420A1 (zh) 软件测试方法、装置、电子设备及介质
CN112989330B (zh) 容器的入侵检测方法、装置、电子设备及存储介质
JP2005516276A (ja) 検出および/または制御環境用のオブジェクト指向フレームワーク・アーキテクチャ
CN112148610A (zh) 测试用例执行方法、装置、计算机设备和存储介质
JP2008191878A (ja) 遠隔診断・障害対応システム、遠隔診断・障害対応装置、遠隔診断・障害対応指示装置、遠隔診断・障害対応方法、及び遠隔診断・障害対応プログラム
CN112506755B (zh) 日志采集方法、装置、计算机设备和存储介质
CN111274091B (zh) 日志的处理方法、装置、计算机设备和存储介质
CN112313627A (zh) 事件到无服务器函数工作流实例的映射机制
CN112506969A (zh) 一种bmc地址查询方法、系统、设备及可读存储介质
CN109542385B (zh) 一种多数据流同屏显示方法、系统、装置及可读存储介质
CN111290906B (zh) 一种基于感知机制的Java应用监控方法和系统
JP2015064872A (ja) 監視システム、システム及び監視方法
CN112948733B (zh) 接口维护方法、装置、计算设备以及介质
JP2008182650A (ja) 画像形成装置及びプログラム
US20070124343A1 (en) Method or apparatus for processing data in a system management application program
CN107330089B (zh) 跨网络结构化数据收集系统
CN111158654A (zh) 算法调用方法、装置、服务器及存储介质
CN111026637B (zh) 一种定位问题代码的方法及装置
CN111563019B (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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A Java application monitoring method and system based on perception mechanism

Granted publication date: 20230721

Pledgee: Huishang Bank Co.,Ltd. Hefei Xiyou road sub branch

Pledgor: ANHUI KEDA GUOCHUANG SOFTWARE TECHNOLOGY Co.,Ltd.

Registration number: Y2024980011891