应用运维管理 AOM-添加或修改服务发现规则:请求参数
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
从 IAM 服务获取的用户Token。 |
Content-Type |
是 |
String |
指定类型为application/json。 枚举值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
appRules |
否 |
Array of AppRules objects |
服务参数。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
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 |
规则名称。 字符长度为4到63位,以小写字母a-z开头,只能包含0-9/a-z/-,不能以-结尾。 |
projectid |
是 |
String |
租户从IAM申请到的projectid,一般为32位字符串。 |
spec |
是 |
AppRulesSpec object |
规则详情。 |
desc |
否 |
String |
自定义描述信息 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
appType |
是 |
String |
服务类型,用于标记服务的分类,仅用于规则分类和界面展示。可以填写任意字段,如按技术栈分类可填写Java,Python。按作用分类可填写collector(采集),database(数据库)等。 |
attrList |
否 |
Array of strings |
属性列表(暂不使用,可不传)。 cmdLine、env |
detectLog |
是 |
String |
是否开启日志采集。 true、false |
discoveryRule |
是 |
Array of DiscoveryRule 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 |
是 |
Integer |
规则优先级。1~9999的整数字符串,默认取值为9999 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
checkContent |
是 |
Array of strings |
匹配值。 |
checkMode |
是 |
String |
匹配条件。contain、equals |
checkType |
是 |
String |
匹配类型。cmdLine、env、scope |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
args |
是 |
Array of strings |
命令行。 |
nameType |
是 |
String |
取值类型。 cmdLineHash |
value |
是 |
Array of strings |
日志路径。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
appNameRule |
是 |
Array of AppNameRule 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。 |
applicationNameRule |
是 |
Array of ApplicationNameRule 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。 |