4.1 监控
4.1.8 查询系统中已有服务发现规则
状态码
状态码 描述
200 OK 请求响应成功。
400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。
401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出 客户端所提供的认证信息不正确或非法。
403 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能 够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问, 建议直接修改该请求,不要重试该请求。
500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的 请求。
503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重 试该请求。
错误码
请参见错误码。
4.1.8 查询系统中已有服务发现规则
功能介绍
该接口用于查询系统当前已存在的服务发现规则。
调试
您可以在API Explorer中调试该接口。
URI
GET /v1/{project_id}/inv/servicediscoveryrules
表4-68 路径参数
参数 是否必选 参数类型 描述
project_id 是 String 租户从IAM申请到的projectid,一 般为32位字符串。
表4-69 Query 参数
参数 是否必选 参数类型 描述
id 否 String 具体的服务发现规则ID,可以精
确匹配到一条服务发现规则。不 传时返回project下所有服务发 现规则的列表。
请求参数
表4-70 请求 Header 参数
参数 是否必选 参数类型 描述
X-Auth-Token 是 String 从IAM服务获取的用户Token。
Content-Type 是 String 指定类型为application/json。
响应参数
状态码: 200
表4-71 响应 Body 参数
参数 参数类型 描述
appRules Array of AppRules objects
查询结果规则信息。
errorCode String 响应码,AOM_INVENTORY_2000000代表正常返 回。
errorMessage String 响应信息描述。
表4-72 AppRules
参数 参数类型 描述
createTime String 规则创建时间(创建时不传,修改时传查询返回的 createTime)。
缺省值:1599098476654 enable Boolean true、false 规则是否启用。
eventName String aom_inventory_rules_event 规则事件名称,对于 服务发现固定 为"aom_inventory_rules_event"。
hostid Array of
strings 主机ID(暂不使用,传空即可)。
id String 创建时填空,修改时填规则ID。
name String 规则名称。 字符长度小于64位,以小写字母(a-z) 开头,只能包含0-9/a-z/-,不能以-结尾。
projectid String 租户从IAM申请到的projectid,一般为32位字符 串。
spec AppRulesSpe
c object 规则详情。
表4-73 AppRulesSpec
参数 参数类型 描述
appType String 服务类型,用于标记服务的分类,仅用于规则分类和 界面展示。可以填写任意字段,如按技术栈分类可 填写Java,Python。按作用分类可填写collector(采 集),database(数据库)等。
attrList Array of
strings 属性列表(暂不使用,可不传)。 cmdLine、env detectLog String 是否开启日志采集。 true、false
discoveryRule Array of DiscoveryRul e objects
规则发现部分,数组中有多个对象时表示需要同时 满足所有条件的进程才会被匹配到。 checkType 为cmdLine时checkMode填
contain,checkContent格式为[“xxx”]表示进程 命令行参数中需要包含xxx。checkType为env时 checkMode填contain,checkContent格式为 ["k1","v1"]表示进程环境变量中需要包含名为k1 值为v1的环境变量。checkType为scope时
checkMode填equals,checkContent格式为节点ID 数组["hostId1”,”hostId2”],表示规则仅会在这 些节点上生效(如果不指定节点范围,规则将下发到 该项目所有的节点)。
isDefaultRule String 是否为默认规则。 true、false
参数 参数类型 描述
isDetect String 是否为规则预探测场景(预探测场景不会保存规则, 仅用于规则下发之前验证该规则能否有效发现节 点上的进程)。 true、false
logFileFix Array of
strings 日志文件的后缀。 log、trace、out logPathRule Array of
LogPathRule objects
日志路径配置规则。 当cmdLineHash为固定字符 串时,指定日志路径或者日志文件。否则只采集进 程当前打开的以.log和.trace结尾的文件。
nameType取值cmdLineHash时,args格式为 ["00001"],value格式为["/xxx/xx.log"],表示当启 动命令是00001时,日志路径为/xxx/xx.log。
nameRule NameRule
object 发现上来的服务、应用的命名规则。
priority String 规则优先级。 1~9999的整数字符串,默认取值为 9999
表4-74 DiscoveryRule
参数 参数类型 描述
checkContent Array of
strings 匹配值。
checkMode String 匹配条件。 contain、equals checkType String 匹配类型。 cmdLine、env、scope
表4-75 LogPathRule
参数 参数类型 描述
args Array of
strings 命令行。
nameType String 取值类型。 cmdLineHash value Array of
strings 日志路径。
表4-76 NameRule
参数 参数类型 描述
appNameRule Array of AppNameRul e objects
服务命名部分,数组中有多个对象时表示将每个对 象抽取到的字符串拼接作为服务的名称。
nameType取值cmdLine时args格式为
["start","end"],表示抽取命令行中start、end之间 的字符。 nameType取值cmdLine时args格式为 ["aa"],表示抽取环境变量名为aa对应的环境变量 值。 nameType取值str时,args格式为["fix"],表示 服务名称最后拼接固定文字fix。 nameType取值 cmdLineHash时,args格式为["0001"],value格式 为["ser"],表示当启动命令是0001时,服务名称为 ser。
applicationNa
meRule Array of ApplicationN ameRule objects
应用命名部分。 nameType取值cmdLine时args 格式为["start","end"],表示抽取命令行中start、
end之间的字符。 nameType取值cmdLine时args 格式为 ["aa"],表示抽取环境变量名为aa对应的环 境变量值。 nameType取值str时,args格式为 ["fix"],表示服务名称最后拼接固定文字fix。
nameType取值cmdLineHash时,args格式为 ["0001"],value格式为["ser"],表示当启动命令是 0001时,应用名称为ser。
表4-77 AppNameRule
参数 参数类型 描述
nameType String 取值类型。 从cmdLineHash、cmdLine、env、
str里面选取。
args Array of
strings 输入值。
value Array of
strings 服务名(仅nameType为cmdLineHash时填写)。
表4-78 ApplicationNameRule
参数 参数类型 描述
nameType String 取值类型。 从cmdLineHash、cmdLine、env、
str里面选取。
args Array of
strings 输入值。
value Array of
strings 服务名(仅nameType为cmdLineHash时填写)。
请求示例
"createTime" : "1599098476654", "enable" : true,
"name" : "ica**nt",
"eventName" : "aom_in***tory_rules_event", "hostid" : [ ],
"id" : "b53a5152-****-****-****-302367e04c0b", "projectid" : "2a473356c**********be891bffc1cf", "spec" : {
"aom_metric_relabel_configs" : null, "logFileFix" : [ "log", "trace", "out" ],
"errorMessage" : null,
"errorCode" : "SVCSTG.INV.2000000", "responseStatus" : 200
}
状态码
状态码 描述
200 OK 请求响应成功。
400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。
状态码 描述
401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出 客户端所提供的认证信息不正确或非法。
403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端, 且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置 为拒绝访问,建议直接修改该请求,不要重试该请求。
500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的 请求。
503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重 试该请求。
错误码
请参见错误码。