diff --git a/common/src/main/java/com/usthe/common/entity/job/Metrics.java b/common/src/main/java/com/usthe/common/entity/job/Metrics.java index 751e975..c329588 100644 --- a/common/src/main/java/com/usthe/common/entity/job/Metrics.java +++ b/common/src/main/java/com/usthe/common/entity/job/Metrics.java @@ -4,6 +4,7 @@ import com.usthe.common.entity.job.protocol.HttpProtocol; import com.usthe.common.entity.job.protocol.IcmpProtocol; import com.usthe.common.entity.job.protocol.JdbcProtocol; import com.usthe.common.entity.job.protocol.TcpUdpProtocol; +import com.usthe.common.entity.job.protocol.TelnetProtocol; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -60,6 +61,10 @@ public class Metrics { * 使用icmp协议进行ping的监控配置信息 */ private IcmpProtocol icmp; + /** + * 使用telnet协议的监控配置信息 + */ + private TelnetProtocol telnet; /** * 使用socket实现的tcp或ucp进行服务端口探测配置信息 */ diff --git a/common/src/main/java/com/usthe/common/entity/job/protocol/TelnetProtocol.java b/common/src/main/java/com/usthe/common/entity/job/protocol/TelnetProtocol.java new file mode 100644 index 0000000..252d80c --- /dev/null +++ b/common/src/main/java/com/usthe/common/entity/job/protocol/TelnetProtocol.java @@ -0,0 +1,34 @@ +package com.usthe.common.entity.job.protocol; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * telnet协议配置 + * @author tomsun28 + * @date 2021/10/31 16:41 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class TelnetProtocol { + + /** + * 对端主机ip或域名 + */ + private String host; + + /** + * 对端主机端口 + */ + private String port; + + /** + * 超时时间 + */ + private String timeout; + +} diff --git a/manager/src/main/resources/define/app/telnet.yml b/manager/src/main/resources/define/app/telnet.yml new file mode 100644 index 0000000..524c02d --- /dev/null +++ b/manager/src/main/resources/define/app/telnet.yml @@ -0,0 +1,21 @@ +app: telnet +configmap: + - key: host + type: 1 + - key: port + type: 0 + - key: timeout + type: 0 +metrics: + - name: summary + priority: 0 + fields: + - field: responseTime + type: 0 + unit: ms + protocol: telnet +# 当protocol为telnet协议时具体的采集配置 + telnet: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ \ No newline at end of file diff --git a/manager/src/main/resources/define/param/telnet.yml b/manager/src/main/resources/define/param/telnet.yml new file mode 100644 index 0000000..9a47e93 --- /dev/null +++ b/manager/src/main/resources/define/param/telnet.yml @@ -0,0 +1,27 @@ +# 监控应用类型名称(与文件名保持一致) eg: linux windows tomcat mysql aws... +app: telnet +# 强制固定必须参数 - host(ipv4,ipv6,域名) +param: + # field-字段名称标识符 + - field: host + # name-参数字段显示名称 + name: 主机Host + # type-字段类型,样式(大部分映射input标签type属性) + type: host + # 是否是必输项 true-必填 false-可选 + required: true + - field: port + name: 端口 + type: number + # 当type为number时,用range表示范围 + range: '[0,65535]' + required: true + defaultValue: 80 + - field: timeout + name: Telnet超时时间 + type: number + # 当type为number时,用range表示范围 + range: '[0,100000]' + required: true + placeholder: '请输入超时时间,单位毫秒' + defaultValue: 3000 \ No newline at end of file